簡體   English   中英

如何將此Python for循環轉換為列表推導?

[英]How to convert this Python for loop into a list comprehension?

我需要將此for循環轉換為列表推導。 此for循環遍歷數據幀以查找每一行,其中'TL'列的條目包括“ J”和'Ink' = 0'Ink' = 0並刪除整行:

for r in df.T:
    if 'J' in df.loc[r,'TL'] and df.loc[r,'Ink'] == 0:
        df.drop(r)
    else:
        continue

我已經試過了

df_clean = [
    df.drop(r) for r in df.T if 'J' in df.loc[r,'TL'] and df.loc[r,'Ink'] == 0
]

我收到一個錯誤說明

ValueError:DataFrame的真值不明確。 使用a.empty,a.bool(),a.item(),a.any()或a.all()。

嘗試:

df[~(df.TL.str.contains('J') & df.Ink.eq(0))]

暫無
暫無

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

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