【发布时间】:2013-06-04 09:47:50
【问题描述】:
形状为 (N,1) 和 (N,) 的 numpy 数组(比如说 X)有什么区别。它们都不是 Nx1 矩阵吗?我问的原因是因为有时计算返回一个或另一个。
【问题讨论】:
-
你能给我一些例子吗?
标签: python arrays numpy dimensions
形状为 (N,1) 和 (N,) 的 numpy 数组(比如说 X)有什么区别。它们都不是 Nx1 矩阵吗?我问的原因是因为有时计算返回一个或另一个。
【问题讨论】:
标签: python arrays numpy dimensions
这是一个一维数组:
>>> np.array([1, 2, 3]).shape
(3,)
这个数组是二维的,但第一维只有一个元素:
>>> np.array([[1, 2, 3]]).shape
(1, 3)
转置得到你想要的形状:
>>> np.array([[1, 2, 3]]).T.shape
(3, 1)
现在,看看数组。仅填充此二维数组的第一列。
>>> np.array([[1, 2, 3]]).T
array([[1],
[2],
[3]])
给定这两个数组:
>>> a = np.array([[1, 2, 3]])
>>> b = np.array([[1, 2, 3]]).T
>>> a
array([[1, 2, 3]])
>>> b
array([[1],
[2],
[3]])
您可以利用广播:
>>> a * b
array([[1, 2, 3],
[2, 4, 6],
[3, 6, 9]])
填写缺失的数字。想想表格或电子表格中的行和列。
>>> a + b
array([[2, 3, 4],
[3, 4, 5],
[4, 5, 6]])
在更高维度上执行此操作会让您的想象力更加困难。
【讨论】: