简单的索引值
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第2行的数据:", a[2])
print("第2行第3列的数据:", a[2][3])
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第2行的数据: [11 12 13 14]
第2行第3列的数据: 14
对于获取第2行第3列的数据,我们还可以用如下的方式来获取:
print("第2行第3列的数据:", a[2, 3])
数据切片
用冒号索引可以对数据进行切片。
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第2行所有数:", a[2, :])
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第2行所有数: [11 12 13 14]
上面用冒号来对数据选择进行了占位。
如果我们想要获得第1列的所有数:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第1列所有数:", a[:, 1])
输出为第1列的所有数:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第1列所有数: [ 4 8 12]
获取第1行从第2列到第4列的值:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("第1行从第2列到第4列的值:", a[1, 2:4])
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
第1行从第1列到第2列的值: [ 9 10]
把数据变平
把数据变平的意思是:如果是多维数组,则把数组中的每个元素平铺开来,变成一维数据,这样便于用索引值进行访问。
例如:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
print("flatten=", a.flatten())
输出:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
flatten= [ 3 4 5 6 7 8 9 10 11 12 13 14]
也可以用a.flat返回一个迭代器来变量其中的元素:
import numpy as np
a = np.arange(3, 15).reshape(3, 4)
print("a=")
print(a)
for v in a.flat:
print(v, end=',')
输出为:
a=
[[ 3 4 5 6]
[ 7 8 9 10]
[11 12 13 14]]
3,4,5,6,7,8,9,10,11,12,13,14,