出于好奇,使用df.columns或df.keys()获取DataFrame的列名(假设为df)之间有任何实际区别吗?
我已经按类型检查过输出,似乎完全一样。我是否遗漏了某些东西,或者这两种方法看起来一样多余?一种比另一种更适合使用吗?
谢谢。
答案 0 :(得分:2)
看起来没有实际区别,如果有,我真的很想知道它是什么。您可能在文档中看到 DataFrame.columns 具有列标签,它是一个轴属性,而 DataFrame.keys 获取信息轴。我认为由于前者是属性或引用,而后者是可调用方法,因此该方法需要更多时间来执行。我没有对此进行测试,但我很确定,即使存在差异,也不重要。而且它们都返回相同的类型:
>>> type(data.columns)
<class 'pandas.core.indexes.base.Index'>
>>> type(data.keys())
<class 'pandas.core.indexes.base.Index'>
答案 1 :(得分:1)
我注意到您可以将.keys()与Series一起使用,但不能将.columns与Series一起使用。