Как я могу изменить имя переменной в строке фрейма данных, учитывая частоту этой переменной в фрейме данных? - PullRequest
0 голосов
/ 23 октября 2018

У меня есть переменная (дистрибьютор, формат = фактор) в рамках data.frame фильмов.Я хочу заменить имя всех дистрибьюторов, которые присутствуют менее 10 раз, на «Малые компании».Я могу составить список и сосчитать, используя

aggregate(data.frame(count = distributor), list(value = distributor), length)

, но не могу заменить в своем data.frame.

1 Ответ

0 голосов
/ 23 октября 2018

Вот решение с использованием dplyr.

library(dplyr)

## make some dummy data
df <- tribble(
     ~distributor, ~something,
     "dist1", 89,
     "dist2", 92,
     "dist3", 29,
     "dist1", 89
)


df %>% 
     group_by(distributor) %>% 
     ## this counts the number of occurences of each distributor
     mutate(occurrences = n()) %>% 
     ungroup() %>% 
     ## change the name of the distributor if the occurrences are less than 2
     mutate(distributor = ifelse(occurrences < 2, "small company", distributor))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...