Функцию 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