Python 关于Numpy和xFF0C;a=np.array([1,2,3,4]),打印a.shape[0]。为什么它会输出4?
为什么它会输出Python 关于Numpy和xFF0C;a=np.array([1,2,3,4]),打印a.shape[0]。为什么它会输出4?,python,numpy,Python,Numpy,为什么它会输出4 数组[1,2,3,4],我想它的行应该是1,那么谁能为我解释原因呢?numpy数组的shape属性返回数组的维度。如果a有n行和m列,那么a.shape是(n,m)。所以a.shape[0]是n,a.shape[1]是m。因为 import numpy as np a = np.array([1,2,3,4]) print a.shape[0] 你认为(或想要)拥有的是 print(a.shape) # -> (4,) 或者说(?) 如果您打印a.ndim,您将得到
4
数组
[1,2,3,4]
,我想它的行应该是1
,那么谁能为我解释原因呢?numpy数组的shape属性返回数组的维度。如果a有n行和m列,那么a.shape是(n,m)。所以a.shape[0]是n,a.shape[1]是m。因为
import numpy as np
a = np.array([1,2,3,4])
print a.shape[0]
你认为(或想要)拥有的是
print(a.shape) # -> (4,)
或者说(?)
如果您打印
a.ndim
,您将得到1。这意味着a
是一个一维数组(在numpy术语中排名1),轴长度为4。它不同于具有单个行或列(秩2)的二维矩阵
相关问题:
a = np.array([[1, 2 , 3 , 4]])
print(a.shape) # -> (1, 4)
得到一个4维数组。您可以通过打印形状进行检查
a = np.array([1,2,3,4])
所以,得到的不是1x4矩阵。如果你想这样做
print(a.shape) #(4,)
甚至更好
a = numpy.array([1,2,3,4]).reshape((1,4))
print(a.shape)
通过这样做,您将得到一个a
作为数据数组,它是一个一维数组。这里,形状(4,)表示数组由一个从0到3的索引索引。您可以通过索引0~3访问元素。它不同于多维数组
您可以从这个链接中参考更多帮助。作者可能希望
a=np.array([[1,2,3,4]])
取而代之,因为他希望形状的第一个分量等于1@alexisrozhkov:噢,你说得对。我会包括在内,原因是什么?这是numpy
,而不是MATLAB
。在numpy
中,数组可以是1d
a = numpy.array([1,2,3,4]).reshape((1,4))
print(a.shape)
a = numpy.array([[1,2,3,4]])
a = np.array([1, 2, 3, 4])