首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

R语言基因数据分析可能会用到的data.table函数整理

包括两个方面,一方面是写的快,代码简洁,只要一行命令就可以完成诸多任务,另一方面是处理快,内部处理的步骤进行了程序上的优化,使用多线程,甚至很多函数是使用C写的,大大加快数据运行速度。...因此,在对大数据处理上,使用data.table无疑具有极高的效率。这里主要介绍基因数据分析中可能会用到的函数。...TRUE返回data.table,FALSE返回data.frame 可见1.8GB的数据读入94秒,读入文件速度非常快 fwrite 对数据框数据进行处理后,需要保存到文件,我们就可以使用...正则表达式集; cols 要匹配的字符矢量; 例子讲melt函数的时候已有 rbindlist 类似于data.frame的rbind,不过比rbind的速度更快,并且总是返回...和fastmatch包的fmatch相比,各有优缺点。fmatch第一次匹配较慢,第二次匹配快,chmatch匹配虽然没有fmatch第二次匹配快,但是首次匹配也有较快的速度

3.3K10
您找到你想要的搜索结果了吗?
是的
没有找到

R语言数据分析利器data.table包 —— 数据框结构处理精讲

包括两个方面,一方面是写的快,代码简洁,只要一行命令就可以完成诸多任务,另一方面是处理快,内部处理的步骤进行了程序上的优化,使用多线程,甚至很多函数是使用C写的,大大加快数据运行速度。...可见它是属于data.tabledata.frame类,并且取列,维数,都可以采用data.frame的方法。...,TRUE返回data.table,FALSE返回data.frame 实例如下,1.8GB的数据读入94秒,可见读入文件速度非常快, fwrite fwrite(x, file = "", append...showProgress,工作台显示进程,当用file==""时,自动忽略此参数 verbose,是否交互和报告时间 data.table数据框结构处理语法 data.table[ i , j ,...(x)] #和上面一样 DT[x=="a"] # 和上面一样,和使用on一样,都是使用二分查找法,所以它们速度比用data.frame的快。

5.6K20

手把手教你用R语言读取CSV文件

▲表6-1 读取大文本文件的函数及其默认参数 大文件使用read.table函数读取到内存比较慢,幸运的是有解决方案。...读取大CSV文件和其他文本文件的两个主流的函数是read_delim和fread,前者readr包中由Hadley Wickham实现,后者data.table包中由Matt Dowle实现。...read_delim函数不仅仅读取速度比read.table函数快,而且不需要设置stringAsFactors参数为FALSE。...注意,数据读取为tbl_df对象,它是tbl的扩展,也是data.frame的扩展。tbl是data.frame的特殊类型,它在dplyr包中定义。每列的数据类型显示列名的下面,这是个很好的功能。...该函数读取速度比read.table函数快,结果为data.table对象。data.table对象是data.frame的扩展,其是data.frame的优化。

21.4K21

RNA-seq入门实战(三):R里面整理表达量counts矩阵

countsTPM矩阵: 读取counts.txt构建counts矩阵;样品的重命名和分组;countsTPM转换;基因ID转换;初步过滤低表达基因保存counts数据 从salmon输出文件中获取...countsTPM矩阵: 用tximport包读取quant.sf构建countsTPM矩阵;样品的重命名和分组;初步过滤低表达基因保存counts数据 承接上节RNA-seq入门实战(二):上游数据的比对计数...基因ID转换 若上游中采用的是UCSC的基因和gtf注释文件,则表达矩阵行名就是我们常见的gene symbol基因名;若上游采用的是gencode或ensembl基因和gtf注释文件,那么我们就需要将基因表达矩阵行名的...初步过滤低表达基因保存counts数据 我们的数据中会有很多低表达甚至不表达的基因,在后续分析中可能会影响数据的分析判断,因此需要对低表达的基因进行筛除处理。筛选标准不唯一,依自己数据情况而定。...(row.names=colnames(counts), group_list=group_list) #### 初步过滤低表达基因 #### #筛选出至少重复样本数量内的表达量

15.5K45

将基因数据分类并写出文件,python,awk,R data.table速度PK

由于基因数据过大,想进一步用R语言处理担心系统内存不够,因此想着将文件按染色体拆分,发现python,awk,R 语言都能够非常简单快捷的实现,那么速度是否有差距呢,因此跑几个50G的大文件之前...,先用了244MB的数据对各个脚本进行测试,并且将其速度进行对比。...最后用R语言data.table包进行处理,data.tabledata.frame的高级版,速度上作了很大的改进,但是和awk和python相比,具有优势吗? 1 #!...总结 虽然都是逐行处理,但由上述结果猜测awk内部运行并没有python快,但awk书写一行代码搞定,书写速度快,至于python比data.table慢,猜测原因是R data.table用C语言写...,并且运用多线程写出,hash读取,传地址各种方式优化速度的结果。

1.1K40

经验总结 | 最有效的R学习路径(一)

——Hadley Wickham ” 小伙伴们肯定有这样的经历:写论文的过程中,绝大部分的时间都用来清理数据,例如剔除异常值、表表之间的匹配连接、数据分类汇总等,而最后用来跑回归的时间可能就只有十几秒左右...首先大猫告诉大家:不要使用内置的data.frame,不要使用内置的data.frame,不要使用内置的data.frame!重要的事情说三遍!...因为内置的data.frame不仅语法很冗长,而且速度非常慢(有兴趣的小朋友请搜索“the copy on modify mechanisim of R)。...上的讨论,data.table语法灵活性和performance上面更深一筹,dplyr则在易学性和SQL语句转换方面有独到之处。...大猫自己比较两者之后,选择了data.table

1K20

R︱高效数据操作——data.table包(实战心得、dplyr对比、key灵活用法、数据合并)

会显得很繁琐,相比来说,让我多等1分钟的data.frame结构,我还是愿意等的。...R语言︱数据集分组、筛选(plit – apply – combine模式、dplyr、data.table) 同时,data.tabledata.frame数据呈现方面,还有有所不同的。...注意: data.table之后,一些常规的data.frame的操作就失效了,譬如: data[,-1]、data[,1]这样的操作就不是这么用的了。...筛选列变量的数据,也可以%in%集合运算联用(集合运算见博客:R语言︱集合运算)。...data.table行操作跟data.frame很像,可以data[1,]就可以获得第一行的数据,同时也可以用,data[1]来获得行信息,这个是data.table特有的。

7.7K43

R语言学习笔记之——数据处理神器data.table

class(mydata) [1] "data.table" "data.frame" ?...使用fread函数导入之后便会自动转化为data.table对象,这是data.table所特有的高性能数据对象,同时继承了data.frame传统数据框类,也意味着他能囊括很多数据框的方法和函数调用。...data.table列索引 列索引数据框相比操作体验差异比较大,data.table的列索引摒弃了data.frame时代的向量化参数,而使用list参数进行列索引。...当聚合函数data.table中的分组参数一起使用时,data.table的真正威力才逐渐显露。 mydata[,....本篇仅对data.table的基础常用函数做一个整理,如果想要学习期更为灵活高阶的用法,还请异步官方文档。 左手用R右手Python系列——数据塑型长宽转换

3.6K80

懒癌必备-dplyr和data.table让你的数据分析事半功倍

我工作当中,或者是公认的最常用的方法,无非就是下面几种: ① 数据过滤 ② 数据选择 ③ 数据排序 ④ 数据转换 ⑤ 数据分组 ⑥ 数据抽样 大家做数据分析,会发现90%的时间都在这几个打交道...如果你的日常处理数据量非常大,有上亿行的数据处理需求,这个时候你完全可以放心大胆的使用data.table 这个包异常的高效,速度非常的快!!...data.table这个包的语法用起来稍微有点奇怪(哈哈~), 但是速度亲妈快啊!!小伙伴们一定不能错过的绝世好包! 铺垫了这么多,来来来,数据分析神器data.table走起来!!...DT<-data.table() DT[i,j,by] take DT,subset rows using i,then calculate j grouped by by 我们横轴上过滤数据...使用i DT[3:5] #选取3到5行的数据 class(DT) [1] "data.table" "data.frame" DT[v1=="A"] #基于条件的选择 DT[v1 %in% c("A",

2.4K70

深入对比数据科学工具箱:Python和R之争

数据流编程对比 接着,我们将通过下面几个方面,对Python和R的数据流编程做出一个详细的对比。...对于数据传输解析,我们首推的格式是csv,因为一方面,csv格式的读写解析都可以通过 Python 和 R 的原生函数完成,不需要再安装其他包。...数据传输解析 Python R CSV(原生) csv read.csv CSV(优化) pandas.read_csv("nba_2013.csv") data.table::fread("nba_...下面是R中的 data.table、dplyr Python 中的 pandas 的数据操作性能对比: image.png 我曾经用data.table和pandas分别读取过一个600万行的IOT...数据,反复10次,data.table以平均10s的成绩胜过了pandas平均15s的成绩,所以IO上我倾向于选择使用data.table来处理大数据,然后喂给spark和hadoop进行进一步的分布式处理

1K40

Matt Dowle 演讲节选(一)

M att Dowle data.table “ Matt:“老子在给世界上最大的金融机构打工,你竟然说 BUG 修复要等6个月?!” S-PLUS 客服:“为什么你不试试 R 呢?”...实战中,data.table 获得了 Kaggle 排名第一的 Gilberto 的青睐,他的原话很直接—— data.table is COOL!!!...在这段21分33秒的演讲中,Matt 回顾了自己伦敦大投行的工作经历(雷曼兄弟以及所罗门兄弟)、自己 R 的偶遇以及开发 data.table 的动机。...Matt:所以说 data.frame 就像是 SQL 里面的 datatable 一样咯? Pat:Yes! Matt:棒极了。...也是在那时,三年前的那个想法再次冒了出来:我能够让下面的代码 R 中运行吗? sum(DF[2:3, "B"]) (未完待续) 下 期预告 下期内容看大猫的论文进展速度 Orz…… ?

63520

【测评】提高R运行效率的若干方法

【画图】SARS-CoV-2病毒结合ACE2基因表达正相关的LncRNA有哪些?...唯一需要改进的地方就是速度太慢了,因为做相关性分析,要计算6万多次相关系数,居然要花了547秒,接近10分钟的时候才计算完毕,时间就是金钱,有没有办法提高R程序的运行效率呢?...为了单纯验证wCorr和cor.test的执行效率,我单独把两个函数拿出来只做计算用,因为这样不涉及data.frame操作所耗时间,可比性更强一点,代码如下,首先是R base里cor.test函数的运行结果...: 这是用wCorr的结果: 可以看到wCorr包的函数确实比cor.test快了那么20多秒,说明计算相关系数方面,可能并不是整个函数耗时最多的部分。...100秒左右的速度,还是不尽如人意。

1.1K10

转录测序结果分析

其他来源的转录数据和TCGA的转录数据的差别?整理输入数据的过程不同,差异分析无差别。数据下载方式不同,是否是count矩阵,行名需要是基因名,分组信息如何获取。...GEO数据库中GSE150392GEO官网网页下载数据:表达数据 - counts.csv.gz文件(点击ftp);临床信息表格:series matrix.txt.gz获取表达矩阵 方法一...save(clinical,file = f2)}load(f2)4.表达矩阵行名ID转换library(tinyarray)exp = trans_exp_new(exp)exp[1:4,1:4]5.基因过滤需要过滤一下那些很多样本里表达量都为...过滤标准不唯一。...查看过滤之前基因数量:nrow(exp)常用过滤标准1:仅去除在所有样本里表达量都为零的基因exp1 = exp[rowSums(exp)>0,]nrow(exp1)常用过滤标准2(推荐):仅保留在一半以上样本里表达的基因

12020

R中6种读入表格数据的方式哪个最快?结果出人意料!

生成测试数据 set.seed(123) df <- data.frame(replicate(10, sample(0:2000, 15 * 10^5, rep = TRUE)),...path_rdata) saveRDS(df, path_rds) 计算下各个文件的大小; RDS和RData占的空间最小,不到30M feather文件占的空间最大,185M CSV文件占了179M,feather...load和readRDS没有表现出速度优势,但却需要对文件进行格式转。 fread函数读取csv的速度最快; readr::read_csv函数次之; 默认使用的read.csv速度最慢。...fread函数读取csv的速度最快; readr::read_csv函数次之; 默认使用的read.csv速度最慢。...5.3 5.6 10 ## readFeather 1.5 1.8 2.988021 3.4 3.6 4.1 10 测试结论 最常用的read.table每个测试中都是表现最差的

1.6K20
领券