我有一个data.frame df,我希望这里的每一行df都是重复的lengthTime次数,并且添加了一个新的列,从1开始lengthTime计算每行df.
我知道,这听起来很复杂,但我基本上要为申请expand.grid到df.这是一个丑陋的解决方法,我觉得有一个更简单的解决方案(甚至可能是一个base-R函数?):
df <- data.frame(ID = rep(letters[1:3], each=3),
CatA = rep(1:3, times = 3),
CatB = letters[1:9])
lengthTime <- 3
nrRow <- nrow(df)
intDF <- df
for (i in 1:(lengthTime - 1)) {
df <- rbind(df, intDF)
}
df$Time <- rep(1:lengthTime, each=nrRow)
Run Code Online (Sandbox Code Playgroud)
我以为我可以使用expand.grid(df, 1:lengthTime),但这不起作用.outer也没带任何运气.那么有谁知道一个好的解决方案?
r ×1