我正在使用以下代码:
df1 <- data.frame(
x1 = 'a'
, x2 = 'b'
, y = 0
)
df1 <- do.call("rbind", replicate(10, df1, simplify = FALSE))
for (row in 1:nrow(df1)) {
df1[row,]$y = (row - 1)
}
df1
是否可以通过使用Apply系列函数而不是循环来改善这一点?谢谢!
答案 0 :(得分:1)
该解决方案如何?
df1 <- data.frame(
x1 = 'a'
, x2 = 'b'
, y = 0
)
df1 <- do.call("rbind", replicate(10, df1, simplify = FALSE))
df1$y <- sapply(1:nrow(df1), function(i)as.numeric(row.names(df1))[i]-1)