转置 DataFrame 进行透视
透视 DataFrame 是指转置其行和列以实现数据的不同表示。在 Pandas 中,可以采用透视方法来实现此目的。
考虑以下 DataFrame:
Indicator Country Year Value 1 Angola 2005 6 2 Angola 2005 13 3 Angola 2005 10 4 Angola 2005 11 5 Angola 2005 5 1 Angola 2006 3 2 Angola 2006 2 3 Angola 2006 7 4 Angola 2006 3 5 Angola 2006 6
要对此 DataFrame 进行透视以将指标值作为新列:
out = df.pivot(columns = 'Country', 'Year', 'Indicator', values = 'Value') print(out)
这会导致:
Indicator 1 2 3 4 5 Country Year Angola 2005 6 13 10 11 5 2006 3 2 7 3 6
恢复为未旋转状态格式:
print(out.rename_axis(columns=None).reset_index())
这会产生:
Country Year 1 2 3 4 5 0 Angola 2005 6 13 10 11 5 1 Angola 2006 3 2 7 3 6
使用.pivot_table
如果存在重复的标签组合,则可以使用pivot_table。它默认计算平均值:
out = df.pivot_table( index=['Country', 'Year'], columns='Indicator', values='Value') print(out.rename_axis(columns=None).reset_index())
结果:
Country Year 1 2 3 4 5 0 Angola 2005 6.0 13.0 10.0 11.0 5.0 1 Angola 2006 3.0 2.0 7.0 3.0 6.0
有关更多信息,请参阅有关重塑和数据透视表的 Pandas 用户指南。
以上是如何转置 DataFrame 以在 Pandas 中旋转其行和列?的详细内容。更多信息请关注PHP中文网其他相关文章!