ndarray數(shù)組有很多種方式讓你選中數(shù)據(jù)的子集或某個(gè)單個(gè)元素
- 一維數(shù)組與python列表類似
>>>a = np.arange(10)
>>>print(a)
>>>print(a[5]) ---通過(guò)下表取值
5
>>>print(a[5:8]) --- 通過(guò)切片選取范圍
[5 6 7]
- 給數(shù)組的切片賦值鬓照,數(shù)組被傳遞給了整個(gè)切片挠进。區(qū)別于python的內(nèi)置列表扳碍,數(shù)組的切片是原數(shù)組的視圖(因?yàn)閚umpy被設(shè)計(jì)成適合處理非常大的數(shù)組)椎麦,這意味著數(shù)據(jù)并不是被復(fù)制了闻蛀,任何對(duì)于視圖的修改都會(huì)反映到原數(shù)組上.
>>>a[5:8] = 13
>>>print(a)
[ 0 1 2 3 4 13 13 13 8 9]
>>>b = a[5:8]
>>>b[0] = 1111111
>>>print(a)
[ 0 1 2 3 4 1111111 13 13 8 9]
- 如果你需要復(fù)制數(shù)組匪傍,那你需要顯示使用copy()方法
>>>b = a[5:8].copy()
>>>b[1] = 333333
>>>print(b)
[1111111 333333 13]
>>>print(a)
[ 0 1 2 3 4 1111111 13 13 8 9]