最近在代码里看到
projection_2d[0, : ]、projections_2d[1, :]、
camera_projection[0, :]、camera_projection[1, :]、
camera_projection[2, :]
不太明白其中的[ , ]都是什么意思!
其实很简单,X[ : , 0]只是一个numpy数组的一种写法而已。
表示:对一个二维数组,取该二维数组中第一维中的所有数据,第二维中的第0个数据。
简单来说,X[ : , 0]就是取所有行的第0个元素,X[ : , 1]就是取所有行的第1个元素。其中的第0个和第1个,指的是下标。
projections_2d[0, : ]取第一维中下标为0的元素的所有值[0 1]
projections_2d[1, : ]取第一维中下标为1的元素的所有值[2 3]
camera_projection[0, : ]取第一维中下标为0的元素的所有值[0 1]
camera_projection[1, : ]取第一维中下标为1的元素的所有值[2 3]
camera_projection[2, : ]取第一维中下标为2的元素的所有值[4 5]
例如:
X[: , 0]:
import numpy as np
X = np.array([[0,1],[2,3],[4,5],[6,7],[8,9]])
print(X[: , 0])
输出结果为:
[0 2 4 6 8]
X[:, 1] :
import numpy as np
X = np.array([[0,1],[2,3],[4,5],[6,7],[8,9]]
print (X[:,1] )
输出结果为:
[1 3 5 7 9]
X[1, : ]取第一维中下标为1的元素的所有值,输出结果为:
[2 3]
X[: , m:n]取所有数据的第m到n-1列数据,含左不含右
例如:输出X数组中所有行第1到2列数据
import numpy as np
X = np.array([[0,1,2],[3,4,5],[6,7,8],[9,10,11],[12,13,14],[15,16,17]])
print (X[:,1:3])
输出结果为:
[[ 1 2]
[ 4 5]
[ 7 8]
[10 11]
[13 14]
[16 17]
]
拓展:
X[: : -1]输出结果是:数组X的逆数组(从后往前重新组合)