Я хочу получить значение из третьего столбца, когда заданы значения двух других столбцов. Я хочу, чтобы значение рейтинга для каждого из фильмов и пользователей формировало матрицу пользовательских фильмов.
Я получил как уникальные идентификаторы фильмов, так и идентификаторы пользователей в двух списках и попытался найти экземпляр, где частота соответствует желаемым значениям
import pandas as pd
import numpy as np
import matplotlib as plot
def main():
df = pd.read_csv(r'/Users/ttbarack/Desktop/ratings.csv')
#print(df)
userIds = []
for id in df['userId']:
if id not in userIds:
userIds.append(id)
#print(userIds)
movieIds = []
for movie in df['movieId']:
if movie not in movieIds:
movieIds.append(movie)
#print(movieIds)
"""PART 1"""
finalList = []
for id in userIds:
newlist = []
for mov in movieIds:
newlist.append(df['rating'].where(df['userId'].values() == id and df['movieId'].values() == mov))
finalList.append(newlist)
print(finalList)
Это ошибка I 'м получаю:
Traceback (most recent call last):
File "/Users/ttbarack/PycharmProjects/Proj1/Project2.py", line 29, in <module>
main()
File "/Users/ttbarack/PycharmProjects/Proj1/Project2.py", line 22, in main
newlist.append(df['rating'].where(df['userId'].values() == id and df['movieId'].values() == mov))
TypeError: 'numpy.ndarray' object is not callable