python - 如何使用字典过滤数据框
问题描述
假设我有一个这样的数据框和字典:
df = pd.DataFrame({"letters": ["a","b","c","b","c"], "numbers": [1,2,3,1,2]})
correct_mapping={"a":1,"b":2,"c":3}
我想过滤没有正确映射的行。
我试过这个,但它打破了:
df[correct_mapping[df["letters"]] != df["numbers"]]
TypeError: 'Series' objects are mutable, thus they cannot be hashed
任何帮助,将不胜感激。
预期输出:
letters numbers
3 b 1
4 c 2
解决方案
比较map
:
df[df['letters'].map(correct_mapping) != df['numbers']]
letters numbers
3 b 1
4 c 2
推荐阅读
- c# - 检查 HUGE 字典是否包含字符串并获取与元素匹配的所有元素
- api - 我写了一个计算斐波那契第 n 项的 javascript 代码,我如何在 Postman 中使用它
- node.js - 如何从多个函数中获取多个返回并在节点js中发送响应
- database - 如何获取行数
- node.js - 为 Google Cloud Function 格式化季度最后一天的日程安排(使用 Google Pub/Sub 安排的 Firebase 函数)-Node.js 8
- python-3.x - python中lambda函数的参考问题
- react-native - 是否可以在 appcenter 构建中运行排毒测试
- laravel-5 - 在android java中使用laravel rest api处理fcm显示消息和数据消息
- python - 将值分配给字典python中的键
- mysql - MySQL查询从12小时时间格式中选择最近的时间