Python pivot-table 带数组值

Python pivot-table with array value

对于具有 table 功能的项目,我尝试创建一个具有 pivot_table 的新 table。 然而,小问题是,我的一个专栏包含一个数组。这里有一个 ex

| House  | Job | 
| ----- | --- |
| Gryffindor  | ["Head of Auror Office", " Minister for Magic"]| 
| Gryffindor  | ["Auror"]|
| Slytherin | ["Auror","Student"] |

理想情况下,我想用一个枢轴 table 创建一个看起来像这样的 table

| House | Head of Auror Office | Minister for Magic | Auror | Student |
|:----- |:--------------------:|:------------------:|:-----:|:-------:|
| Gryffindor  | 1 | 1| 1| 0|
| Slytherin  | 0 | 0| 1| 1|

当然我可以在数组中有一个像 2,3 或 4 这样的值,所以有些东西是不固定的。有人有解决办法吗?也许 pivot_table 不是最好的解决方案:/

对不起数组,它不起作用:(

假设您的 table 是 df,有两列:

(df.explode('Job')
   .groupby(['House', 'Job']).size().reset_index()
   .pivot(index = 'House', columns = 'Job').fillna(0))

代码首先将列表展开成行,然后进行计数,最后进行数据透视table