个人技术分享

文章目录

引入问题

numpy中(36864, 1)和(36864, )有区别吗

在NumPy中,形状为 (36864, 1) 的数组和形状为 (36864,) 的数组确实存在区别。

  1. 维度不同

    • (36864, 1) 表示一个二维数组,其中有36864行和1列。这是一个列向量。
    • (36864,) 表示一个一维数组,其中包含36864个元素。这不是一个矩阵,而是一个向量。
  2. 在数学运算中的行为

    • 二维数组 (36864, 1) 可以很方便地参与矩阵运算,比如与其他二维数组相乘。
    • 一维数组 (36864,) 在进行某些数学运算时可能不会自动广播到二维,这可能在某些情况下导致问题。
  3. 索引和切片

    • 对于二维数组 (36864, 1),你需要使用两个索引来访问元素,例如 array[i, 0]
    • 对于一维数组 (36864,),你只需要