2015-01-15 3 views
0

Я хочу создать таблицу из 10 наиболее распространенных причин, по которым люди прекращают курс. Около 2000 ответов на мой опрос прекращается, а набор данных озаглавлен «Прекращено». Для описания «Разума» существует 35 категорий. В настоящее время я использую приведенный ниже код, но это дает мне частоту для всех 35 прекращающих кодов.Максимальное количество для 10 верхних частот в таблице данных

Discontinued[,list(Count= .N), by = reason][order(-Count)] 
+3

Просьба воспроизводимый пример. Каковы другие столбцы? Похоже, что причина не может быть правой переменной группировки. –

+2

Так просто 'Discontinued [, list (Count = .N), by = reason] [order (-Count)] [1:10]'? – MrFlick

+0

отсортировано. [1:10] ответила бы. новый для этого пакета. – monkeyshines

ответ

1

data.table способ сортировки является setorder. Таким образом, вместо

Discontinued[,list(Count= .N), by = reason][order(-Count)][1:10] 

он должен быть быстрее использовать

setorder(Discontinued[, list(Count= .N), by = reason], -Count)[1L:10L] 
+0

при использовании 'dt [order()]' он должен автоматически оптимизировать его для более быстрых решений data.table. – jangorecki

Смежные вопросы