我试图多次在R中重复行(多久由一列决定)。由于某些原因,我的初始代码有时只能工作。
start <- c(1901, 1902, 1950, 1980, 1980)
end <- c(1905, 1910, 1951, 1999, 1985)
df <- data.frame(start, end)
df$count <- df$end - df$start
我正尝试将行重复开始和结束之间的差异。每年都有一行(+1是必需的,因此开始和结束年份也都有一行)。
有问题的仅在某些情况下有效的代码段如下:
df<- df[rep(rownames(df), df$count +1), ]
有时说“ times”参数无效。
答案 0 :(得分:1)
我认为你想要
df[rep(seq_along(df$count), df$count), ]
这将每次1:length(df$count)
次复制序列df$count
。