旋转包含列表的列

Pivot a column containing list

我有一个名为 dfGenres 的 DataFrame,其中一列 Genres 看起来像:

DataFrame 代码:

dfGenres = pd.DataFrame({'Genres':["[Action, Romance, Mystery, Animal]", "[Bromance, Drama, Mystery]", "[Horror, Monsters, Shounen, Action]"]})

Pivot 意味着我希望有相同数量的行,但在每一列中,列表中的每个唯一元素,如果该行包含列表中的类型,则填充 1,否则填充 0。

我尝试了 get_dummies:

pd.get_dummies(
    dfGenres["Genres"].str.split('[\[,\]]',expand=True).stack()
    )

但是我得到的行太多(我只想要一个而不是多索引):

试试 str.get_dummies:

dfGenres["Genres"].str.strip('[]').str.get_dummies(sep=', ')