我发现当我应该使用df[data]
或df.data
从dataframe(df)访问数据时,我有问题。
我主要使用[]方法创建新列,但我也可以使用df[]
和df.data
访问数据,但是差异是什么,我怎样才能更好地掌握这两种方式选择数据?什么时候应该用在另一个上?
答案 0 :(得分:1)
如果我正确理解Docs,它们几乎相同,除非在这些情况下:
- 只有当index元素是有效的python标识符时才可以使用[
.
]访问权限,例如s.1是不允许的。- 如果该属性与现有方法名称冲突,则该属性将不可用,例如: s.min是不允许的。
- 同样,如果该属性与以下任何列表冲突,该属性将不可用:index,major_axis,minor_axis,items,labels。
- 在任何这些情况下,标准索引仍然有效,例如: s ['1'],s ['min']和s ['index']将访问相应的元素或列。
然而,
索引运算符
[]
和属性运算符.
提供快速简便的功能 在各种用例中访问pandas数据结构[...]
在制作中你应该真正使用优化的熊猫数据访问方法,例如.loc
,.iloc
和.ix
,因为
[...]因为要访问的数据类型未知 事先,直接使用标准运算符进行了一些优化 限制。对于生产代码,我们建议您利用 优化的pandas数据访问方法。
答案 1 :(得分:0)
使用[]
将使用索引的值。
a = "hello"
df[a] # It will give you content at hello
使用.
df.a # content at a
不同之处在于,第一个可以使用变量。