簡體   English   中英

透視蟒蛇

[英]Pivoting python

快速提問:

我有以下情況(表): 導入的數據框

現在,我要實現的是以下內容(或這些內容中的內容,不必完全相同)

目標

我不要以下幾列,所以我將其刪除

data.drop(data.columns[[0,5,6]], axis=1,inplace=True)

我以為下面的代碼行可以解決它,但是我缺少了什么?

pivoted = data.pivot(index=["Intentional homicides and other crimes","Unnamed: 2"],columns='Unnamed: 3', values='Unnamed: 4')

產生

ValueError:傳遞的值的長度是3395,索引暗示2

與第8個問題不同的是,我不需要任何聚合函數,只是將值保持不變。

數據可在以下位置找到: 數據

方法pandas.DataFrame.pivot的問題在於它不處理索引中的重復值。 解決此問題的一種方法是改用pandas.pivot_table函數。

df = pd.read_csv('Crimes_UN_data.csv', skiprows=[0], encoding='latin1')
cols = list(df.columns)
cols[1] = 'Region'
df.columns = cols
pivoted = pd.pivot_table(df, values='Value', index=['Region', 'Year'], columns='Series', aggfunc=sum)

盡管有aggfunc參數,它不應求和,但會引發pandas.core.base.DataError:如果未提供該參數,則不會聚合任何數字類型

暫無
暫無

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

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