我有以下numpy的矩陣:循環訪問numpy的矩陣列
0 1 2 3 4 5 6 7 8 9
0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
1 0.0 0.0 5.0 0.0 9.0 0.0 0.0 0.0 0.0 0.0
2 0.0 0.0 0.0 0.0 0.0 0.0 2.0 0.0 0.0 0.0
3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 5.0 0.0
4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
5 0.0 0.0 7.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0
6 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
7 5.0 0.0 0.0 0.0 0.0 0.0 0.0 6.0 0.0 0.0
8 2.0 0.0 0.0 0.0 3.0 0.0 6.0 0.0 8.0 0.0
9 0.0 0.0 1.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
10 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
我想單獨計算非零值平均每行和列的。所以,我的結果應該是這樣的:
average_rows = [1.0,7.0,2.0,5.0,0.0,4.0,0.0,5.5,4.75,1.0,0.0]
average_cols = [3.5,1.0,4.33333,0.0,4.33333,0.0,4.0,6.0,6.5,0.0]
我無法弄清楚如何在它們迭代,我不斷收到TypeError: unhashable type
而且,我不知道,如果迭代是最好的解決辦法,我也嘗試了類似R[:,i]
來抓取每一列,並使用sum(R[:,i])
對它進行求和,但仍然得到相同的錯誤。
你是怎麼得到這個整潔的表格顯示?這是不正常的'numpy'。行和列標籤看起來像'pandas' ,. 「矩陣」是什麼意思? – hpaulj
這是numpy。我從'R = np.zeros((Rrows,Rcols))'開始,然後迭代並填充非零值,它大多是一個稀疏矩陣。它可以很好地顯示,因爲我使用ipython筆記本。 – BKS
好的,我使用Ipython,但不是筆記本。但如果這是''R'我看不到'不可能'的錯誤來自哪裏。報告錯誤時,您應該至少顯示部分錯誤堆棧和生成它的代碼行。 – hpaulj