python - 如何在变量名中使用 '-'减号进行查询和打印

标签 python python-3.x pandas variables naming-conventions

我遇到过一个问题和多个实例,并且总是尝试重命名列,以防在列名称/变量名称中出现减号(“-”)符号。 有人可以建议如何在 python 中规避或使用减号“-”变量名:

我收到错误,因为 Python 无法识别“BU-1”并给出错误。

df_bu_bu1.query('BU == @bu and "BU-1"== @country')

我什至尝试过,但没有成功:

df_bu_bu1.query("BU == @bu and 'BU-1'== @country")

打印变量时也会遇到类似的问题。 df_bu_bu1 是 pandas 数据帧,“BU”和“BU-1”是索引。

最佳答案

一个尴尬的解决方案是暂时重命名有问题的列:

df_bu_bu1.rename(columns={"BU-1": "BU1"})\
         .query("BU1==@country")\
         .rename(columns={"BU1": "BU-1"})

看起来这是你能做的最好的事情了。

关于python - 如何在变量名中使用 '-'减号进行查询和打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53809993/

相关文章:

python - 未知的字符问题�

python - 无法使用 Nose 测试运行测试

Python 字符串处理、Unicode 和 Beautiful Soup

python - 模块重新正则表达式在控制台窗口中按预期工作,但不是 "in eclipse"

python - 在一帧中的 block_wise 索引下连接两个不同长度的数据帧

python - df.style.apply 在显示中居中显示多索引值

python - 如何以张量形式从 tensorflow 或 Keras 中的混淆矩阵获得准确性?

python - ARIMA 预测使用新的 python statsmodels 给出了不同的结果

python - 在 Python 中使用枚举迭代到 len(list) - 1

python - 如何在 Python 中对嵌套对象进行类型提示?