嗨,我想把列表组合成一个numpy数组。但是,我似乎需要先将它们转换为数组,然后将它们组合成一个更大的数组。
我只想知道我能否直接将列表组合成一个数组。
The lists
[1,2,3,4,5]
[6,7,8,9,10]
[11,12,13,14,15]
[1,2,3,4,5]
[6,7,8,9,10]
我想把它们组合成一个5*5的数组
array(
[[1,2,3,4,5],
[6,7,8,9,10],
[11,12,13,14,15],
[1,2,3,4,5],
[6,7,8,9,10]])
得到数组后,我想对数组的对角线值进行求和,即6+2+13+9+5。因此,我想确保数组格式也允许我做np.diag
。
发布于 2019-01-18 06:10:06
但是,您将将列表转换为一个数组来对其执行np.diag
。所以,希望你能像你在文章中提到的那样做,如下所示:
import numpy as np
k=np.array([[6,7,8,9,10],[1,2,3,4,5],[11,12,13,14,15],[6,7,8,9,10],[1,2,3,4,5]])
print(k)
>>array([[ 6, 7, 8, 9, 10],
[ 1, 2, 3, 4, 5],
[11, 12, 13, 14, 15],
[ 6, 7, 8, 9, 10],
[ 1, 2, 3, 4, 5]])
np.diag(k)
>>array([ 6, 2, 13, 9, 5])
sum(np.diag(k))
>>35
您可以参考asarray()方法。但是,它又一次等同于做以上的事情。
https://stackoverflow.com/questions/54248220
复制相似问题