轉(zhuǎn)自:https://blog.csdn.net/qq_34327480/article/details/78870350
對(duì)于一維數(shù)組來(lái)說(shuō),python原生的list和numpy的array的切片操作都是相同的汇竭。無(wú)非是記住一個(gè)規(guī)則 arr_name[start: end: step],就可以了淘这。
實(shí)例:
下面是幾個(gè)特殊的例子:
[:]表示復(fù)制源列表
負(fù)的index表示,從后往前撬统。-1表示最后一個(gè)元素适滓。
相對(duì)于一維數(shù)組而言,二維(多維)數(shù)組用的會(huì)更多恋追。一般語(yǔ)法是arr_name[行操作, 列操作]
先隨機(jī)產(chǎn)生一個(gè)3*4的數(shù)組凭迹。
in:arr = np.arange(12).reshape((3, 4))
out:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
取行數(shù)據(jù)
arr[i, :] #取第i行數(shù)據(jù)
arr[i:j, :] #取第i行到第j行的數(shù)據(jù)
取列數(shù)據(jù)(注意數(shù)據(jù)格式)
in:arr[:,0] # 取第0列的數(shù)據(jù),以行的形式返回的
out:
array([0, 4, 8])
in:arr[:,:1] # 取第0列的數(shù)據(jù)苦囱,以列的形式返回的
out:
array([[0],
[4],
[8]])
取一個(gè)數(shù)據(jù)塊
# 取第一維的索引1到索引2之間的元素嗅绸,也就是第二行
# 取第二維的索引1到索引3之間的元素,也就是第二列和第三列
in:arr[1:2, 1:3]
out:
array([[5, 6]])
# 取第一維的全部
# 按步長(zhǎng)為2取第二維的索引0到末尾之間的元素撕彤,也就是第一列和第三列
in: arr[:, ::2]
out:
array([[ 0, 2],
[ 4, 6],
[ 8, 10]])
本文來(lái)自 ablish 的CSDN 博客 鱼鸠,全文地址請(qǐng)點(diǎn)擊:https://blog.csdn.net/qq_34327480/article/details/78870350?utm_source=copy