我有一個由另一個函式生成的陣列串列:
我有一個由另一個函式生成的陣列串列。
testGroup = [array([18]), array([] , dtype=int64), array([56, 75, 55, 55]), array([32] ]
我想回傳串列中每個陣列的總和,空的陣列回傳為零
。我試著使用numpy,按照檔案的要求:
我試著使用numpy。
np. sum([0, 1], [0, 5]], axis=1)
array([1, 5])np. sum([0, 1], [0, 5]], axis=1)
array([1, 5])
但是當我嘗試np.sum(testGroup, axis=1)時,我得到一個軸錯誤,因為我認為空陣列的維度小于1?
我也試過直接求和 arraySum = sum(testGroup)但是得到一個ValueError
有什么想法可以實作在
testGroup 串列的總和?
uj5u.com熱心網友回復:
testGroup是一個普通的Python串列,它剛好包含numpy.array元素。相反,你可以使用一個串列理解
[np. sum(a) for a in testGroup]
[18, 0, 241, 32]
uj5u.com熱心網友回復:
嘗試
list(map(np.sum, testGroup))
它給出了
[18, 0, 241, 32]
uj5u.com熱心網友回復:
你可以使用所謂的list-comprehension來對list的每個元素應用函式,如下所示
import numpy as np
testGroup = [np.array([18]), np.array([], dtype=np.int64), np. array([56, 75, 55, 55]), np.array([32] ]
totals = [np.sum(i) for i in testGroup]
print(totalals)
輸出
[18, 0, 241, 32]
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/322425.html
標籤:
