【发布时间】:2020-04-03 06:35:20
【问题描述】:
我正在尝试获取行值是否满足某些条件
这里是代码
response='108'
group="MAMA"
optout='False'
for row in merged_df:
if row==response & row==group & row==optout:
print(merged_df['phone'])
我的数据框看起来像这样
phone group County PNC/ANC Facility Name Optedout Facility Code
25470000000 MAMA Orange PNC Main Centre FALSE 112
25470000000 MAMA Orange PNC Main Centre FALSE 112
25470000010 MAMA Orange PNC Centre FALSE 108
25470000020 MAMA Orange PNC Centre FALSE 108
25470000000 MAMA Orange PNC Main Centre FALSE 112
这是我得到的错误
read_masterFacility()
File "readsheet.py", line 48, in read_masterFacility
if row==response & row==group & row==optout:
TypeError: unsupported operand type(s) for &: 'int' and 'str'
想要的输出
25470000010
25470000020
我怎样才能做得更好?
【问题讨论】:
-
尽可能避免原生 python for 循环...当您使用 Pandas 或 numpy 的内置函数时,您将获得更快的代码。另外,请发布数据而不是图片,并提供预期的输出(也是数据)
标签: python pandas dataframe for-loop if-statement