python将长度不一样的多维list变为一个数组

python将长度不一样的多维list变为一个数组,第1张

python将长度不一样的多维list变为一个数组

当遇到一个多维list每一个维度的长度都不一样时,可以先以多维列表中长度最长的一个列表长度生成和原来列表维度相同的数组,数组每一行的长度都是列表最长的长度,其余位置补零。

先使用np.zero创建一个numpy数组,并使用如下所示的列表元素填充它们:

import numpy as np

list = [[2, 1, 2], [1, 5], [1, 2, 1, 7]]
narry = np.zeros([len(list),len(max(list,key = lambda x: len(x)))])
for i,j in enumerate(list):
    narry[i][0:len(j)] = j
print(narry)

 返回结果:

[[ 2.  1.  2.  0.]
 [ 1.  5.  0.  0.]
 [ 1.  2.  1.  7.]]

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5679845.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存