簡體   English   中英

如果包含負值,pandas 會刪除整行

[英]pandas remove entire row if it contains negative values

如果整行包含負值,如何刪除整行?

 df = pd.DataFrame({'col1': [1,-2,3,4],
                    'col2': [-1, -2, -3, 4],
                    'col4': [1,-2,3,4]})

輸出

       col1  col2  col4
        1    -1     1
        3    -3     3
        4     4     4

或者:

>>> df[~df.lt(0).all(axis=1)]

   col1  col2  col4
0     1    -1     1
2     3    -3     3
3     4     4     4

保留那些至少有一個值為正的行:

df = df[df.ge(0).any(axis=1)]
print(df)

   col1  col2  col4
0     1    -1     1
2     3    -3     3
3     4     4     4

或者刪除所有值為負的行:

df = df.drop(df[df.lt(0).all(axis=1)].index)
print(df)

   col1  col2  col4
0     1    -1     1
2     3    -3     3
3     4     4     4

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM