批量从文件合并表格

作者: BeeBee生信 | 来源:发表于2019-12-29 22:33 被阅读0次
以及如何创建空tibble

做生信的经常需要批量合并表格,或者按行或者按列。比如下载了TCGA的数据,里面每个样本是一个文件,第一步我们可能需要先把所以的合并到一个矩阵里。

假设把所有文件都放在一个目录里,首先取得文件列表,用 list.files 函数。

fileList <- list.files(main_dir, pattern = "seg$", full.names = TRUE)

设置 full.names = TRUE 可以获得每个文件路径,不需要手动拼接。第二部写 for 循环读取每个文件,并且使用 bind_rows/cols 进行合并。此时需要一个空表格,然后把所有读取的表格合并到这里。创建空表格方法是。

> empty_tibble <- tibble(var1 = character(), var2 = double(), var3 = logical())
> empty_tibble
# A tibble: 0 x 3
# ... with 3 variables: var1 <chr>, var2 <dbl>, var3 <lgl>

如果懒得创建空表格,可以选择将读取的表格放在一个列表(list)里,然后对列表使用 bind_rows/cols 。示例如下:

fileList <- list.files(main_dir, pattern = "seg$", full.names = TRUE)
segList <- list()
segNum <- length(fileList)
  
# 循环读取文件,并放到列表 segList 
for(i in 1:segNum){
  fileI <- fileList[i]
  segI <- readr::read_tsv(fileI, col_types = cols()) %>% dplyr::mutate(`Chromosome` = as.character(`Chromosome`))
  segList[[i]] <- segI
  }

# 批量合并
segAll <- dplyr::bind_rows(segList)

相关文章

  • 批量从文件合并表格

    以及如何创建空tibble 做生信的经常需要批量合并表格,或者按行或者按列。比如下载了TCGA的数据,里面每个样本...

  • python合并word

    1 场景 合并多个word文件到一个文件中,用于文件的批量打印。 要求: 每个文件合并时,均从从一个新页面开始,文...

  • [R]文件处理

    合并csv 批量修改文件名(ps:修改锁屏壁纸到本地)

  • 批量合并mdb文件

    环境 Arcgis 10.1python 2.7 问题 在制图过程中,一个图幅的地图数据存放在一个mdb数据库中,...

  • 批量合并xml文件

  • 批量文件读取合并

  • 批量合并vcf文件

    合并不同sample的vcf文件,通过bcftools - 组学大讲堂问答社区 (omicsclass.com)[...

  • excel day3学习小结

    【学习内容】 利用Excel和Dos系统下的ren命令对文件夹的文件进行批量改名、批量创建文件夹和拷贝文件名到表格...

  • 2021-10-08-如何批量打印

    如何批量打印pdf word等,比如发票 wps批量打印功能 福昕pdf批量打印功能 先把pdf合并成一个文件,然...

  • 动态仪表盘制作

    一、多个表格合并。 安装软件:power query 1.数据工具栏⇒新建查询⇒从文件夹⇒文件夹路径⇒销售明细表⇒...

网友评论

    本文标题:批量从文件合并表格

    本文链接:https://www.haomeiwen.com/subject/bxvuoctx.html