numpy中(N,)和(N,1)之间有什么区别?

时间:2017-03-19 04:12:00

标签: python-3.x numpy

我不确定numpy中(N,)和(N,1)之间的区别。假设两者都是某些特征,它们具有相同的N维度,并且都具有一个样本。有什么区别?

a = np.ones((10,))
print(a.shape) #(10,)
b = np.ones((10,1))
print(b.shape) #(10,1)

2 个答案:

答案 0 :(得分:4)

在Python中,(10,)是一个元组(,是区分它与使用括号进行分组所必需的:(10)只是意味着10),而(10,1)是一对(2元组)。因此np.ones((10,))创建一个大小为10的一维数组,而np.ones((10,1))创建一个维度为10×1的二维数组。这直接类似于单个数字和长度为1的一维数组之间的差异。

答案 1 :(得分:3)

不同之处在于,a是一维数组。像这样:

[1,1,1] 

b是一个多维数字阵列。像这样:

[[1],
 [1],
 [1]]