Как рассчитать средний рейтинг для каждого mov ie в R из файла CSV? - PullRequest
1 голос
/ 13 марта 2020

У меня есть файл CSV. CSV-файл содержит столбцы user_id, Movie1, Movie2, Movie3, ..., Movie250. Пожалуйста, обратитесь к изображению файла CSV для справки . Каждый пользователь дал разные оценки фильмам. Также данные содержат много значений NA. Мы не можем опустить значения NA, иначе мы потеряем ценные данные. В то же время NA не позволит рассчитать правильный средний рейтинг.

Мне нужно решить следующие вопросы

  • Какие фильмы имеют максимальное количество просмотров / оценок?
  • Какая средняя оценка для каждого мова ie?
  • Определение 5 лучших фильмов с максимальным рейтингом. Определение 5 лучших фильмов с наименьшей аудиторией.

1 Ответ

0 голосов
/ 13 марта 2020

Мы можем использовать pmax, чтобы получить максимум`

do.call(pmax, c(df1[-1], na.rm = TRUE))

Или найти mov ie с максимальным рейтингом

apply(df1[-1], 1, function(x) names(x)[which.max(x)])

Средний рейтинг для каждого мова ie, мы можем найти с colMeans

colMeans(df1[-1], na.rm = TRUE)

Чтобы получить 5 лучших фильмов, один из вариантов - конвертировать в «длинный» формат

library(dplyr)
library(tidyr)
df1 %>%
    summarise_at(vars(starts_with('Movie')), max, na.rm = TRUE) %>%
    pivot_longer(everything(), values_drop_na = TRUE) %>%
    top_n(5, wt = value)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...