pandas 创建显示2个 Dataframe 之间关系的 Dataframe

xn1cxnb4  于 2022-12-21  发布在  其他
关注(0)|答案(1)|浏览(117)

你好,这是我的第一个问题,我尝试了一切.
我是Dataframe和SQL的新手,我有一个包含多个电影的excel表。它有电影名称、年份...和演员列。在演员列中列出了多个演员,它们由或/分隔。我创建了一个具有UUID的Dataframe电影,以及我应该为一部电影存储的所有信息。我还过滤了所有电影中的演员,创建了一个名为演员的数据框,它也有一个唯一的ID和名称,并将它们单独存储。
数据框_电影:
| 电影ID|演员|
| - ------| - ------|
| x|人员1、人员2、人员5|
| Y型|人员1|
数据框_执行器:
| 参与者ID|演员|
| - ------| - ------|
| 项目a|人员1|
| b.人口基金|第五人|
我想创建的是一个新的数据框架,显示它们之间的关系。
例如:
数据框_演员_电影:
| 电影ID|演员|
| - ------| - ------|
| x|项目a|
| x| b.人口基金|
问题是:在我的Excel表(和Bookdf)中有参与者。我想采取两个ID。
有人有主意吗?非常感谢,谢谢..:
我尝试迭代两个Dataframe书籍,并尝试使用两个UUID在DF_ACTORS_MOVIE Dataframe上创建一个新条目。问题是,有多个演员,它们被除以和/。

djmepvbi

djmepvbi1#

您可以先将参与者explode到一个新列中:

out = df_actors.merge(df_movie.assign(Actor=df_movie['Actors'].str.split(','))
                                            .explode('Actor').drop(columns='Actors')
                      )

输出:

ActorID    Actor Movie ID
0       a  Person1        x
1       a  Person1        y
2       b  Person5        x

相关问题