Извинения, если это вопрос новичка, я новичок в PySpark и Python.
У меня есть этот RDD, который является кортежем, он содержит идентификаторы фильмов в качестве первого элемента (1,2,3,4 ... и т. Д.) И строку двоичных целых чисел в качестве второго элемента.Таким образом, идентификатор фильма - это ключ, а двоичные числа - это значение.
Идентификатор фильма, жанр
1, (1,0,0,1,0,1,1,0,0,0,0,0,0,1)
2, (0,0,1,1,0,1,0,0,0,0,0,0,1,1)
и так далее.
Каждое из двоичных целых чисел указывает, принадлежит ли этот идентификатор фильма определенному жанру или нет.Я хочу создать систему рекомендаций в PySpark, которая будет принимать идентификатор фильма, скажем, 50, и сравнивать его двоичные целые числа (которые указывают, к каким жанрам он принадлежит) с двоичными целыми числами каждого другого идентификатора фильма в СДР.Если два двоичных целых числа в одной и той же позиции = 1, счетчик некоторого вида будет увеличен.Чем больше раз идентификатор фильма имеет 1 в той же позиции, что и 1 идентификатора 50 фильма, тем больше счетчик увеличивается.Счетчик будет храниться в переменной, которая измеряет, насколько сильно каждый идентификатор фильма соответствует жанру идентификатора фильма 50. Поскольку чем больше у каждого идентификатора фильма 1 в том же положении, что и у другого идентификатора фильма, тем более тесно связаны их жанры.и чем сильнее рекомендация.
Затем я хотел бы сформировать новый RDD, который содержит только идентификатор фильма и значение счетчика в качестве моей пары значений ключа, и полностью отбросить двоичные целые числа.
Чтобы мой конечный результат выглядел так:
MovieID, Жанр
1, 5
2, 3
Будетценю помощь!Заранее спасибо!