我试着做以下几点:
import pandas as pd
d = {'col1': [1, 7, 3, 6], 'col2': [3, 4, 9, 1]}
df = pd.DataFrame(data=d)
out = df.query('col1 > col2')
out= col1 col2
1 7 4
3 6 1
这可以正常工作。但是当我修改列名col 1--〉col 1:suf
d = {'col1:suf': [1, 7, 3, 6], 'col2': [3, 4, 9, 1]}
df = pd.DataFrame(data=d)
out = df.query('col1:suf > col2')
出现错误:
“AnnAssign”节点未实现
有没有简单的方法来避免这种行为?或者,当然,重命名标题等是一种解决办法
2条答案
按热度按时间57hvy0tb1#
冒号
:
是SQL查询中的一个特殊字符。您需要用反勾号将其括起来。试试这个:
输出量:
sqxo8psd2#
根据ValentinFFM对this issue的评论,您需要在列名周围加上一个反引号,如