如何引用名称中带有点的 Pandas 列

Mic*_*mes 8 python pandas

我正在 Python Pandas 中使用一个数据框,该数据框的列名以Content.. 我可以通过声明来访问给定的列df['Content.xyz']。但是,当我尝试对其执行查询时,例如df.query("Content.xyz not in @mylist"),它会引发一个Content不是数据帧成员的错误。

如何在名称前加句点执行查询或其他类似操作?

此外,一些系列名称中有空格。我假设带有句点的列名的解决方案类似于包含空格的名称的解决方案。

jor*_*mit 5

.query()文档

0.25.0 版中的新功能。

您可以通过用反引号将包含空格的列名括起来来引用它们。

例如,如果您的一列被调用a a并且您想用 对其求和b,则您的查询应该是 `a a` + b

这样就回答了您问题的第二部分;您可以在列名周围使用反引号来转义其名称中的空格。

不幸的是,这现在仅适用于空格,不适用于点或其他特殊字符。它目前是一个正在处理的未决问题(https://github.com/pandas-dev/pandas/issues/27017),可能会在下一个版本中很快修复。

  • 截至 2021 年(pandas v1.3),使用反引号引用您的专栏也适用于点。 (6认同)