首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Pandas:删除列表中包含的所有行

Pandas:删除列表中包含的所有行
EN

Stack Overflow用户
提问于 2021-04-18 16:45:10
回答 1查看 38关注 0票数 1

我想从一个pandas DataFrame中删除所有行,该pandas的'Beguenstigter/Zahlungspflichtiger‘列中的条目包含在一个列表(或集合)中。amazon这里只是一个字符串列表。

我在这个网站上研究后的最大努力是这样的:

代码语言:javascript
代码运行次数:0
运行
复制
extract_df = extract_df.drop(extract_df[extract_df['Beguenstigter/Zahlungspflichtiger'] in amazon].index)

print(extract_df)

但它不仅笨重且不美观,还会抛出错误:

如果我给亚马逊做一个套装,我会得到

代码语言:javascript
代码运行次数:0
运行
复制
TypeError: 'Series' objects are mutable, thus they cannot be hashed

如果我把它作为列表保存,我会得到

代码语言:javascript
代码运行次数:0
运行
复制
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().

有人能给我解释一下为什么这个命令会产生这些错误吗?正确的命令是什么?我在这里看到的许多关于这个主题的帖子似乎已经被弃用了,到目前为止还没有解决方案。谢谢你的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-18 17:11:46

试试这个:( ~Alt + 126,它代表子设置时的逻辑否定) extract_df[~extract_df['Beguenstigter/Zahlungspflichtiger'].isin(amazon)]

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67146677

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档