gpt4 book ai didi

python - 一维数组形状 (length,) vs. (length,1) vs. (length)

转载 作者:太空狗 更新时间:2023-10-29 17:45:56 27 4
gpt4 key购买 nike

当我使用 numpy.shape() 检查数组的形状时,我有时会得到 (length,1) 有时会得到 (length,)。看起来区别在于列向量与行向量......但它似乎并没有改变数组本身的任何内容[除了一些函数在我传递形状为 (length,1)< 的数组时提示].

这两者有什么区别?
为什么形状不只是 (length)

最佳答案

关键是说一个向量可以被看作是

  • 向量
  • 只有一列的矩阵
  • 一个 3 维数组,其中第 2 维和第 3 维的长度为 1
  • ...

您可以使用 [:, np.newaxis] 语法添加维度或使用 np.squeeze 删除维度:

>>> xs = np.array([1, 2, 3, 4, 5])
>>> xs.shape
(5,)
>>> xs[:, np.newaxis].shape # a matrix with only one column
(5, 1)
>>> xs[np.newaxis, :].shape # a matrix with only one row
(1, 5)
>>> xs[:, np.newaxis, np.newaxis].shape # a 3 dimensional array
(5, 1, 1)
>>> np.squeeze(xs[:, np.newaxis, np.newaxis]).shape
(5,)

关于python - 一维数组形状 (length,) vs. (length,1) vs. (length),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22737000/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com