R: Как изменить количество интервалов в гистограмме

R: Как изменить количество интервалов в гистограмме

Когда вы создаете гистограмму в R, формула, известная как правило Стерджеса, используется для определения оптимального количества ячеек для использования.

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

hist(data, breaks = seq(min(data), max(data), length. out = 7 ))

Обратите внимание, что количество бинов, используемых в гистограмме, будет на единицу меньше, чем число, указанное в аргументе length.out .

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

Пример 1: создание базовой гистограммы

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

#define vector of data
data <- c(1, 2, 2, 3, 4, 4, 4, 5, 5, 6, 7, 10, 11, 13, 16, 16, 16)

#create histogram of data
hist(data, col = 'lightblue') 

Используя правило Стерджеса, R решил использовать 8 бинов в гистограмме.

Пример 2. Укажите количество бинов для использования в гистограмме

В следующем коде показано, как создать гистограмму для того же вектора данных и использовать ровно 6 бинов:

#define vector of data
data <- c(1, 2, 2, 3, 4, 4, 4, 5, 5, 6, 7, 10, 11, 13, 16, 16, 16)

#create histogram with 6 bins
hist(data, col = 'lightblue', breaks = seq(min(data), max(data), length. out = 7 )) 

Предостережения по выбору определенного количества ячеек

Количество бинов, используемых в гистограмме, оказывает огромное влияние на то, как мы интерпретируем набор данных.

Если мы используем слишком мало бинов, истинный базовый шаблон в данных может быть скрыт:

#define vector of data
data <- c(1, 2, 2, 3, 4, 4, 4, 5, 5, 6, 7, 10, 11, 13, 16, 16, 16)

#create histogram with 3 bins
hist(data, col = 'lightblue', breaks = seq(min(data), max(data), length. out = 4 )) 

И наоборот, если мы используем слишком много бинов, мы можем просто визуализировать шум в наборе данных:

#define vector of data
data <- c(1, 2, 2, 3, 4, 4, 4, 5, 5, 6, 7, 10, 11, 13, 16, 16, 16)

#create histogram with 15 bins
hist(data, col = 'lightblue', breaks = seq(min(data), max(data), length. out = 16 )) 

В общем, правило Стерджеса по умолчанию, используемое в R, имеет тенденцию создавать гистограммы с оптимальным количеством интервалов.

Не стесняйтесь использовать приведенный здесь код для создания гистограммы с точным количеством интервалов, но будьте осторожны, чтобы не выбрать слишком много или слишком мало интервалов.

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

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

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

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