gpt4 book ai didi

Python pandas : Taking values from one database, 为它们分配另一个值并在第二个数据库中替换它们

转载 作者:太空宇宙 更新时间:2023-11-03 11:40:06 25 4
gpt4 key购买 nike

我有两个数据框:

数据框 1:

userId  movieId rating  timestamp
0 1 2 3.5 1112486027
1 1 29 3.5 1112484676
2 1 32 3.5 1112484819
3 1 47 3.5 1112484727
4 1 50 3.5 1112484580

数据框 2:

   movieId    title                    genres
0 1 Toy Story (1995) Adventure|Animation|Children|Comedy
1 2 Jumanji (1995) Adventure|Children|Fantasy
2 3 Grumpier Old Men(1995) Comedy|Romance
3 4 Waiting to Exhale (1995) Comedy|Drama|Romance
4 5 Father of the Bride Part II (1995) Comedy

两个 Dataframes 的行数不同。我想用数据帧 2 中代表的电影名称替换数据帧 1 中的 movieId 编号。如何操作?

我尝试了以下代码:

s = data2['title']
while i <= 131261:
array[i]= data2.index([data2['movieId'] == i])
i = i + 1

while pos<= len(array) - 1:

data3 = data['movieId'].replace([data['movieId'] == i],'[data2[pos]]')

但它显示如下错误:

TypeError                           Traceback (most recent call last)
<ipython-input-50-c6bed86d99a5> in <module>()
1 s = data2['title']
2 while i <= 131261:
----> 3 array[i]= data2.index([data2['movieId'] == i])
4 i = i + 1
5

TypeError: 'RangeIndex' object is not callable

我的错误是什么?有人可以提出更好的建议吗?

最佳答案

使用map系列:

df1['movieId'] = df1['movieId'].map(df2.set_index('movieId')['title'])

关于Python pandas : Taking values from one database, 为它们分配另一个值并在第二个数据库中替换它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51166964/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com