我正在使用具有如下结构的数据框:
In[75]: df.head(2)
Out[75]:
statusdata participant_id association latency response \
0 complete CLIENT-TEST-1476362617727 seeya 715 dislike
1 complete CLIENT-TEST-1476362617727 welome 800 like
stimuli elementdata statusmetadata demo$gender demo$question2 \
0 Sample B semi_imp complete male 23
1 Sample C semi_imp complete female 23
我希望能够针对列 demo$gender
运行查询字符串。
IE,
df.query("demo$gender=='male'")
但这与 $
标志有问题。如果我用另一个分隔符号(如 -
)替换 $
符号,那么问题仍然存在。我可以修复我的查询字符串以避免这个问题吗?我不想重命名这些列,因为它们与我的应用程序的其他部分紧密对应。
我真的很想坚持使用查询字符串,因为它是由我们技术栈的另一个组件提供的,创建一个解析器对于看似简单的问题来说是一项繁重的工作。
提前致谢。
原文由 Joe 发布,翻译遵循 CC BY-SA 4.0 许可协议
使用最新版本的 pandas,您可以使用反引号 (`) 转义包含特殊字符的列名称
另一种可能性是在流程的前一步清理列名称,用其他更合适的字符替换特殊字符。
例如: