我有一個(gè)數(shù)據(jù)框: BPR_free_speed BPR_speed Volume time_normalised free_capacity 0 17.88 15.913662 580 1.593750 475.0 1 17.88 15.865198 588 2.041667 475.0 2 17.88 16.511613 475 0.666667 475.0 3 17.88 16.882837 401 1.091458 467.0 4 99999 16.703004 438 1.479167 467.0 5 17.88 16.553928 467 0.960417 467.0 如何在特殊條件下獲得系列?我想找出異常值并將它們放入系列中df["has_outliers"],例如如果某行在任何列中的值超過 550,則為 True,否則為 False。這個(gè)數(shù)據(jù)幀的輸出應(yīng)該是 has_outliers0 True1 True2 False 3 False 4 True 5 False 我認(rèn)為即使使用 numpy 也可以完成,但是怎么做呢?
1 回答

絕地?zé)o雙
TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超4個(gè)贊
比較DataFrame.gt
與DataFrame.any
檢查每行至少一個(gè) True :
df["has_outliers"] = df.gt(500).any(axis=1)
或者計(jì)算True
s 并轉(zhuǎn)換為整數(shù):
df["has_outliers"] = df.gt(500).sum(axis=1).astype(bool)
添加回答
舉報(bào)
0/150
提交
取消