在Python Pandas DataFrame中设置索引名称的最佳方法

在Pandas中创建空白数据框时,似乎至少有两种方法可以设置索引名称。

df = pd.DataFrame(columns=['col1','col2'])
df.index.name = 'index name'



df = pd.DataFrame(columns=['index name','col1','col2'])
df.set_index('index name',inplace=True)

一个人优先于另一个人吗?有没有第三种方法可以在一行代码而不是两行代码中做到这一点?

yorita 回答:在Python Pandas DataFrame中设置索引名称的最佳方法

我认为最好使用method chaining

  

熊猫核心团队现在鼓励使用方法链接。这是一种编程风格,您可以将多个方法调用链接到一个语句中。这样一来,您就可以将中间结果从一种方法传递到下一种方法,而不必使用变量来存储中间结果。

另一种DataFrame.rename_axis

df = pd.DataFrame(columns=['col1','col2']).rename_axis('index name')

或更改您的第二个解决方案:

df = pd.DataFrame(columns=['index name','col1','col2']).set_index('index name')

不建议使用

inplace-link

  

pandas核心团队不鼓励使用 inplace 参数,最终将不推荐使用该参数(这意味着“计划从库中删除”)。原因如下:

     

就地在方法链中不起作用。
  与名称所暗示的相反,使用 inplace 通常不会阻止创建副本。
  删除 inplace 选项将降低熊猫代码库的复杂性。

本文链接:https://www.f2er.com/3166801.html

大家都在问