numpy的索引-【老鱼学numpy】
简单的索引值
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,
作者:dreampursuer(公众号:独立开发者手记)
出处:http://www.cnblogs.com/dreampursuer/
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://www.cnblogs.com/dreampursuer/
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。