2016-04-11 12 views
15

Mam instrukcję if, która sprawdza, czy ramka danych nie jest pusta. Sposób, w jaki to zrobić jest:Pandy Pythona sprawdzają, czy ramka danych nie jest pusta.

if dataframe.empty: 
     pass 
else: 
     #do something 

Ale naprawdę muszę:

if dataframe is not empty: 
     #do something 

Moje pytanie jest tam metoda nie puste, aby osiągnąć ten cel? Chciałem też zapytać, czy druga wersja jest lepsza pod względem wydajności? W przeciwnym razie może to ma sens, aby zostawić go tak, jak jest to pierwsza wersja?

+0

Dlaczego nie możesz zrobić 'not dataframe.empty'? – EdChum

+0

'not df.empty' lub szybszy' len (df.index) 'sprawdzić? – Zero

+0

@ Zero, czy ktokolwiek może mówić do preferowania 'len (df.index)' kontra 'df.empty'? pylint preferuje to drugie, ale czy względy wydajności przewyższają korzyści stylistyczne (jeśli takowe istnieją)? –

Odpowiedz

21

Wystarczy zrobić

if not dataframe.empty: 
    // insert code here 

Powodem jest to działa bo dataframe.empty zwrotów True jeśli dataframe jest pusty. Aby to zmienić, możemy użyć operatora negacji not, który odwraca True na False i na odwrót.

To jest dokładnie to samo, co ! działa w innych językach: można zrobić !false i mieć to ocenić na true w Javie i C++. Dokładnie to samo dzieje się tutaj, ale z not zamiast !.

4

Można użyć atrybutu dataframe.empty, by sprawdzić, czy jest pusty czy nie:

if not dataframe.empty: 
    #do something 

Albo

if len(dataframe) != 0: 
    #do something 

Albo

if len(dataframe.index) != 0: 
    #do something 
+1

lub po prostu 'if len (ramka danych):' – sirfz

+0

Co powiesz na 'if len (dataframe)! = 0:'? –

0

Innym sposobem:

if dataframe.empty == False: 
    #do something` 
0

.empty zwraca wartość logiczną

>>> df_empty.empty 
True 

Więc jeśli nie jest pusta może być zapisana jako

if not df.empty: 
    #Your code 

Sprawdź pandas.DataFrame.empty , może komuś pomóc.

+0

Podczas gdy ten link może odpowiedzieć na pytanie, lepiej umieścić tutaj istotne części odpowiedzi i podać link do odsyłacza. Odpowiedzi dotyczące linków mogą stać się nieprawidłowe, jeśli strona z linkami się zmieni. - [Z recenzji] (/ opinia/niskiej jakości-posts/18074835) – GGamba

Powiązane problemy