Получить имена col из таблицы freq на основе условия / критерия [duplicate]

Просто выяснили, как:

цвет следует указывать как отдельный вектор и не связан с данными

ggplot(data=d,aes(x=x,y=y))+geom_point(colour=d$col)
5
задан jrara 19 October 2012 в 12:20
поделиться

3 ответа

Вам нужно использовать вычисленное значение дважды, поэтому полезно использовать промежуточную переменную:

x <- with(chickwts, table(feed))
x[x>11]
feed
   casein   linseed   soybean sunflower 
       12        12        14        12 
5
ответ дан James 22 August 2018 в 07:28
поделиться
  • 1
    Ах, да, конечно, спасибо! – jrara 19 October 2012 в 12:26
  • 2
    Или, с несколько повторяющимся кодом: with(chickwts, table(feed)[table(feed) > 11]) – A5C1D2H2I1M1N2O1R2T1 19 October 2012 в 12:28

Вот другой подход, использующий функцию Filter:

Filter(function(x) x > 11, with(chickwts, table(feed)))
feed
   casein   linseed   soybean sunflower 
       12        12        14        12 
6
ответ дан johannes 22 August 2018 в 07:28
поделиться

Другая опция, использующая базовые функции:

subset(data.frame(table(chickwts$feed)), Freq > 11)

Результат:

       Var1 Freq
1    casein   12
3   linseed   12
5   soybean   14
6 sunflower   12

Использование пакета dplyr:

library(dplyr)
chickwts %>% 
  count(feed) %>%
  filter(n > 11) 

Результат :

Source: local data frame [4 x 2]

       feed  n
1    casein 12
2   linseed 12
3   soybean 14
4 sunflower 12
1
ответ дан mpalanco 22 August 2018 в 07:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: