两个单独列中的值数据和计数数据 - 我想获取一列频率数据

Value data and Count data in two separate columns - I'd like to get one column of Frequency data

我有值和计数形式的观测值(频率信息)

值<- c(0,1,3,6,7,8) 计数 <-c (3,2,1,1,1,3)

我想要一列中的数据 ("value"),其中我有 3 个 0,2 个 1,1 个 3 等。 我希望我所有的原始值都在一列中。像这样:

freq_of_values <- c(0, 0, 0, 1, 1, 3, 6, 7, 8, 8, 8)

value<- c(0,1,3,6,7,8)
count <- c(3,2,1,1,1,3)

我已经搜索并尝试了 (dplyr) 合并和排序功能,但没有得到我想要的。也许我在搜索时使用的术语不正确。感谢任何帮助!!

我们可以使用 reptimes 作为 'count' 向量

rep(value, times = count)
#[1] 0 0 0 1 1 3 6 7 8 8 8

如果初始数据为data.frame

 df1 <- data.frame(value, count)

创建一个新的data.frame
df2 <- data.frame(freq_of_values = rep(df1$value, df1$count))

或使用 tidyr

中的 uncount
library(tidyr)
library(dplyr)
uncount(df1, count) %>%
   rename(freq_of_values = value) %>%
   as_tibble