R将新行追加到每一行
我想在每行中插入一行,例如,原始数据帧,如下所示:R将新行追加到每一行,r,R,我想在每行中插入一行,例如,原始数据帧,如下所示: ID x y z value 1 1 1 1 2 2 4 7 9 3 3 9 2 5 8 4 8 6 1 4 5 7 3 5 9 ID x y z value 1 1 1 1 2 3 5 NA NA NA 2 4 7 9 3 8 1 NA NA NA 3 9 2 5 8 6 3 NA NA NA 4 8 6 1 4 9 7 NA NA NA 5 7 3 5 9 10 8 NA NA NA 插入行后,数据框应如下所
ID x y z value
1 1 1 1 2
2 4 7 9 3
3 9 2 5 8
4 8 6 1 4
5 7 3 5 9
ID x y z value
1 1 1 1 2
3 5 NA NA NA
2 4 7 9 3
8 1 NA NA NA
3 9 2 5 8
6 3 NA NA NA
4 8 6 1 4
9 7 NA NA NA
5 7 3 5 9
10 8 NA NA NA
插入行后,数据框应如下所示:
ID x y z value
1 1 1 1 2
2 4 7 9 3
3 9 2 5 8
4 8 6 1 4
5 7 3 5 9
ID x y z value
1 1 1 1 2
3 5 NA NA NA
2 4 7 9 3
8 1 NA NA NA
3 9 2 5 8
6 3 NA NA NA
4 8 6 1 4
9 7 NA NA NA
5 7 3 5 9
10 8 NA NA NA
我有两个选项,第一个是直接向每一行添加新行,第二个是向dataframe添加两列,然后将一行拆分为两行。
那么如何应对这种情况呢?提前谢谢你 我无法理解您从何处获取要插入数据框的数据。所以,我做了一个虚拟集合data2。请参考下面的代码,应该可以满足您的需要
data <- read.table(text= "ID x y z value
1 1 1 1 2
2 4 7 9 3
3 9 2 5 8
4 8 6 1 4
5 7 3 5 9", header=T)
data2 <- data.frame(matrix(rnorm(2*nrow(data)),nrow(data)))
names(data2) <- names(data)[1:ncol(data2)]
combined <- plyr::rbind.fill(data,data2)
n <- nrow(data)
combined[kronecker(1:n, c(0, n), "+"),]
A.为什么,b。x值从何而来?嗨,请将新行的ID和x值设置为任何整数。您还没有回答a,所以我很确定我正在启用一个真正令人讨厌的操作过程,但现在您可以看到:do.callrbind,applydf,1,functionx{data.framerbindx,crpois2,5,repNA,3}或者采取不同的策略,mergedf,data.frameID=1:5,x=rpois5,5,y=NA,all=TRUEHi,实际上我的项目将每两行作为参数读取,所以我想在每一行追加一行。