像 Python 中的 Excel 一样进行数据透视

问题描述 投票:0回答:1

我想学习如何像在 Excel 中一样在 Python 中转换数据

数据如下:

import pandas as pd 

`df = pd.DataFrame({
'country': ['Angola', 'India', 'Mongolia'],
1999: [800, 900, 1000],
2000: [800, 878, 900],
2001: [500, 345, 234],
2002: [400, 555, 666]
})

我想旋转此数据集,使国家/地区列垂直显示(即查看每年每个国家/地区的病例数)

这是我正在使用的代码:

df_melted = print(pd.melt(df, id_vars=['country'], var_name='year', value_name='value'))

这样做正确吗?

python
1个回答
0
投票

您可以使用

pivot_table()
功能。

import pandas as pd

df = pd.DataFrame({
    'country': ['Angola', 'India', 'Mongolia'],
    1999: [800, 900, 1000],
    2000: [800, 878, 900],
    2001: [500, 345, 234],
    2002: [400, 555, 666]
})

# Pivot the DataFrame
df_pivoted = df.pivot_table(index='country').reset_index()

print(df_pivoted)

输出:

    country    1999   2000   2001   2002
0    Angola   800.0  800.0  500.0  400.0
1     India   900.0  878.0  345.0  555.0
2  Mongolia  1000.0  900.0  234.0  666.0
© www.soinside.com 2019 - 2024. All rights reserved.