1 回答
TA贡献1862条经验 获得超6个赞
这是一个可能的解决方案(df是您的数据框):
pd.merge(df[['id']], pd.get_dummies(df.genres.str.split().explode()),
left_on='id', right_index=True).groupby('id').sum()
这是一个例子:
>>> df = pd.DataFrame({'id': [0,1,2,3,4], 'genres': ['drama romance', 'drama', 'comedy', 'mystery thriller', 'crime thriller']})
>>> pd.merge(df[['id']], pd.get_dummies(df.genres.str.split().explode()), left_on='id', right_index=True).groupby('id').sum()
comedy crime drama mystery romance thriller
id
0 0 0 1 0 1 0
1 0 0 1 0 0 0
2 1 0 0 0 0 0
3 0 0 0 1 0 1
4 0 1 0 0 0 1
添加回答
举报