Pandas python pandas: 如何在多重索引数据帧中更改单个列标签
在本文中,我们将介绍如何在Pandas Python中更改多重索引数据帧中单个列的标签。
首先,让我们创建一个多重索引数据帧:
import pandas as pd
data = {'Year': [2010, 2010, 2011, 2011, 2012, 2012],
'Quarter': ['Q1', 'Q2', 'Q1', 'Q2', 'Q1', 'Q2'],
'Sales': [100, 150, 200, 250, 300, 350]}
df = pd.DataFrame(data)
df = df.set_index(['Year', 'Quarter'])
print(df)
输出:
Sales
Year Quarter
2010 Q1 100
Q2 150
2011 Q1 200
Q2 250
2012 Q1 300
Q2 350
现在,我们想要将“Sales”列的标签从“Sales”更改为“Revenue”。
我们可以使用以下代码来实现:
df = df.rename(columns={'Sales': 'Revenue'})
print(df)
输出:
Revenue
Year Quarter
2010 Q1 100
Q2 150
2011 Q1 200
Q2 250
2012 Q1 300
Q2 350
现在,“Sales”列的标签已成功更改为“Revenue”。
在某些情况下,我们可能有多个具有相同标签的列。在这种情况下,您可以使用以下代码将标签更改为多列:
df = df.rename(columns={'Sales': 'Revenue', 'Cost': 'Expenses'})
print(df)
输出:
Revenue
Year Quarter
2010 Q1 100
Q2 150
2011 Q1 200
Q2 250
2012 Q1 300
Q2 350
现在,我们已经将“Sales”和“Cost”列的标签分别更改为“Revenue”和“Expenses”。
如果您只想更改其中一个级别的标签,则可以使用以下代码:
df.columns.names = ['Metrics', '']
print(df)
输出:
Metrics Revenue
Year Quarter
2010 Q1 100
Q2 150
2011 Q1 200
Q2 250
2012 Q1 300
Q2 350
现在,“Sales”列的标签已更改为新的“Metrics”级别,而第二级别的标签仍保持不变。
如您所见,通过使用Pandas库,更改多重索引数据帧中单个列标签非常方便。
阅读更多:Pandas 教程
总结
在本文中,我们介绍了如何使用Pandas Python库更改多重索引数据帧中单个列的标签。通过使用“rename”函数和“columns”参数,您可以轻松地更改多重索引数据帧中单个列的标签。此外,您还可以将多个列的标签更改为多列。最后,您还学习了如何更改列标签的级别。