我有名为“dataset”的 pandas DataFrame,它包含一个名为“class”的列
当我执行以下行时,我得到 SyntaxError:无效语法
print("Unique values in the Class column:", dataset.class.unique())
它适用于其他列名称,但不适用于“类”
如何在 pandas 中使用关键字作为列名?
class
是python中的一个关键字。经验法则:每当您处理列名时cannot要在 python 中用作有效变量名,必须使用方括号表示法来访问:dataset['class'].unique()
.
当然,也有例外,但它们对你不利。例如,min
/max
是 python 中的有效变量名(即使它隐藏了内置变量)。但是,对于 pandas,您无法使用属性访问表示法引用此类命名列。还有更多这样的例外,它们在文档中列出。
进一步阅读的一个好地方是以下文档:属性访问。具体来说,红色Warning框),我将其添加到此处供后代使用:
-
仅当索引元素是有效的 Python 时才可以使用此访问
标识符,例如s.1
不允许。请参阅此处的解释
有效的标识符。
-
如果该属性与现有属性冲突,则该属性将不可用
方法名称,例如s.min
是不允许的,但是s['min']
是可能的。
-
同样,如果与以下属性冲突,该属性将不可用
以下任一列表:index, major_axis, minor_axis, items
.
-
在任何这些情况下,标准索引仍然有效,例如s['1']
,
s['min']
, and s['index']
将访问相应的元素或
柱子。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)