因此,在对大数据处理上,使用data.table无疑具有极高的效率。这里主要介绍在基因组数据分析中可能会用到的函数。...; blank.lines.skip 默认FALSE,如果TRUE,跳过空白行 key 设置key,用一个或多个列名,会传递给setkey showProgress TRUE会显示脚本进程...,当用file==""时,自动忽略此参数; verbose 是否交互和报告时间 dcast.data.table 和reshape2包的dcast一样, 这个函数用来重铸表格,并且再在大数据的处理上...显示没有联合成功的行列 value.var 填充值的列,默认会猜测 现在我需要取数据DT的v1,v2两列相同的情况作为汇总的一类,对它们的v4值取平均,转换如下,...,如下 pattern函数下面会讲,这里再讲一下的是melt和dcast的联合使用,先用melt融合,再用dcast重铸 如下面例子
gplots 数据处理成矩阵形式,给行名列名 调制颜色并用heatmap.2画热图(heatmap.2函数内部用hclustfun 进行聚类) R语言代码 library(ggplot2) library(data.table...project/Gengyan/ONCOCNV_result/ONCOCNV_all_result.txt",sep="\t") dt <- CN_DT[cfDNATime=="cfDNA1"] wdt <- dcast...(dt,Gene~Sample,value.var = "CN",fun.aggregate = mean) data <- as.matrix(wdt[,2:length(wdt),with=F])...library(gplots) library(data.table) CN_DT <- fread("/home/ywliao/project/Gengyan/ONCOCNV_result/ONCOCNV_all_result.txt...",sep="\t") dt <- CN_DT[cfDNATime=="cfDNA1"] wdt <- dcast(dt,Gene~Sample,value.var = "CN",fun.aggregate
首先看一下R中warning的报警信息: warning # 示例数据 library(data.table) dd = data.frame(ID = 1:10,y= rnorm(10)) dd #...warning re1 = dcast(dd,y~.) re1 > re1 = dcast(dd,y~.)...Use 'value.var' to override Warning message: In dcast(dd, y ~ .) : The dcast generic in data.table...warning处理代码 在代码中,写下warning的语句,在warning的条件下,返回2 在代码中,写下error的语句,在error的条件下,返回3 re1 = tryCatch({ dcast...看示例: melt这个函数,运行melt(dd,y~.)会报错,同时,因为这个函数在data.table用法有变化,因此,也会给出warning信息。
Q&A:在melt和dcast之间反复横跳 写在前面 各位水友大家好,自从上一次发布了改版的推文说明之后,大喵和村长收到了很多水友的问题,我们也对这些问题进行了回复,希望能对大家R语言的学习有所帮助,在此先谢谢各位的支持...(`姓名`) ][, dcast(.SD, `姓名` ~ variable, value.var = c("用药名称", "用法", "用量", "服药时间", "用药依从性"))] data...利用这个函数的目的在于,在data.table中进行数据处理贯彻的是向量思维。 这也是R语言和Python语言进行数据处理的底层逻辑。从数据特点的角度来解释,也即是长表优于宽表。...最后一部分代码则为melt的逆操作: data <- data[, dcast(.SD, `姓名` ~ variable, value.var = c("用药名称", "用法", "用量", "服药时间...,~左边的变量为表更改结构以后体现记录识别唯一性的primary key,~右边的变量为数据变宽之后同类记录的序号variable,value.var中的变量名与~右边变量中记录的序号整合在一起生成一系列的同类变量
首先看一下R中warning的报警信息: 「warning」 # 示例数据 library(data.table) dd = data.frame(ID = 1:10,y= rnorm(10)) dd...# warning re1 = dcast(dd,y~.) re1 > re1 = dcast(dd,y~.)...Use 'value.var' to override Warning message: In dcast(dd, y ~ .) : The dcast generic in data.table...「warning处理代码」 在代码中,写下warning的语句,在warning的条件下,返回2 在代码中,写下error的语句,在error的条件下,返回3 re1 = tryCatch({ dcast...「看示例:」melt这个函数,运行melt(dd,y~.)会报错,同时,因为这个函数在data.table用法有变化,因此,也会给出warning信息。
(3)基于算法的分析方式一般具有行业特殊性,也就是说很难训练一个可以跨行业的模型,这样就会遇到另外一个问题:挑选训练样本。...书中提到,要统计tf,可以通过`table`函数、`dcast`函数(reshape2包、plyr包都有这个函数)等实现,但是尝试之后发现它们要不速度慢,要不就是占用内存太高,包括data.table里的...其中,data.table里的`dcast`函数比reshape2包里的`dcast`好用,尽管他们的参数都一样,但是很多人还是比较喜欢老朋友reshape2包,然而这一步需要大量的内存,本书在服务器上完成的...,如果你的电脑报告内存不足的错误,可以使用data.table包里的`dcast`函数试试。...) train <- dcast(data = traintfidf, id + label ~ term, sum, value.var = "tfidf") dcast是data.table中有用的函数
(3)基于算法的分析方式一般具有行业特殊性,也就是说很难训练一个可以跨行业的模型,这样就会遇到另外一个问题:挑选训练样本。...书中提到,要统计tf,可以通过`table`函数、`dcast`函数(reshape2包、plyr包都有这个函数)等实现,但是尝试之后发现它们要不速度慢,要不就是占用内存太高,包括data.table里的...其中,data.table里的`dcast`函数比reshape2包里的`dcast`好用,尽管他们的参数都一样,但是很多人还是比较喜欢老朋友reshape2包,然而这一步需要大量的内存,本书在服务器上完成的...,如果你的电脑报告内存不足的错误,可以使用data.table包里的`dcast`函数试试。...) train <- dcast(data = traintfidf, id + label ~ term, sum, value.var = "tfidf") dcast是data.table
总结来说,OR>1.5越倾向在该组织分布,OR<0.5越不倾向在该组织中分布。 二....图表复现 下面利用作者给的meta.data数据和代码计算OR值: 有一些R包需要提前安装一下: library("sscVis") library("data.table") library("grid...print(freq.dist.bin) { count.dist.melt.ext.tb <- test.dist.table(count.dist) p.dist.tb <- dcast...(count.dist.melt.ext.tb,rid~cid,value.var="p.value") OR.dist.tb <- dcast(count.dist.melt.ext.tb,rid...~cid,value.var="OR") OR.dist.mtx <- as.matrix(OR.dist.tb[,-1]) rownames(OR.dist.mtx) <- OR.dist.tb
following objects are masked from 'package:reshape2': #> #> dcast, melt 注意,data.table包提供了加强版的dcast...我们可以将多个[]按顺序连接起来,形成工作流(类似管道%>%)。...重塑data.table data.table扩展包为data.table对象提供了更强更快得dcast()和melt()函数。...8 #> 3: 201604 9 9 #> 4: 201605 9 10 data.table::dcast()提供了更强大的多变量支持: toy_tests2 = data.table:...:dcast(toy_tests, ym ~ id, value.var = c("quality", "durability")) toy_tests2 #> ym quality_T01
<0.5标示不倾向在该分组中分布,详见文献methods),来比较不同分组(正常组织,肿瘤组织,PBMC,用药前后等)间cluster/celltype之间的分布差异 。...一 载入R包,数据 1 ,载入必要的R包 #remotes::install_github("Japrin/sscVis") library("sscVis") library("data.table"...print(freq.dist.bin) { count.dist.melt.ext.tb <- test.dist.table(count.dist) p.dist.tb <- dcast...(count.dist.melt.ext.tb,rid~cid,value.var="p.value") OR.dist.tb <- dcast(count.dist.melt.ext.tb,rid...~cid,value.var="OR") OR.dist.mtx <- as.matrix(OR.dist.tb[,-1]) rownames(OR.dist.mtx) <- OR.dist.tb
注:在此处有一个data.table的小技巧,i中的排序和选择的操作的在代码中分成了两步,这是因为这两个部分不能够以order(date, industry, -amount) & amount > 0...这一题的关键在于运用了分组以后的.SD选择,这是一个data.table包的常用技巧。 line 1 计算了个股每日的收益率ret,再将其余需要的变量挑选出来。 line 2 是本题的关键。...= "others", dcast(.SD, date ~ tag, value.var = "ret_aver") ][, cor(`max10%`, `min10%`)] ?...line 4 在删除tag = "other"的这些观测之后,用dcast将表进行变形,把观测值max10%和min10%变成两个变量名,而后在这两个变量名下填充ret_aver的观测值:dcast(....SD, date ~ tag, value.var = "ret_aver"。
导语 GUIDE ╲ ECharts是一个基于JavaScript实现的开源可视化库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器。...简介 recharts具有丰富的功能,提供的图形展示包括:地图(eMap),柱状图(eBar),折线图(eLine), 雷达图(eRadar),散点图(ePoints),漏斗图(eFunnel)以及万恶的饼图...#先改造一下数据集 d <- data.table::dcast(mtcars, carb+gear~., mean, value.var='mpg') names(d)[3] <- 'mean.mpg..., 6907) ) ) ) ) echart(chordEx1) 06 南丁格尔玫瑰图 str(Titanic) # 表格按行求和,再进行转换长表达 titanic <- data.table...,但是已经具备了十分强大的交互式可视化功能,小编在这里展示了一些常用图形的绘制函数,仍有很多绘图功能需要大家的继续发掘!
对比python中的datatable、pandas、dask、cuDF、modin,R中data.table以及spark、clickhouse 3....可以看到,无论是5G还是50G的数据,data.table的性能都在python之上,堪比spark、clickhouse。...1.读取 data.table用时89秒,内存峰值消耗7G modin.pandas用时58秒,内存峰值消耗25G 本测试所用的是modin[ray],似乎modin.pandas一直有内存管理的问题,...用时3.3秒 dcast.data.table(ans, id1 + id4 ~ id5, value.var = “v3”, fun.aggregate = mean) R ETL开发框架 开发环境为...一个可行的实施方案为Rpresto、RMysql提供I/O支持,data.table提供主体ETL,crontab提供调度服务。
reshape2,主要用于宽数据和长数据之间的转换。 主要就是melt和*cast函数的应用。 具体可参考如下图片 ?...参考的r代码如下 names(airquality) = tolower(names(airquality)) head(airquality) # melt md = melt(airquality...(md,month+day~climate_variable,value.var = "climate_value") head(cd) head(airquality) dim(cd) dim(airquality...) # aggregate by month to get the mean value dcast(md,month~climate_variable,value.var = "climate_value...",fun.aggregate = mean, na.rm=T) # add margin dcast(md,month~climate_variable,value.var = "climate_value
pyclone介绍 可以根据多个样品突变的allele frequency 和 copy number,推断出有该突变的细胞克隆所占的比例(cellular prevalence)在不同样品间的变化...plots/ #包括生成的全部图 tables/ #包括生成的全部表格 trace/ #包括MCMC抽样算法的原始痕迹 yaml/ #存放yaml突变文件的文件夹,用于PyClone...1或2 minor_cn, 肿瘤细胞的minor拷贝数,一般从WGSS或者芯片的数据预测出 major_cn,肿瘤细胞的major拷贝数,一般从WGSS或者芯片的数据预测出 如果你没有minor copy...hex能直接处理的矩阵的R函数 library(data.table) library(supraHex) Loci_tsv_To_Input <- function(dt){ dc <- dcast...(dt, formula = mutation_id ~ sample_id, value.var = "cellular_prevalence") dt_out <- dc[,-1] rownames
If blank, will use all non-measured variables.指明分组变量,该列为原来df的factor列 measure.vars vector of measured...均为measure value variable.name name of variable used to store measured variable names 指定measure value的变量名字...image.png 将长数据转换为宽数据 将上述df_melt转化为宽数据框df df_cast<-reshape2::dcast(df_melt,x~year,value.var="value")...image.png dcast参数说明 Arguments formula casting formula, see details for specifics. fun.aggregate aggregation...value.var name of column which stores values,
data.table 查看代码[1] data.table的基本框架 ?..." "data.frame" as.data.table() as.data.table()的适用范围更广 data.table::copy() 复制数据起一个新的名字,因为data.table...按相同的列内容进行data.table组合 ?...对应y中列的名称 数据的拆分和合并 melt() dcast() > reshape_dt <- data.table(kinds = c(rep("peach", 2), rep("grape",...(reshape_dt_new, kinds + level ~ `2price`, value.var = "money") kinds level price price21: grape
,就可以使用dcast()将它铸造为任意形状。...铸造 dcast()读取已熔解的数据,并使用你提供的一个公式和一个可选的整合数据的函数将其重铸。...# 对每月结果求平均 dcast(md, Month ~ Class, mean) ## Using New_Value as value column: use value.var to override...dcast(md, Month ~ Day, mean) ## Using New_Value as value column: use value.var to override. ## Month...dcast(md, Month + Day ~ Class) ## Using New_Value as value column: use value.var to override. ##
[源代码从这里下载] 一、一个自定义ValidationAttribute:RangeIfAttribute 为了演示在相同的目标元素(类、属性或者字段)应用多个同类的ValidationAttribute...validationContext.DisplayName), memberNames); 27: } 28: } 二、将RangeIfAttribute应用于Employee 我们将RangeIfAttribute特性应在具有如下定义的表示员工的...ASP.NET MVC在生成包括验证特性的Model的元数据的时候,针对某个元素的所有ValidationAttribute是被维护在一个字典上的,而这个字典的值就是Attribute的TypeId属性...在默认的情况下,Attribute的TypeId返回的是自身的类型,所以导致应用到相同目标元素的同类ValidationAttribute只能有一个。...值得一提的是:重写TypeId属性的方式只能解决服务端验证的问题,对于客户端认证无效。
1_gene_counts.tsv.gz" ct <- data.table::fread( f, data.table = F) > head(ct) gene...,我略微思考了一下,做了一个简单的变幻: library(reshape2) tmp = dcast(ct,gene~cell) tmp[1:4,1:4] 可以看到,很多NA,其实就是单细胞转录组里面的...NA NA NA > dim(tmp) [1] 21892 3664 这个时候我们可以借助于r编程语言里面的reshape2包的dcast...长格式数据通常包含多行和少列,每行对应一个观察值,并且包含一个用于标识不同组的变量;而宽格式数据通常包含少行和多列,每行对应一个唯一的标识符,并且包含多个变量。...data.table = F) head(ct) dim(ct) #ct[1:4,1:4] library(reshape2) tmp = dcast(ct,gene~cell)
领取专属 10元无门槛券
手把手带您无忧上云