旋转包含列表的列
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=', ')
我有一个名为 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=', ')