Próbuję napisać funkcję, aby usunąć wszystkie wiersze, które mają wartość zerową w To nie jest z mojego kodu, ale przykładem idei używam.Jak usunąć wiersz z tablicy numpy zawierającej zero?
import numpy as np
a=np.array(([7,1,2,8],[4,0,3,2],[5,8,3,6],[4,3,2,0]))
b=[]
for i in range(len(a)):
for j in range (len(a[i])):
if a[i][j]==0:
b.append(i)
print 'b=', b
for zero_row in b:
x=np.delete(a,zero_row, 0)
print 'a=',a
i to jest moje wyjście:
b= [1, 3]
a= [[7 1 2 8]
[4 0 3 2]
[5 8 3 6]
[4 3 2 0]]
Jak pozbyć się wierszy z indeksem w b? Przykro mi, jestem całkiem nowy w tym, że każda pomoc będzie naprawdę doceniona.
Tylko jeden komentarz. Ten fragment przykładowego kodu, który wysłałeś pętli nad 'b', aby usunąć pojedyncze wiersze. To wcale nie jest potrzebne. 'a = np.delete (a, b, axis = 0)' działa jak zaklęcie ("oś" określone, aby było bardziej oczywiste, co robimy) –