我想转换数据和累积它们使用熊猫。
的数据和累积值
我需要你的帮助。
谢谢。
发布于 2020-03-22 12:19:55
我认为下面的行应该给出您想要的输出:
# Create pivot table
df = pd.pivot_table(df, values="value", index="country", columns="year")
# Calculate cumulative sum and forward fill NaN
df = df.cumsum(axis=1).fillna(method="ffill", axis=1)
# Reshape data back into long format
df = df.reset_index().melt("country")
我首先用列中的国家和列中的年份创建一个枢轴表,以获取长格式数据中可能缺少的所有年份。然后计算累积和,然后再将值填充到列上。为了最终将数据重新格式化为原始的长格式,我重新设置索引并将数据以国家作为id列进行熔化。给定您的输入,它将返回以下数据:
country year value
0 JAPAN 1999 10.0
1 KOREA 1999 NaN
2 USA 1999 NaN
3 JAPAN 2000 10.0
4 KOREA 2000 15.0
5 USA 2000 20.0
6 JAPAN 2001 10.0
7 KOREA 2001 15.0
8 USA 2001 33.0
9 JAPAN 2002 40.0
10 KOREA 2002 15.0
11 USA 2002 33.0
https://datascience.stackexchange.com/questions/70068
复制相似问题