Выход цикла for состоит из большого числа блоков данных. Я хочу объединить их в один фрейм данных, используя функцию qpcR::cbind.na()
. Например:Создание вектора объектов в r
df1 <- data.frame(a=1:2, b=1:2)
df2 <- data.frame(a=1:5, b=1:5)
df3 <- data.frame(a=1:3, b=1:3)
library(qpcR)
M <- t(qpcR:::cbind.na(df1, df2, df3))
1 2 3 4 5
a 1 2 NA NA NA
b 1 2 NA NA NA
a 1 2 3 4 5
b 1 2 3 4 5
a 1 2 3 NA NA
b 1 2 3 NA NA
Я хочу поставить вывод из моего цикла внутри этой функции автоматически создавать М. Ниже не сделает работу:
n = 3 # number of loop iterationns
B <- c()
for (i in 1:n) {
B[i] <- paste("df[[", i, "]]", sep = "")
}
P <- print(paste(B, collapse=","), quote = F)
M <- t(qpcR:::cbind.na(P))
Ни сделать это:
M <- do.call(t(qpcR:::cbind.na()), list(P))
M <- lapply(P, t(qpcR:::cbind.na()))
Как создать вектор объектов c(df1, df2, df3)
, не прибегая к копированию и вставке P
внутри qpcR::cbind.na()
?
Есть ли какая-либо особая причина, почему вы используете cbind из qpcR в отличие от базового cbind? – Gullydwarf
Мои кадры данных могут отличаться в nrow –
Что такое 'n'? Это не определено выше. – CephBirk