我想在我的Pandas DataFrame中取消堆叠一列。 DataFrame由'Date'索引,我想取消堆叠'Country'列,因此每个Country都是它自己的列。目前的熊猫DF看起来像这样:
Country Product Flow Unit Quantity
Date
2002-01-31 FINLAND KEROSENE TOTEXPSB KBD 3.8129
2002-01-31 TURKEY KEROSENE TOTEXPSB KBD 0.2542
2002-01-31 AUSTRALI KEROSENE TOTEXPSB KBD 12.2787
2002-01-31 CANADA KEROSENE TOTEXPSB KBD 5.1161
2002-01-31 UK KEROSENE TOTEXPSB KBD 12.2013
当我使用df.pivot时,我收到以下错误“ReshapeError:索引包含重复的条目,无法重塑”这是真的,因为我正在查看每个国家/地区同时报告的日期。我想要的是将“国家专栏”拆开,这样每个月只会显示一个日期。
像这样的DataFrame标题Date仍然是索引:
Date FINLAND TURKEY AUSTRALI CANADA Flow Unit
2002-01-31 3.8129 0.2542 12.2787 5.1161 TOTEXPSB KBD
我已经研究了一段时间而且我没有到达任何地方,所以任何方向或见解都会很棒。
另外,请注意,您只看到DataFrame的头部,因此数据的年份就是这种格式。
谢谢,
道格拉斯
答案 0 :(得分:2)
如果您可以放弃Product
,Unit
和Flow
,那么它应该像
df.reset_index().pivot(columns='Country', index='Date', values='Quantity')
给予
Country AUSTRALI CANADA FINLAND TURKEY UK
Date
2002-01-31 12.2787 5.1161 3.8129 0.2542 12.2013