熊猫分组

时间:2021-07-28 06:51:23

标签: pandas dataframe

给定的数据框:

+-------+------+-------+
|Product|Amount|Country|
+-------+------+-------+
| Banana|  1000|    USA|
|Carrots|  1500|    USA|
|  Beans|  1600|    USA|
| Orange|  2000|    USA|
| Orange|  2000|    USA|
| Banana|   400|  China|
|Carrots|  1200|  China|
|  Beans|  1500|  China|
| Orange|  4000|  China|
| Banana|  2000| Canada|
|Carrots|  2000| Canada|
|  Beans|  2000| Mexico|
+-------+-----+-------+

所需数据框:

+-------+------+-----+------+----+
|Product|Canada|China|Mexico| USA|
+-------+------+-----+------+----+
| Orange|  null| 4000|  null|4000|
|  Beans|  null| 1500|  2000|1600|
| Banana|  2000|  400|  null|1000|
|Carrots|  2000| 1200|  null|1500|

谁能帮我解决这个问题??

1 个答案:

答案 0 :(得分:0)

使用pivot_table

>>> df.pivot_table(index='Product', columns='Country', values='Amount', aggfunc=sum)

Country  Canada   China  Mexico     USA
Product
Banana   2000.0   400.0     NaN  1000.0
Beans       NaN  1500.0  2000.0  1600.0
Carrots  2000.0  1200.0     NaN  1500.0
Orange      NaN  4000.0     NaN  4000.0