Как использовать функцию tabulate() в R для подсчета вхождений целых чисел


Функцию tabulate() в R можно использовать для подсчета вхождений целочисленных значений в вектор.

Эта функция использует следующий базовый синтаксис:

tabulate(bin, nbins=max(1, bin, na.rm=TRUE))

куда:

  • bin : Имя вектора
  • nbins : количество используемых бинов.

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

Пример 1. Подсчет вхождений целых чисел в векторе

В следующем коде показано, как использовать функцию tabulate() для подсчета вхождений целых чисел в заданный вектор:

#create vector of data values
data <- c(1, 1, 1, 2, 3, 3, 3, 4, 7, 8)

#count occurrences of integers in vector
tabulate(data)

[1] 3 1 3 1 0 0 1 1

По умолчанию функция tabulate() использует 1 в качестве минимального целочисленного значения и отображает вхождения каждого последующего целого числа в векторе.

Например:

  • Целое число 1 встречается в векторе 3 раза.
  • Целое число 2 встречается в векторе 1 раз.
  • Целое число 3 встречается в векторе 3 раза.
  • Целое число 4 встречается в векторе 1 раз.
  • Целое число 5 встречается в векторе 0 раз.

И так далее.

Обратите внимание, что если вы используете аргумент nbins , вы просто ограничиваете количество целых чисел, которые подсчитывает функция tabulate() :

#count occurrences of integers but limit output to 5
tabulate(data, nbins= 5 )

[1] 3 1 3 1 0

Пример 2. Подсчет вхождений целых чисел в векторе с десятичными знаками

Если мы используем функцию tabulate() с вектором, содержащим десятичные дроби, функция просто сообщит нам, как часто встречается каждое целочисленное значение:

#create vector of data values with decimals
data <- c(1.2, 1.4, 1.7, 2, 3.1, 3.5)

#count occurrences of integers
tabulate(data)

[1] 3 1 2

Из вывода мы видим:

  • Целочисленное значение 1 встречается 3 раза.
  • Целочисленное значение 2 встречается 1 раз.
  • Целочисленное значение 3 встречается 2 раза.

Пример 3. Подсчет вхождений целых чисел в векторе с отрицательными значениями

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

#create vector with some negative values and zeros
data <- c(-5, -5, -2, 0, 1, 1, 2, 4)

#count occurrences of integers
tabulate(data)

[1] 2 1 0 1

Из вывода мы видим:

  • Целочисленное значение 1 встречается 2 раза.
  • Целочисленное значение 2 встречается 1 раз.
  • Целочисленное значение 3 встречается 0 раз.
  • Целочисленное значение 4 встречается 1 раз.

Альтернатива табулированию: функция table()

Если вы хотите подсчитать появление каждого значения в векторе, лучше использовать функцию table() :

#create vector with a variety of numbers
data <- c(-5, -5, -2, 0, 1, 1, 2.5, 4)

#count occurrences of each unique value in vector
table(data)

data
 -5 -2 0 1 2.5 4 
 2 1 1 2 1 1 

Из вывода мы видим:

  • Значение -5 встречается 2 раза.
  • Значение -2 встречается 1 раз.
  • Значение 0 встречается 1 раз.
  • Значение 1 встречается 2 раза.
  • Значение 2,5 встречалось 1 раз.
  • Значение 4 встречается 1 раз.

Обратите внимание, что функция table() подсчитывает появление каждого значения, а не только целочисленных значений.

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

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

Как использовать функцию summary() в R
Как использовать функцию replicate() в R
Как использовать функцию match() в R

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