我遇到了以下任務的一些問題:按元素列表列出的元素列表python
我列出了一個列表。
我稱之爲「weighted_prob」列表,其中「weighted_prob」的每個元素被稱爲「weighted_variable」。
weighted_prob中有32個元素,每個元素都是100個浮點數的列表。
這是什麼樣子:
for i in arange(0,2):
print weighted_prob[i]
outcome:
[ 1.56147373e-02 2.04783441e-03 2.60245622e-03 2.34647692e-03
1.96250797e-03 2.60245622e-03 1.45054937e-03 1.74919189e-03
2.00517119e-03 2.04783441e-03 1.62120224e-03 1.87718154e-03
1.96250797e-03 2.34647692e-03 2.00517119e-03 1.57853902e-03
1.74919189e-03 2.21848727e-03 1.53587580e-03 1.36522294e-03
1.19457007e-03 1.32255972e-03 1.10924364e-03 9.38590770e-04
7.25274686e-04 8.95927553e-04 6.39948252e-04 9.81253986e-04
8.53264336e-04 3.41305734e-04 5.97285035e-04 5.11958602e-04
6.39948252e-04 5.11958602e-04 4.69295385e-04 2.98642518e-04
2.13316084e-04 2.13316084e-04 3.41305734e-04 3.83968951e-04
2.98642518e-04 1.70652867e-04 2.98642518e-04 1.27989650e-04
1.70652867e-04 1.27989650e-04 2.55979301e-04 1.27989650e-04
8.53264336e-05 1.27989650e-04 4.26632168e-05 1.27989650e-04
4.26632168e-05 4.26632168e-05 0.00000000e+00 0.00000000e+00
1.27989650e-04 0.00000000e+00 0.00000000e+00 0.00000000e+00
4.26632168e-05 0.00000000e+00 4.26632168e-05 0.00000000e+00
0.00000000e+00 0.00000000e+00 4.26632168e-05 4.26632168e-05
0.00000000e+00 4.26632168e-05 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00]
[ 1.53587591e-02 1.87718167e-03 2.17582421e-03 2.13316099e-03
2.77310929e-03 2.47446675e-03 2.34647709e-03 2.00517133e-03
1.96250811e-03 2.17582421e-03 2.73044607e-03 2.68778285e-03
1.74919201e-03 2.34647709e-03 2.85843573e-03 1.91984489e-03
2.38914031e-03 2.64511963e-03 1.79185523e-03 1.91984489e-03
1.74919201e-03 1.32255981e-03 1.66386557e-03 1.57853913e-03
8.10601177e-04 1.27989659e-03 8.95927616e-04 8.95927616e-04
8.53264397e-04 8.53264397e-04 5.97285078e-04 6.39948297e-04
6.39948297e-04 6.39948297e-04 5.97285078e-04 4.26632198e-04
5.54621858e-04 3.83968978e-04 3.41305759e-04 1.70652879e-04
4.26632198e-04 1.70652879e-04 2.55979319e-04 5.11958638e-04
2.98642539e-04 8.53264397e-05 2.55979319e-04 8.53264397e-05
1.70652879e-04 0.00000000e+00 4.26632198e-05 8.53264397e-05
4.26632198e-05 1.27989659e-04 4.26632198e-05 4.26632198e-05
4.26632198e-05 8.53264397e-05 8.53264397e-05 4.26632198e-05
4.26632198e-05 4.26632198e-05 4.26632198e-05 0.00000000e+00
4.26632198e-05 4.26632198e-05 4.26632198e-05 0.00000000e+00
0.00000000e+00 4.26632198e-05 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00]
我想加起來每個weighted_variable的所有第i個元素。
換句話說,我想說,weighted_prob中每個列表的第零個元素(因此獲得32變量),獲取變量的總和,將這個總和存儲在一個數組中。對於所有32個「weighted_variables」,這必須應用於每個weighted_variable的所有100個元素。
這裏是我的嘗試:
add_prob = []
for weighted_variable in weighted_prob:
for i in range(len(weighted_variable)-1):
sum_per_bin = []
sum_per_bin.append(partitioning[i])
dummy = sum(sum_per_bin)
add_prob.append(dummy)
但命令
print add_prob
給出了32個零列表,我肯定是錯的。
任何人都可以幫助我嗎?例如,也許,有沒有更好的方法來做到這一點,沒有嵌套for循環?
非常感謝
布萊斯