复制R中的数据帧行

复制R中的数据帧行,r,dataframe,R,Dataframe,我有一个数据帧: df <- data.frame(id = c('1','2','3'), b = c('b1', '', 'b3'), c = c('c1', 'c2', ''), d = c('d1', '', '')) id b c d 1 b1 c1 d1 2 c2 3 b3 提前感谢您的帮助使用一些矩阵索引来获取“案例,然后从df的第一行选择适当的列: idx <- which(df[-1]=="", arr.ind=TRUE) df[-1

我有一个数据帧:

df <- data.frame(id = c('1','2','3'), b = c('b1', '', 'b3'), c = c('c1', 'c2', ''), d = c('d1', '', ''))

id b   c   d
1  b1  c1  d1
2      c2 
3  b3

提前感谢您的帮助

使用一些矩阵索引来获取
案例,然后从
df
的第一行选择适当的列:

idx <- which(df[-1]=="", arr.ind=TRUE)
df[-1][idx] <- unlist(df[1,-1][idx[,"col"]])

#  id  b  c  d
#1  1 b1 c1 d1
#2  2 b1 c2 d1
#3  3 b3 c1 d1

idx-Hi。谢谢你的回答。工作完美。我有一个后续问题。我将id为-1的行存储在不同的数据帧中(
df2
)。使用
”或NAs
复制这些列时,我可以做些什么?@digvijaysawand-如果我理解正确,您应该能够将
df[1,-1]
替换为
df2
idx <- which(df[-1]=="", arr.ind=TRUE)
df[-1][idx] <- unlist(df[1,-1][idx[,"col"]])

#  id  b  c  d
#1  1 b1 c1 d1
#2  2 b1 c2 d1
#3  3 b3 c1 d1