我有一個(gè)包含 7 列和 ~5.000 行的數(shù)據(jù)框。我想檢查一行中的所有列值是否都在我的列表中,如果是,要么將它們添加到新數(shù)據(jù)框,要么刪除所有值不匹配的列,即刪除錯(cuò)誤行(w/e 是最簡(jiǎn)單的);for row in df: for columns in row: if df.iloc[row, column].isin(MyList): ...*something*我可以想象.apply并且.all可以使用,但恐怕我的 python 技能有限,有什么幫助嗎?
1 回答

一只斗牛犬
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超2個(gè)贊
如果我理解正確,您可以通過使用apply
lambda 表達(dá)式來解決這個(gè)問題,例如:
df.loc[df.apply(lambda row: all(value in MyList for value in row), axis=1))]
添加回答
舉報(bào)
0/150
提交
取消