2017-03-21 3 views
0

by_group을 사용하여 data.frames를 만들고 있습니다. 이제 행 수는 데이터 집합에 따라 다릅니다. 일부는 다른 행보다 많은 행을가집니다. 하지만 항상 같은 번호가 필요합니다. 같은 수의 행을 추가하여 데이터 집합을 두 배로 만들지 만 빈 값을 사용하는 것이 더 효율적입니까?데이터 프레임에 빈 행을 추가하는 방법은 무엇입니까?

#add empty rows to dataframe 

library(dplyr) 

var1 <- 1:10 
var2 <- c(1,1,1,1,0,1,0,1,1,0) 
var3 <- rep(3, 10) 

dat <- data.frame (var1, var2, var3) 
View(dat) 


dat2 <- data.frame (var1=rep(NA, 10), var2=rep(NA, 10), var3=rep(NA, 10)) 
bind_rows(dat, dat2) 

답변

1

이 그 다음에 원래의 데이터 프레임으로에게 동일한 이름을주고, 원래의 데이터 프레임으로 열 및 행의 수가 동일한 매트릭스를 생성하는 결합에 의해 행의 수를 두배로 할 수 있어야 행.

library(dplyr) 

var1 <- 1:10 
var2 <- c(1,1,1,1,0,1,0,1,1,0) 
var3 <- rep(3, 10) 

dat <- data.frame (var1, var2, var3) 

dat2 <- data.frame(matrix(nrow = nrow(dat), ncol = ncol(dat))) 

names(dat2) <- names(dat) 

bind_rows(dat, dat2) 
0

이것은 당신이 dataframe의 날엔의 행을 두 배로 NA에 추가 행을 할당 할 가정

dat[ NROW(dat)+ NROW(dat),] <- NA 

을 일할 수 있습니다.

관련 문제