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

「Workshop」第二期:程序控制与数据操作流

涉及编程数据代码都会放到 https://github.com/XSLiuLab/Workshop 推荐图书 《R for Data Science》[1] 《R 语言编程指南》 《R 实战》 其他推荐见...拓展表格 expand complete 分割连接 separate separate_rows unite 数据导出 write_* data.table 与 base 数据导入 fread 数据导出...fwrite data.table 语法 dt[i, j, by] 数据过滤与合并等操作与 R 基础语法一致,也可以使用 tidyverse 处理 整数索引 逻辑索引 命名索引 进一步学习参考小抄、...文档《R 语言编程指南》 后几期主题 本期未讲述内容???...正则表达式与字符串处理:base 与 stringr 列表处理与迭代计算:purrr 统计建模:stats 与 broom 绘图:graphics 与 ggplot2 函数编程:apply家族purrr

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

懒癌必备-dplyrdata.table让你数据分析事半功倍

接下来,我就为大家分享几个我在工作当中最常用来做数据分析用到包,dplyrdata.table,我保证你get到这两个包后,就再也不想用R里面自带基础包函数进行数据分析了!!...以上这段代码我们使用group_bysummarise结合实现了对数据集分组分析,并进行统计量计算一个功能。...官网上面有关于data.table包对于dplyr提升改进: ?...还是那句话,讲几个最常用函数,就算你数据量大到逆天,data.table跑起来都是游刃有余。剩下大家有什么特殊需求再去下载官方文档看就好啦!...data.table把我们刚刚用group_bysummarise组合才能实现功能,直接在一句代码里面就实现了,而且代码可读性可扩展运用性非常强!

2.4K70

「R」数据操作(八):dplyr do, do, do

关于dplyr基本操作我已经写过很多笔记了,不再赘述,这篇文章重点介绍 dplyr 一个函数 do() 用法。...与data.table类似,dplyr也提供了do()函数来对每组数据进行任意操作。 例如将diamonds按cut分组,每组都按log(price) ~ carat拟合一个线性模型。...data.table不同是,我们需要为操作指定一个名称,以便将结果存储在列中。而且do()表达式不能直接在分组数据语义下计算 ,我们需要使用.来表示数据。...data("diamonds", package = "ggplot2") models = diamonds %>% group_by(cut) %>% do(lmod = lm(...假如我们需要分析toy_tests数据,要对每种产品质量耐久性进行汇总。如果只需要样本数最多3个测试记录,并且每个产品质量耐久性是经样本数加权平均数,下面是做法。

1.5K31

R语言ggplot2复现一下CELL论文中基因共线性图

FigureS3b 前提是已经通过分析确定了哪些基因存在共线性,现在想用ggplot2来作图 构造数据 (基因长度基因间区长度并没有按照真实比例来,论文中是否是按照真实比例来画暂时没有看明白)...用来画基因数据 从前向后 基因起始位置 纵坐标 基因名 物种名 基因方向 基因类别 用来画共线性数据 这个是手动整理,如何用代码根据第一个数据得到这个数据暂时还没有想明白 作图代码 library...gggenes) library(ggforce) dat01<-read_excel("2024.data/20240618/dat01.xlsx") dat01 %>% mutate(X1=case_when...= "species03" ~ X1 + 10, X5 == "species04" ~ X1 + 5, X5 == "species05" ~ X1 + 13, ), X2=case_when...(X5) %>% summarise(min=min(X1), max=min(X2)) dat01 %>% group_by(X5) %>% summarise

7210

R语言︱数据集分组、筛选(plit – apply – combine模式、dplyr、data.table)

lapply函数可以对每组数据都执行同样算法。Splitlapply两者结合可以实现本案例。 2.由于分组后数据可以复用,因此本算法比aggregate性能更高。...3、Lapply 是 apply 函数族 Lapply 是 apply 函数一份子,类似的函数还有 sapply tapply。...")],function(x) sum(x)) 4、subset()函数 利用subset()函数进行访问选取数据框数据更为灵活,subset函数将满足条件向量、矩阵和数据框按子集方式返回。...(参考来源:R高效数据处理包dplyrdata.table,你选哪个?) ?...data.table比较简洁一步搞定,dplyr花了两步,不过也dplyr也可以通过%>%来实现一步搞定。%>%功能是用于实现将一个函数输出传递给下一个函数第一个参数。

20.5K32

(数据科学学习手札157)pandas新增case_when方法

2.2版本中,针对Series对象新增了case_when()方法,用于实现类似SQL中经典CASE WHEN语句功能,今天文章中,我们就来get其具体使用方法~ 2 pandas中case_when...()新方法   首先请确保你pandas版本大于等于2.2,在确保Python版本大于等于3.9前提下,终端执行下列命令安装最新版本pandas: pip install pandas -U 2.1...case_when()使用 case_when()作为Series对象方法,其参数非常简单只有一个caselist,用于定义条件映射规则,格式如[(条件1, 替代值1), (条件2, 替代值2)...,最基础用法下,每个条件为与目标Series长度相等bool值序列,譬如下面的例子:   更灵活方式,是将条件写作可执行函数,譬如lambda函数,进而引用自身实现灵活条件判断:   函数式条件...,在针对数据框进行链式分析过程中,可以很灵活基于上一步临时计算状态,进行条件赋值操作,譬如(示例数据及代码见文章开头仓库地址):   更多有关case_when()方法介绍,请移步官方文档:https

21010

pandas中新增case_when()方法

1 简介 大家好我是费老师,pandas在前不久更新2.2版本中,针对Series对象新增了case_when()方法,用于实现类似SQL中经典CASE WHEN语句功能,今天文章中,我们就来get...其具体使用方法~ 2 pandas中case_when()新方法 首先请确保你pandas版本大于等于2.2,在确保Python版本大于等于3.9前提下,终端执行下列命令安装最新版本pandas...: pip install pandas -U 2.1 case_when()使用 case_when()作为Series对象方法,其参数非常简单只有一个caselist,用于定义条件映射规则,格式如...[(条件1, 替代值1), (条件2, 替代值2), ...]...,最基础用法下,每个条件为与目标Series长度相等bool值序列,譬如下面的例子: 更灵活方式,是将条件写作可执行函数,譬如lambda函数,进而引用自身实现灵活条件判断: 函数式条件,在针对数据框进行

22510

R语言利用转录组基因表达矩阵做基因共表达分析学习资料推荐

参考资料链接 https://github.com/cxli233/SimpleTidy_GeneCoEx/tree/v1.0.1 提供完整示例数据代码,非常好学习材料 做基因共表达比较常用是...接下来内容我重复一下资料中利用表达量数据做PCA内容 代码 setwd("data/20221012/") list.files() #library(data.table) library(...Name`, `Sample Name`), by = "Run") head(PCA_coord) PCA_coord % mutate(stage = case_when...) PCA_by_stage library(patchwork) PCA_by_method+PCA_by_tissue+PCA_by_tissue image.png 以上用到代码示例数据都可以在推文开头提到链接里找到...上面的代码有一步是对TPM值 加1然后取log10,他实现方式是先将宽格式数据转换为长格式,然后把取log10后长格式再转换为宽格式,这里我没能还可以借助mutate_at()函数 Exp_table

36410

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

然后根据自己掌握现状选择最熟练一套,随着时间推移慢慢发现现有工具组合不足,开始尝试往更加高效、简介工具迁移,这样以需求为推动力技能升级迁移更为彻底明确。...可怜机器呀,内存磁盘要撑爆了~ 使用data.tableI/O函数进行导入: rm(list=ls()) gc() library("data.table") system.time(...dplyr::fliter() %>% select() %>% group_by() %>% summarize() 虽然可以借助管道函数进行代码优化,但是仍然无法与data.table简洁想抗衡。...使用fread函数导入之后便会自动转化为data.table对象,这是data.table所特有的高性能数据对象,同时继承了data.frame传统数据框类,也意味着他能囊括很多数据框方法函数调用。...当整列聚合单值同时输出时,可以支持自动补齐操作。 当聚合函数data.table分组参数一起使用时,data.table真正威力才逐渐显露。 mydata[,.

3.6K80
领券