2015-09-03 2 views
1

Как получить 3 минимальное значение для данных автоматически?Найдите n наименьших значений из данных?

данных:

data <- c(4,3,5,2,2,1,1,5,6,7,8,9) 
[1] 4 3 5 2 2 1 1 5 6 7 8 9 

min() С функцией просто возвращает значение 1, и я хочу, чтобы получить 3 минимальное значение из данных.

min(data) 
[1] 1 

Могу ли я получить это по данным?

[1] 1 1 2 

ответ

3

Просто возьмите первые три значения отсортированного вектора

> sort(data)[1:3] 
[1] 1 1 2 

Другой альтернативой является head функция, которая показывает первые n значения объекта R, так что для трех самых высоких цифр вам нужно head сортированного вектора

> head(sort(data), 3) 
[1] 1 1 2 

... но вы могли бы взять head, возможно, любого другого объекта R.

Если вы заинтересованы в значении, которое отмечает верхний boundry из k процентов низких значений, используйте функцию quantile

> quantile(data, 0.1) 
10% 
1.1 
Смежные вопросы