Казалось бы, тривиальная задача - выбрать строки во фрейме данных и затем упорядочить их - ускользает от меня и в то же время сводит меня с ума.Например, у нас есть тривиальный фрейм данных:
country = c("US", "US", "CA", "US")
company = c("Apple", "Google", "RIM", "MS")
vals = c(100, 70, 50, 90)
df <- data.frame(country, company, vals)
Позволяет упорядочить его по значениям
> df[order(vals),]
country company vals
3 CA RIM 50
2 US Google 70
4 US MS 90
1 US Apple 100
Работает отлично.Теперь попробуем выбрать только американские компании и упорядочить там значения.Мы получаем несколько фиктивных результатов.
> df[country=="US", ][order(vals),]
country company vals
4 US MS 90
2 US Google 70
NA <NA> <NA> NA
1 US Apple 100
Позволяет упорядочить, а затем выбрать.Опять же, фиктивный результат
> df[order(vals),][country=="US", ]
country company vals
3 CA RIM 50
2 US Google 70
1 US Apple 100
Как получить фрейм данных, который включает в себя только американские компании, и отсортирован по val?