我有一個如下的numpy數組,我想刪除所有的零。從numpy數組中刪除某些元素而不破壞結構
a = [[ 5 2 0 9 4]
[ 2 0 9 4 2]
[ 0 9 4 2 6]
[ 9 4 2 6 8]
[ 4 2 6 8 0]
[ 2 6 8 0 3]
[ 6 8 0 3 11]
[ 8 0 3 11 7]
[ 0 3 11 7 1]
[ 3 11 7 1 5]
[11 7 1 5 21]
[ 7 1 5 21 8]
[ 1 5 21 8 0]
[ 5 21 8 0 18]
[21 8 0 18 12]
[ 8 0 18 12 3]
[ 0 18 12 3 9]]
我想刪除所有零後,如下是:
b = [[ 5 2 9 4]
[ 2 9 4 2]
[ 9 4 2 6]
[ 9 4 2 6 8]
[ 4 2 6 8]
[ 2 6 8 3]
[ 6 8 3 11]
[ 8 3 11 7]
[ 3 11 7 1]
[ 3 11 7 1 5]
[11 7 1 5 21]
[ 7 1 5 21 8]
[ 1 5 21 8]
[ 5 21 8 18]
[21 8 18 12]
[ 8 18 12 3]
[18 12 3 9]]
我試圖a[a>0]
但它返回一維數組:[ 5 2 9 4 2 9 4 2 9 4 2 6 9 4 2 6 8 4 2 6 8 2 6 8 3 6 8 3 11 8 3 11 7 3 11 7 1 3 11 7 1 5 11 7 1 5 21 7 1 5 21 8 1 5 21 8 5 21 8 18 21 8 18 12 8 18 12 3 18 12 3 9]
。我不知道是否有像這樣的命令a[a>0,axis=1]
刪除所有的零而不破壞它的結構?
看看這個答案:http://stackoverflow.com/a/15773628/2666859 – Serenity
不完全一樣...這個問題/答案是關於[如何屏蔽元素(https://開頭計算器.com/questions/15773570 /試圖掩蓋2d-numpy-arrays-based-values-in-one-column/15773628),而不是如何刪除元素。 – jkdev
Numpy數組_具有一致的維度,沿着特定的軸線,所有的子數組需要具有相同的長度 – Finwood