透视蟒蛇

诺亚·韦伯

快速提问:

我有以下情况(表):导入的数据框

现在,我想实现的是以下内容(或这些内容中的内容,不必完全是这样)

目标

我不要以下几列,因此我将其删除

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个问题不同的是,我不需要任何聚合函数,只是将值保持不变。

数据可在以下位置找到:数据

乔纳森·S。

方法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:如果未提供该参数,则不会聚合任何数字类型

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章