我有一个字符串列表
q = ["(df['city'] == 'Mumbai') & (df['pin'] == 12345)","(df['city'] == 'Delhi') & (df['pin'] == 12346)"] #len(q) = 2
现在我必须在我的pandas数据帧上查询这两个条件
d = df.query(q[0])
Error: df unknown
检查后我知道它是针对该字符串类型的
d = df.query(q[0])
就像
一样d = df.query("(df['city'] == 'Mumbai') & (df['pin'] == 12345)") ###string with " "
###which will not work as per syntax
####if it will be like below it should have worked
d = df.query((df['city'] == 'Mumbai') & (df['pin'] == 12345)) ###without " "
我尝试过替换('''''),eval(str)但没有成功。
现在我相信因为它是一个字符串dtype所以""是内置的,当你在任何地方发送字符串变量时肯定会出现。
无论如何,我可以将该字符串传递给没有引号的df.query()(我不知道是否可以通过更改该字符串变量的某些dtype来完成,或者无法完成)。
请建议。