Python中的X[:,0]和X[:,1]

最近在代码里看到

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的逆数组(从后往前重新组合)

你可能感兴趣的:(python,numpy,开发语言)