Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 熊猫-更改数据帧的格式_Python_Pandas_Dataframe_Pivot - Fatal编程技术网

Python 熊猫-更改数据帧的格式

Python 熊猫-更改数据帧的格式,python,pandas,dataframe,pivot,Python,Pandas,Dataframe,Pivot,我有一个数据框,其格式如下: level_0 level_1 counts 0 back not_share 1183 1 back share 1154 2 back total 2337 3 front not_share 697 4 front share 1073 5 front total 1770 6 left not_share 4819 7 left share 5097 8

我有一个数据框,其格式如下:

level_0 level_1 counts
0   back    not_share   1183
1   back    share   1154
2   back    total   2337
3   front   not_share   697
4   front   share   1073
5   front   total   1770
6   left    not_share   4819
7   left    share   5097
8   left    total   9916
9   other   not_share   2649
10  other   share   2182
11  other   total   4831
12  right   not_share   1449
13  right   share   1744
14  right   total   3193
我想把这个表格转换成

level_0 share not_share total
back    1154  1183      2337
front   1073  697       1770 
等等

是否有任何方法可以使用,或者我应该将其转换为本机Python数据类型,然后进行操作?

您可以使用以下方法:


使用
groupby
sum

df.groupby(['level_0', 'level_1']).counts.sum().unstack()

嗯,这是一种有趣(不同寻常)的方法@对于较小的
df
s,这似乎更快。对于更大的行(数百万行),这两种方法似乎都是平衡的。
df.groupby(['level_0', 'level_1']).counts.sum().unstack()