【发布时间】:2017-01-26 11:42:40
【问题描述】:
我从 Kaggle 的 San Francisco Salaries 数据库导入了一个 csv 作为数据框
df=pd.read_csv('Salaries.csv')
我从“df”创建了一个数据框作为聚合函数
df2=df.groupby(['JobTitle','Year'])[['TotalPay']].median()
问题 1:第一列和第二列显示为无名,这不应该发生。
即使我使用的代码
df2.columns
它只将 TotalPay 命名为一列
问题 2:例如,我尝试将第一列重命名为 JobTitle 并且代码没有执行任何操作
df3=df2.rename(columns = {0:'JobTitle'},inplace=True)
所以这里给出的解决方案显然不起作用:Rename unnamed column pandas dataframe。
我希望有两种可能的解决方案: 1) 聚合函数尊重列命名 AND/OR 2) 重命名空数据框的列
【问题讨论】:
-
试试这个:
df3 = df2.reset_index() -
太棒了!这解决了我的问题,您能否将其发布为答案,以便我们给予您信任?谢谢!
-
第一个和第二个“列”实际上是 panda Index 对象。 (而不是 1, 2 ,3 ,4, 5 等对每一行进行编号,您有一对带标签的索引)。它们的操作方式与普通列不同。尝试使用
df2.index而不是df2.columns来访问它们。
标签: python pandas dataframe series kaggle