根据列复制行

时间:2018-07-09 15:26:36

标签: r

我有一个查看22.000个人的数据集。但是,它有一个时间变量,可以告诉我该人何时第一次被观察到,以及最后一次何时被观察到。因此,我增加了一个专栏,告诉我观察到该个人的绝对季度数。现在,我想将此数据集作为一个面板数据集,并按照观察到的四分之一数量来复制每个个体。 我发现了这个问题

Replicate each row of data.frame and specify the number of replications for each row

非常符合我的关注。但要输入代码:

df.expanded <- df[rep(seq(nrow(df)), df$Quartale), 1:2]

“ Quartale”是季度的Var名称 产生此错误: df $ Quatarle错误:“ closure”类型的对象不可子集化

1 个答案:

答案 0 :(得分:0)

在没有示例数据集的情况下评估这一点更加困难,但是我认为您可以为此使用tidyr软件包。

假设您的数据为df,并且您的频率计数为df$Quartale,那么以下方法应该有效:

library(tidyr)
uncount(df, Quartale)