Кадры данных Python:
Я получил фрейм данных с UserId, MovieId и рейтингом (длина 81116).
У меня также есть серия со средним рейтингом каждого UserId (длина 610).
просмотр серии со средним рейтингом
Как добавить столбец medium_user_rating в фрейм данных, который дает мне средний рейтинг для идентификатора пользователя в этой строке?
Моим ожидаемым результатом будет фрейм данных с новым столбцом, в котором отображаются средние оценки пользователей для пользователя в этой строке.
Предположим, что серия находится в порядке полумесяца UserId, вы можете сделать это с помощью панд с чем-то вроде:
df["average_user_rating"] = df["UserId"].apply(lambda x: s[x-1])
Вы можете протестировать:
s = pd.Series([10,20])
df = pd.DataFrame([[1,5],[1,15],[2,10],[2,30]], columns = ["UserId", "Rating"])
print (s)
print (df)
df["average_user_rating"] = df["UserId"].apply(lambda x: s[x-1])
print(df)
Тест работает, спасибо! Однако при применении к моему коду он дает мне Keyerror: 0. Потому что мой фрейм данных начинается с 0. Как мне это исправить?
попробуйте: лямбда x: s[x]
Уже заставил это работать путем слияния, однако это тоже работает, спасибо!
Не могли бы вы предоставить ожидаемый результат?