Как заменить значения NaN столбца значениями из другого фрейма данных по ключу?
У меня есть два фрейма данных. В первом содержится полная информация о фильмах, а второй, с пропусками NaN в столбце наименований фильмов:
А в первом фрейме содержится полная информация о фильмах. Как можно взять наименование фильма из основного полного фрейма по ключу 'movieId' и вставить его в неполный с пропусками?
Вот ссылка на файлы.
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
df1 = pd.read_csv("df1.csv", index_col=0)
df2 = pd.read_csv("df2.csv", index_col=0)
res = df2.drop(columns="title").merge(df1[["movieId", "title"]].drop_duplicates())
результат:
In [317]: res
Out[317]:
userId movieId rating title
0 1 858 5.0 Sleepless in Seattle
1 3 858 4.0 Sleepless in Seattle
2 5 858 5.0 Sleepless in Seattle
3 12 858 4.0 Sleepless in Seattle
4 20 858 4.5 Sleepless in Seattle
... ... ... ... ...
13227 1273 8373 5.0 Transformers: Revenge of the Fallen
13228 1274 8373 5.0 Transformers: Revenge of the Fallen
13229 1275 8373 5.0 Transformers: Revenge of the Fallen
13230 1276 8373 4.0 Transformers: Revenge of the Fallen
13231 1277 8373 NaN Transformers: Revenge of the Fallen
[13232 rows x 4 columns]
NOTE: на будущее - в подобных вопросах следует всегда приводить в вопросе воспроизводимый пример входных данных (в виде текста / CSV / Python кода или ссылки на файл) и то что вы ожидаете получить на выходе
