美文网首页R语言分析
快读读取并合并多个基因表达文件

快读读取并合并多个基因表达文件

作者: 柳叶刀与小鼠标 | 来源:发表于2020-04-17 19:06 被阅读0次

经常会遇到下载的基因表达数据,是分散在多个数据文件中,而我们为了得到基因表达矩阵,则必须要做的一步就是通过R语言合并这些表达文件。所以这里我们做一下几种不同的方法的对比:

例如这样的多个数据文件:



而单个文件的形式如下所示:


(1)通过sapply函数

setwd('D:\\SCIwork\\F14\\mRNA\\E-MEXP-1270\\E-GEOD-59363.processed.1')
files = list.files()
read_in <-function(x){
  temp = read.table(x,header = T)
  temp = temp[,-1]
  return(temp)
}
system.time(data <- sapply(files,read_in))
dim(data)

(2)通过R循环加merge函数

time1 = Sys.time()
for(i in 1:length(files)){
   if(i == 1) {
    temp = read.table(files[i],header = T)
    name <- substr(files[i], start = 1, stop = 12)
    names(temp)[2] <- name
  } else {
    dt <- read.table(files[i],header = T)
    name <- substr(files[i], start = 1, stop = 12)
    names(dt)[2] <- name
    temp = merge(temp, dt, by='ID_REF')  }}

time2 = Sys.time()
time2 - time1

(3)通过R循环加cbind函数

time_1 = Sys.time()
input_mat = 1
for(i in 1:length(files)){
  temp = read.csv(files[i],header = T)
  temp = temp[,-1]
  input_mat = cbind(input_mat,temp)
}
input_mat = input_mat[,-1]
time_2 = Sys.time()
time = time_1 - time_2
print(time)

通过上述的步骤,我们得到如下的表达矩阵。



(4)总结。
我们发现sapply函数读取的速度最快,循环加merge函数读取的速度最慢,但是循环加merge函数更容易理解,且更适合单个数据文件出现行名不相同时。

相关文章

  • 快读读取并合并多个基因表达文件

    经常会遇到下载的基因表达数据,是分散在多个数据文件中,而我们为了得到基因表达矩阵,则必须要做的一步就是通过R语言合...

  • IO流之合并流

    SequenceInputStream合并流 可将多个读取流合并,通常用于大文件切割后的合并; 文件的分割 文件的合并

  • 文件操作

    一、文件操作-读 二、文件操作-写 三、复制文件 四、合并文件 合并文件-结果 五、readline按行读取文件、...

  • Python批量读取文件(含子文件)

    本文介绍Python如何读取文件夹下所有文件的方法。 主要用于合并多个文件的情况。一、仅读取当前文件夹下的所有文件...

  • 第一篇Rmardown文档

    读取文件,并对重复基因取均值 将矩阵转换为Seurat对象,并对数据进行过滤

  • Python脚本合并多个Excel文件

    本脚本适用于将多个Excel文件的多个sheet中的数据合并到一个sheet中。 一、读取指定目录下的所有文件 二...

  • Python实用-Excel批量合并

    需求:将多个Excel中的内容汇总合并成一个文件 涉及内容: 1.python扩展库:xlrd(读取Excel文件...

  • Hadoop HDFS 的 I/O 流操作

    HDFS 文件上传 HDFS 文件下载 定位文件读取 文件合并

  • Python-137 合并多个Excel文件并根据几个列,删除重

    合并多个Excel文件并根据几个列,删除重复值,保留唯一值: 1.合并文件: 删除重复值并得到非重复值文件,进行输...

  • RNASeq

    htseq提取gene count 合并表达矩阵(合并count) 获得差异表达基因(DEGs) clusterp...

网友评论

    本文标题:快读读取并合并多个基因表达文件

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