python - 使用多个 loc()
问题描述
我试图在下表中使用多个 loc() 但不幸的是代码给了我一个错误说明:
ValueError:DataFrame 的真值不明确。使用 a.empty、a.bool()、a.item()、a.any() 或 a.all()。
我的df如下:
REFERENCE PERIOD QTY PRICE
abc123 Jan-20 20 21.2
abc123 Feb-20 -40 22.3
abc123 Mar-20 20 22.9
cde456 Aug-20 -10 18.7
cde456 Sep-20 20 19.4
cde456 Jan-20 -10 19.93
给我错误的代码理想情况下应该返回表的一个子集:
dfa = df.loc[df['PERIOD'].str.contains(pat='JAN')] and df.loc[df['REFERENCE'].str.contains(pat='abc')]
任何想法我在同一个字符串中使用 2 个 .loc 函数时做错了什么?
谢谢
解决方案
loc
使用布尔运算符尝试单:
df.loc[df['PERIOD'].str.contains('JAN') &
df['REFERENCE'].str.contains('A')]
推荐阅读
- html - html - 用文本替换输入单选
- javascript - 当一个函数中有两个类时会出现这个问题
- laravel - 在 laravel 中验证数组
- javascript - sass 文件上的 CSS 转换和动画不起作用
- nlp - 类型对象“DataFrame”没有属性“稀疏”
- javascript - 使用 aws-amplify 作为身份验证的 PrivateRoute 功能组件
- javascript - 如果选中,Google map api 多个标记会更改颜色
- typescript - 将模糊搜索与猫鼬一起使用时出现打字稿错误
- node.js - 在 Synology Nas 上运行的 Node JS、访问 ssh Windows Powershell、端口转发、永久运行 app.js 的 Linux upstart (.conf) 脚本
- java - Spring Boot + Angular - MultipartException:当前请求不是多部分请求