添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

the result is :

[0.         0.         2.7015625  2.5328125  4.63125    4.29375
 5.7890625  5.2828125  6.05452935 5.47381073 6.175      5.5       ]

但我希望它是:

[ [0.         0.]  ,       [2.7015625  2.5328125,] [ 4.63125    4.29375],
 [5.7890625  5.2828125 ], [6.05452935 5.47381073],[ 6.175      5.5 ]      ]

我不想使用列表,我想在一个二维数组内使用一个一维数组。

5 个评论
owo
我很难理解你的意思,但我认为yi_list_for_M = np.append([yi_list_for_M,yi_m]) 可能是你想要的?
不要使用np.append来动态地建立numpy数组。使用一个列表来代替。替换代码1】,然后是yi_list_for_M.append(yi_m)
np.array([])不是一个2d数组! 检查它的shape
你可以在最后将yi_list_for_M转换为numpy数组。使用numpy.append会比使用列表慢得多。
替换代码0】是np.concatenate的一个差劲的前端。 它生成一个新的数组。 列表追加是就地操作的。 你省略了轴参数,所以你得到了一个1d数组。 请阅读文档。
python
arrays
numpy
NAS
NAS
发布于 2021-07-12
2 个回答
hp77
hp77
发布于 2021-07-12
已采纳
0 人赞同

我假设你知道每一行的尺寸是多少。如果是的话,你可以做以下工作。

y = np.empty((0, 3), int) #(0,n), n is the size of your row
for x in range(6):
    y.append(y, np.array([[1, 2]]), axis=0)
    
zswqa
zswqa
发布于 2021-07-12
0 人赞同
yi_list_for_M = np.empty((0,2), int)