我正在尝试向R中的现有数据框追加一行。数据框代表一个主题,我想用新生成的数据更新它。当我运行它时,数据帧的索引号变得奇怪:
1, 2, 21, 211, 2111, 21111等。
这些不是实际阅读。 如何获得“正常”指数? (1,2,3,4等)。
x <- 10
y <- 463
dat <- data.frame(x,y)
for (i in 1:10) {
dat.sub <- dat[nrow(dat),] # select the last row from 'dat'
dat.sub <- within(dat.sub, { # within that selection update the objects
x <- x+1
y <- y+1
})
dat <- rbind(dat, dat.sub, deparse.level = 2) # attach updated row to the 'dat'
}
dat
dat[3,]
答案 0 :(得分:0)
我认为问题是dat.sub
具有data.frame
类,并且在第二行之后具有相同的索引号。最简单的方法是在不指定任何索引的情况下更改dat.sub
的类。一种方法是:
dat.sub <- c(within(dat.sub, { # within that selection update the objects
x <- x+1
y <- y+1
}))
在c
循环中添加for
,将dat.sub
作为向量。