R mutate (".data" отсутствует, по умолчанию нет) - PullRequest
0 голосов
/ 24 декабря 2018

Я написал эту функцию в R

match <- followers %>%
  +   mutate(x= ifelse(followers$screen_name %in% xnames$screen_name, 1, 0),y= ifelse(followers$screen_name %in% ynames$screen_name,   1, 0))            

, но я получаю эту ошибку, и я не могу ее решить

Error in mutate_(.data, .dots = compat_as_lazy_dots(...)) : 
  argument ".data" is missing, with no default

здесь больше информации о данных

  > str(xnames)
    'data.frame':   5000 obs. of  1 variable:
     $ screen_name: chr  "27khT5dIkDpu4hl" "M8ibrahem" "IBRAHEM87711" "ryooon85" ...
    > str(ynames)
    'data.frame':   5000 obs. of  1 variable:
     $ screen_name: chr  "rosebiose" "S7q0QTdIk8SLcNm" "DleGQquoaUGxQzn" "RxafjLONGO6UgS8" ...
str(followers)
'data.frame':   9925 obs. of  1 variable:
 $ screen_name: chr  "27khT5dIkDpu4hl" "M8ibrahem" "IBRAHEM87711" "ryooon85" ...

вот пример данных

    > head(xnames)
          screen_name
    1 27khT5dIkDpu4hl
    2       M8ibrahem
    3    IBRAHEM87711
    4        ryooon85
    5        sqrr1233
    6          3ram16

> head(ynames)
      screen_name
1       rosebiose
2 S7q0QTdIk8SLcNm
3 DleGQquoaUGxQzn
4 RxafjLONGO6UgS8
5 YlirzqF0N9EfeOY
6      AL_3GEEEED

> head(followers)
      screen_name
1 27khT5dIkDpu4hl
2       M8ibrahem
3    IBRAHEM87711
4        ryooon85
5        sqrr1233
6          3ram16

Я также пытался преобразовать тип столбцов в фактор, но все равно выдает ту же ошибку

спасибо

1 Ответ

0 голосов
/ 24 декабря 2018

Здесь решение с поддельными данными, я советую вам также использовать dplyr::if_else вместо ifelse, это безопаснее:

library(dplyr)
followers <- data.frame(screen_name = c(' 27khT5dIkDpu4hl','M8ibrahem','IBRAHEM87711','ryooon85','sqrr1233','3ram16'))
xnames <- data.frame(screen_name = c('27khT5dIkDpu4hl','IBRAHEM87711','ryooon85','sqrr1233','3ram16'))
ynames <- data.frame(screen_name = c('rosebiose','S7q0QTdIk8SLcNm','DleGQquoaUGxQzn','RxafjLONGO6UgS8','YlirzqF0N9EfeOY','AL_3GEEEED'))


followers %>% mutate(x = if_else(screen_name %in% xnames$screen_name,1,0),
                     y = if_else(screen_name %in% ynames$screen_name,1,0))
       screen_name x y
1  27khT5dIkDpu4hl 0 0
2        M8ibrahem 0 0
3     IBRAHEM87711 1 0
4         ryooon85 1 0
5         sqrr1233 1 0
6           3ram16 1 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...