python-3.x - 使用 Dataframe.columns 和 Dataframe.keys() 获取列名有什么区别吗?

标签 python-3.x pandas dataframe

出于好奇,使用 df.columns 或 df.keys() 获取 DataFrame 的列名(假设为 df)之间有什么实际区别吗?

我已经按类型检查了输出,它似乎完全相同。我是不是遗漏了什么,或者这两种方法和看起来一样多余?一种比另一种更适合使用吗?

谢谢。

最佳答案

看起来没有实际区别,如果有,我真的很想知道它是什么。您可能在文档中看到 DataFrame.columns有列标签,它是一个轴属性和 DataFrame.keys获取信息轴。我认为由于前者是属性或引用,而后者是可调用方法,因此该方法需要更多时间来执行。我没有对此进行测试,但我很确定,即使存在差异,也不重要。此外,它们都返回相同的类型:

>>> type(data.columns)
<class 'pandas.core.indexes.base.Index'>
>>> type(data.keys())
<class 'pandas.core.indexes.base.Index'>

关于python-3.x - 使用 Dataframe.columns 和 Dataframe.keys() 获取列名有什么区别吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56649500/

相关文章:

python - 如何转换非常大的数据框以获取所有列中的值的计数(不使用 df.stack 或 df.apply)

R:从一列中提取数据以创建新列

python - 如何获得 pandas 数据框中列表中每个元素的频率分布?

python - 尽管启用了管理员权限和两种意图,为什么我的机器人无法踢用户?

python - 解包元组列表的 dask 延迟对象

python - Pandas如何通过在每列的任何行中获取值='yes'来组合行分组名称

r - 有效扩展R中的大数据框

python - 我怎么能不计算字符串之间的空格

python - nonlocals() 在哪里?

python - Pandas :将行数据 reshape 并分组为列数据