小编Chi*_*sai的帖子

在数据框中增量计算唯一数据点的有效方法

我试图找到一种更有效的方法来逐步计算数据帧中的唯一数据点.

例如,我编写了以下代码:

df = matrix(c(1,2,3,3,4,5,1,2,4,4))

count = matrix(nrow = nrow(df),ncol=1)

for (i in 1:nrow(df)) {

  count[i,1] = length(which(df[1:i,1] == df[i,1]))

}
Run Code Online (Sandbox Code Playgroud)

代码的目的是逐步计算特定值的每个实例,例如count列将具有以下结果:

1,1,1,2,1,1,2,2,2,3.
Run Code Online (Sandbox Code Playgroud)

到目前为止我编写的代码完成了这项工作,但上面的示例df只包含10个值.我试图执行此功能的实际数据框包含52,118 values,这需要花费大量时间.

有谁知道一种更有效的方法来执行上面的代码?

r count dataframe

7
推荐指数
3
解决办法
208
查看次数

标签 统计

count ×1

dataframe ×1

r ×1