簡體   English   中英

我該如何旋轉這個Pandas DataFrame?

[英]How can I pivot this Pandas DataFrame?

我正在讀取具有以下結構的csv文件:

Continent, Country, Year, GDP

所有國家都有多年,但有些國家可能會錯過一些年。

我的目標是將大陸和國家作為索引,並將每年的GDP作為列。

Continent Country 2009 2010 2011 2012 2013 2014

我已經試過了:

df.pivot(index=["Continent", "Country"], columns="Year", values="GDP")

但這給了我這個錯誤:

ValueError: Buffer has wrong number of dimensions (expected 1, got 2)

您可以嘗試以下示例數據:

pd.DataFrame(columns=['Continent', 'Country', 'Year', 'GDP'],
             data=[['NA', 'US', 2014, 1234], ['NA', 'US', 2013, 2345]])

如果使用pivot_table而不是pivot ,它將起作用:

In [47]: df.pivot_table(index=["Continent", "Country"], columns="Year", values="GDP")
Out[47]:
Year               2013  2014
Continent Country
NA        US       2345  1234

問題是pivot無法處理index / columns參數的列列表。 唯一的警告是,如果一個大洲/國家/地區/年份組合有多個值,則默認值為均值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM