2017-01-16 2 views
0
library(dplyr) 

Все в порядке.Как использовать номер столбца для dplyr :: count()?

count(iris, Species) 
# A tibble: 3 × 2 
    Species  n 
     <fctr> <int> 
1  setosa 50 
2 versicolor 50 
3 virginica 50 
> names(iris)[5] 
[1] "Species" 

Это не работает. Зачем? Как использовать номер столбца для dplyr :: count()?

> count(iris, one_of(names(iris)[5])) 
    Error in mutate_impl(.data, dots) : 
    wrong result size (0), expected 150 or 1 
In addition: Warning message: 
In one_of(names(list(Sepal.Length = c(5.1, 4.9, 4.7, 4.6, 5, 5.4, : 
    Unknown variables: `Species` 
+3

попробуйте использовать функцию 'count_'. Например: count_ (радуга, имена (радужная оболочка) [2]) – Dave2e

ответ

0

count(iris, iris[,5]) должен производить тот же результат с вашим. Не уверен относительно one_of, но если вы удалите это и добавьте , в [5], он должен произвести результат без ошибок.