繁体   English   中英

删除Pandas中的DataFrame行,其中列值在列表中

[英]Deleting DataFrame row in Pandas where column value in list

如何删除列值在列表中的熊猫数据框中的某些行? 例如:

given mylist = [fh3, fh1, fh4]

   id  loc_id
0  fh0  0859
1  fh1  5861
2  fh2  2585
3  fh3  853
4  fh4  45596
4  fh5  586

remove rows where id in mylist:

   id  loc_id
0  fh0  0859
2  fh2  2585
4  fh5  586

isinboolean indexing一起使用:

mylist = ['fh3', 'fh1', 'fh4']
print (df[~df.id.isin(mylist)])
    id  loc_id
0  fh0     859
2  fh2    2585
4  fh5     586

用另一种解决方案drop

mylist = ['fh3', 'fh1', 'fh4']
print (df.set_index('id').drop(mylist).reset_index())
    id  loc_id
0  fh0     859
1  fh2    2585
2  fh5     586

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM