在機器學習的有監督學習中,常常要把資料分為「特徵列」和「標籤列」,標籤列往往在最後一列,可以用data[:, -1] 或data[:, cols-1:cols]進行切片。這個時候需要特別注意:對陣列來說 得到的結果是不同的,前者將最後一列轉為一行,後者是列,對矩陣來說得到的結果是相同的,都是列。
具體如下:
import numpy as np
data = np.array([[
1,2,
3],[
3,4,
5],[
6,43,
5]])
cols = data.shape[-1
]print
('對陣列進行切片'
.center(20,
'*')
)print
('原始陣列資料\n'
, data)
print
('陣列:-1 切片\n'
, data[:,
-1])
print
('陣列:cols-1:cols 切片\n'
, data[
:, cols-
1:cols]
)print
('對數矩陣行切片'
.center(20,
'*')
)print
('原始矩陣資料\n'
, np.mat(data)
)print
('矩陣:-1 切片\n'
, np.mat(data)[:
,-1]
)print
('矩陣:cols-1:cols 切片\n'
, np.mat(data)[:
, cols-
1:cols]
)
結果如下:
******對陣列進行切片*******
原始陣列資料
[[ 1 2 3]
[ 3 4 5]
[ 6 43 5]]
陣列:-1 切片
[3 5 5]
陣列:cols-1:cols 切片
[[3]
[5][5]]
******對數矩陣行切片*******
原始矩陣資料
[[ 1 2 3]
[ 3 4 5]
[ 6 43 5]]
矩陣:-1 切片
[[3]
[5][5]]
矩陣:cols-1:cols 切片
[[3]
[5][5]]
python3 切片 python3 切片
取乙個list或tuple的部分元素是非常常見的操作。比如,乙個list如下 l michael sarah tracy bob jack 取前3個元素,應該怎麼做?笨辦法 l 0 l 1 l 2 michael sarah tracy 之所以是笨辦法是因為擴充套件一下,取前n個元素就沒轍了。取前n...
python3 切片 七 python3 切片
切片 取乙個 list 或 tuple 的部分元素是非常常見的操作 l michael sarah tracy bob jack 笨辦法 之所以是笨辦法是因為擴充套件一下,取前 n 個元素就沒轍了。l 0 l 1 l 2 michael sarah tracy 取前 n 個元素,也就是索引為 0 n...
python 3 切片練習
coding gbk def qipian a,a 1,a 2,a 3,a 4 map int,input 輸入a,a 1,a 2,a 3,a 4 空格隔開 split a,a 1,a 2,a 3,a 4為int型 b a,a 1,a 2,a 3,a 4 print b c b 0 3 2 取出列表...