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

#r #vector #statistics

#r #вектор #Статистика

Вопрос:

Учитывая вектор длины n, в котором существует m уникальных элементов, я хочу подсчитать частоту каждого m.

Я смог сделать это с помощью dplyr. Моя проблема в том, что вывод выглядит недостаточно простым.

 vector <- (5, 3, 3, 2, 5, 1, 4, 1, 5, 5)
  

Я бы хотел, чтобы на выходе был просто вектор с совокупной суммой каждого уникального элемента без фактического указания элемента. Для приведенного выше примера это должно быть просто: (2, 1, 2, 1, 4)

Комментарии:

1. просто table(vector) ?

2. или tabulate(vector) в зависимости от того, что именно вы хотите.

3. I want to count frequency of each m , table(m) делает это. I would like the output to just be a vector with the cumulative sum of each unique element without actually specifying the element , я не знаю, что это такое?

4. проблема с использованием table заключается в том, что мне также возвращается столбец с уникальными значениями (1, 2, 3, 4, 5). Это то, что я пытаюсь скрыть. Извините, что не указал!

5. * vector <- c(5, 3, 3, 2, 5, 1, 4, 1, 5, 5) для других. Ответ Г. Гротендика должен быть тем, что вы ищете.

Ответ №1:

Мы можем использовать count

 library(tidyverse)
count(tibble(v1 = vector), v1) %>%
   pull(n)