我有一个包含81245个元素的列表。该列表的每个元素也是一个包含3-10个条目的列表。我现在想要一个具有81245 *(子列表中的数字元素)的新数据框。我拥有的当前代码非常慢,因为我使用循环是因为无法管理应用程序的运行。
我使用此代码创建的前两个元素:
x1 <- c("CCAAAAAT","GCAAAAAT","TCAAAAAT")
x2 <- c("CCAAAATT", "GCAAAATT", "TCAAAATT")
x3 <- c("CCAAAAGT", "GCAAAAGT", "TCAAAAGT")
x <- list(x1, x2, x3)
names(x) <- c("ACAAAAAT", "ACAAAATT", "ACAAAAGT")
x
y1 <- c("CAAATCAC","GAAATCAC","TAAATCAC")
y2 <- c("CAAATTAC", "GAAATTAC", "TAAATTAC")
y3 <- c("CAAATCAT", "GAAATCAT", "TAAATCAT")
y <- list(y1, y2, y3)
names(y) <- c("AAAATCAC", "AAAATTAC", "AAAATCAT")
z <- list(x,y)
我有另一个数据框,我从该数据框获得对应行的第一列。 数据框如下所示:
d <-data.frame(matrix(, nrow = length(z), ncol = 0))
d$TF[1] <- "TF1"
d$TF[2] <- "TF1"
最后,我希望数据框看起来像这样:
row <- 1
for (i in 1:length(z)){
TF <- d$TF[[i]]
names <- names(z[[i]])
for (j in 1:length(z[[i]])){
name <- names[[j]]
neigh <- list(z[[i]][[j]])
df$TF[[row]] <- TF
df$Pos[[row]] <- name
df$Neighbour[[row]] <- neigh
row <- row + 1
}
print(i)
}
我现在该如何使用申请?我真的不知道如何在应用中使用其他数据框中的内容。