【发布时间】:2020-05-06 23:56:23
【问题描述】:
这里是新手。试图从概念上学习在 python 中拥有一个 n 维数组意味着什么。例如,如果我使用以下代码创建一个 ndarray:
x = np.array([[1, 2, 3], [4, 5, 6]], np.int32)
1,2,3 和 4,5,6 块到底有什么关系?
如果我添加另一个块 [6, 7, 8] 会怎样?我可以将它们视为同一网格的不同行吗?我知道我可以通过使用上述方法传入 N 个列表来创建一个 N 维数组,但不能仅从概念上理解数组具有多个维度的含义。
非常感谢
【问题讨论】:
-
虽然将 1d 和 2d 数组与我们使用的事物相关联相当容易,例如行或列表,以及矩阵(和向量),但很难将其他维度概念化,0d、3d、4d 等. 有些人,来自线性代数背景,甚至对 1d 有问题。对他们来说,一切都是二维的,一个矩阵。
numpy采用了 1 和 2d 的概念,并将其推广到 0d 及以上。所以从某种意义上说,N-dimensional数组是一个抽象对象,严格来说不能被概念化。
标签: python arrays pandas numpy