如何继续向 R 中的数据框添加行

问题描述 投票:0回答:0

我正在循环遍历我数据集中存在的所有基因并创建一个矩阵。 矩阵列为 49,行将取决于 rsid。 我想创建一个存储所有基因信息的大矩阵。 我正在尝试在 R 中使用 rbind 选项,但它只给了我最后一个基因值。

for(k in 1:3) {  ##for gene
     z <- 0
     for(i in 1:49){  #i=tissue                                                      
         y <- list.dfs[[i]]$gene %in% genes_union[k] ##y stores the gene
         x <- list.dfs[[i]][y,]$rsid ## store the snp for the gene for a particular tissue
         z <<- unique(append(z,x))}  ##get only unique SNP for that gene and remove duplicates(SNP can be shared among tissues and will create duplicate value)
     z <- z[2:length(z)]
     models_df_gene1 <- matrix(,nrow=length(z),ncol=49)
 colnames(models_df_gene1) <- col_names
 rownames(models_df_gene1) <- z
 for(t in 1:49){
     u <- which(list.dfs[[t]]$gene %in% genes_union[k])
     a <- list.dfs[[t]][u,]
     for(j in 1:length(z)){
         b <- which(z[1:length(z)] %in% a$rsid[j])
         models_df_gene1[b,t] <- a$weight[j]
         models_df_gene1 <- replace(models_df_gene1, is.na(models_df_gene1), 0)}
}
file_chr22 <- rbind(models_df_gene1)
#write.table(models_df_gene1,file=paste0(genes_union[k],".txt"),sep="\t",row.names=T,col.names=T)
}

有谁知道当列长相同时如何继续添加到矩阵上?

r dataframe append rstudio rbind
© www.soinside.com 2019 - 2024. All rights reserved.