Как указать разрывы гистограммы в R (с примерами)

Как указать разрывы гистограммы в R (с примерами)

По умолчанию функция hist() в R использует правило Стерджеса, чтобы определить, сколько бинов использовать в гистограмме.

Правило Стерджеса использует следующую формулу для определения оптимального количества интервалов для использования в гистограмме:

Оптимальные интервалы = ⌈log 2 n + 1⌉

куда:

  • n: общее количество наблюдений в наборе данных.
  • ⌈ ⌉: Символы, означающие «потолок» — т. е. округлить ответ до ближайшего целого числа.

Например, если в наборе данных 31 наблюдение, правило Стерджа будет использовать следующую формулу для определения оптимального количества бинов для использования в гистограмме:

Оптимальные интервалы = ⌈log 2 (31) + 1⌉ = ⌈4,954 + 1⌉ = ⌈5,954⌉ = 6 .

Согласно правилу Стерджеса, мы должны использовать 6 бинов на гистограмме для визуализации этого набора данных.

Если вы используете функцию hist() в R, правило Стерджеса будет использоваться для автоматического выбора количества интервалов для отображения на гистограмме.

hist(data)

Даже если вы используете аргумент breaks , чтобы указать другое количество используемых бинов, R будет использовать его только как «предложение» о том, сколько бинов использовать.

hist(data, breaks= 7 )

Однако вы можете использовать следующий код, чтобы заставить R использовать определенное количество интервалов в гистограмме:

#create histogram with 7 bins
hist(data, breaks = seq(min(data), max(data), length. out = 8 ))

Примечание.Вы должны использовать длину n+1 для length.out, где n — желаемое количество бинов.

В следующем примере показано, как использовать этот код на практике.

Пример: укажите разрывы гистограммы в R

Предположим, у нас есть следующий набор данных в R с 16 значениями:

#create vector of 16 values
data <- c(2, 3, 3, 3, 4, 4, 5, 6, 8, 10, 12, 14, 15, 18, 20, 21)

Если мы используем функцию hist() , R создаст следующую гистограмму с 5 интервалами:

#create histogram
hist(data)

Примечание.R использовал правило Стерджеса, чтобы определить, что 5 бинов являются оптимальным количеством бинов для визуализации набора данных с 16 наблюдениями.

Если мы попытаемся использовать аргумент breaks , чтобы указать 7 интервалов для использования в гистограмме, R воспримет это только как «предложение» и вместо этого решит использовать 10 интервалов:

#attempt to create histogram with 7 bins
hist(data, breaks= 7 ) 

Однако мы можем использовать следующий код, чтобы заставить R использовать 7 бинов в гистограмме:

#create histogram with 7 bins
hist(data, breaks = seq(min(data), max(data), length. out = 8 ))

Обратите внимание, что результатом является гистограмма с 7 равноотстоящими интервалами.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в R:

Как создать гистограмму относительной частоты в R
Как построить несколько гистограмм в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.