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

WGCNA分析,简单全面的最新教程

一是充分利用了信息,二是把数千个基因与表型的关联转换为数个基因集与表型的关联,免去了多重假设检验校正的问题。 理解WGCNA,需要先理解下面几个术语和它们在WGCNA中的定义。...在无向网络中,模块内是高度相关的基因。在有向网络中,模块内是高度正相关的基因。把基因聚类成模块后,可以对每个模块进行三个层次的分析:1. 功能富集分析查看其功能特征是否与研究目的相符;2....通常在R中运行下面4条语句就可以完成WGCNA的安装。 建议在编译安装R时增加--with-blas --with-lapack提高矩阵运算的速度,具体见R和Rstudio安装。...# corType: pearson or bicor # numericLabels: 返回数字而不是颜色作为模块的名字,后面可以再转换为颜色 # saveTOMs:最耗费时间的计算,存储起来,供后续使用...# 根据模块中基因数目的多少,降序排列,依次编号为 `1-最大模块数`。 # **0 (grey)**表示**未**分入任何模块的基因。

5.5K64

WGCNA分析,简单全面的最新教程(在线做,但也需要懂原理)

一是充分利用了信息,二是把数千个基因与表型的关联转换为数个基因集与表型的关联,免去了多重假设检验校正的问题。 理解WGCNA,需要先理解下面几个术语和它们在WGCNA中的定义。...在无向网络中,模块内是高度相关的基因。在有向网络中,模块内是高度正相关的基因。把基因聚类成模块后,可以对每个模块进行三个层次的分析:1. 功能富集分析查看其功能特征是否与研究目的相符;2....通常在R中运行下面4条语句就可以完成WGCNA的安装。 建议在编译安装R时增加--with-blas --with-lapack提高矩阵运算的速度,具体见R和Rstudio安装。...# corType: pearson or bicor # numericLabels: 返回数字而不是颜色作为模块的名字,后面可以再转换为颜色 # saveTOMs:最耗费时间的计算,存储起来,供后续使用...# 根据模块中基因数目的多少,降序排列,依次编号为 `1-最大模块数`。 # **0 (grey)**表示**未**分入任何模块的基因。

24.5K99
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Day07 生信马拉松-数据整理中的R

    2.3 mutate,数据框新增一列 test <- mutate(test, new = Sepal.Length * Sepal.Width) #R中的修改必须要赋值,不赋值=没发生 test...:使gene名变为列名,将样本名转化为data.frame中的第一列 ggplot2对行名并不友好,通常要使样本名转化为data.frame中的第一列,防止在后续代码运行过程中行名丢失 图片 图片 step2...dat = t(exp) %>% #将matrix进行行列转置 as.data.frame() %>% #将matrix转为data.frame rownames_to_column() %...### ggplot2 分面相关设置(facet)详解 7.一些实操中的便捷函数 7.1 match() 函数 load("matchtest.Rdata") x y ## 把y的列名正确替换为x里面的...dir() # 列出工作目录下的文件 dir(pattern = ".R$") #列出工作目录下以.R结尾的文件 file.create("douhua.txt") #用代码创建文件 file.exists

    23900

    初探mRNA、lncRNA联合分析之下游

    , verbose = 5) #SFT.R.sq > 0.8 , slope ≈ -1 # 将拟合优度图和均值连接度图保存至PDF文件中...numericLabels = TRUE, # 返回数字作为模块的名称,后面可以再转换为颜色 saveTOMs = F, # 是否存储TOM矩阵,TOM矩阵计算最耗费时间的步骤之一...# numericLabels: 返回数字而不是颜色作为模块的名字,后面可以再转换为颜色 # saveTOMs:最耗费时间的计算,可存储起来供后续使用, # mergeCutHeight: 合并模块的阈值...} ## 模块可视化,层级聚类树展示各个模块 # 模块构建完成后,将模块颜色labels转换为可视化所需的颜色,最后用层级聚类树展示各个模块 if(T){ # Convert labels to...textMatrix = textMatrix, # 添加到每个网格中的文本(可以是数字或字符) setStdMargins = F, # 是否将margins调整为标准大小

    65631

    GEO数据挖掘-基于芯片

    ) # 关于scale的进一步学习:zz.scale.R4.2 解析4.2.1 dat = as.data.frame(t(exp))将表达矩阵 exp 转置后转换为数据框。...number = Inf:指定要提取的基因数量。Inf 表示提取所有基因的结果。如果你只想提取前 n 个基因,可以将 Inf 替换为具体的数字,比如 100 表示提取前100个基因。...这一步将表达矩阵中的探针 ID 替换为对应的基因符号,使得矩阵更加易读。提取差异基因diff_gene = deg$symbol[deg$change !...ekk 将KEGG富集结果中的基因ID转换为更容易理解的基因符号...ont = "ALL":指定进行所有GO分类(生物过程BP、分子功能MF、细胞组分CC)的富集分析。readable = TRUE:将富集结果中的基因ID转换为基因符号。

    18210

    WGCNA仅仅是划分基因模块,其它都是附加分析

    , verbose = 5) #SFT.R.sq > 0.8 , slope ≈ -1 # 将拟合优度图和均值连接度图保存至PDF文件中...numericLabels = TRUE, # 返回数字作为模块的名称,后面可以再转换为颜色 saveTOMs = F, # 是否存储TOM矩阵,TOM矩阵计算最耗费时间的步骤之一...# numericLabels: 返回数字而不是颜色作为模块的名字,后面可以再转换为颜色 # saveTOMs:最耗费时间的计算,可存储起来供后续使用, # mergeCutHeight: 合并模块的阈值...textMatrix = textMatrix, # 添加到每个网格中的文本(可以是数字或字符) setStdMargins = F, # 是否将margins调整为标准大小...textMatrix = all_cor_textMat, # 添加到每个网格中的文本(可以是数字或字符) setStdMargins = F, # 是否将margins

    1.2K20

    R语言学习笔记-Day09

    )#顺序会发生变更inner_join()#仍然保留按照P.Value排序的表格顺序最终呈现结果:limma输出结果--探针名(行名)--基因名(ids)--上下调(ifelse)--ENTREZID(...,一般规律是,一个过程是由多个不同的步骤组成的通过将差异基因作GO富集分析,可以把基因按照不同的功能进行归类,达到对基因进行注释和分类的目的实战代码rm(list = ls())undefinedload...#将ENTREZID更换为对应的基因。...代表通路而非某一特定基因##衡量每个通路中的基因在差异基因里是否足够多#geneID:差异基因中哪些基因属于该通路#GeneRatio:差异基因中属于该通路的数量/差异基因中被数据库收录的数量#BgRatio...:该通路中总计基因数/数据库中全部通路总计基因数若富集不到1* 调整logFC, pvalue和阈值,以改动差异基因数量2* 不适用默认的padj(富集的),而是使用原始p值,在文章中写清即可3* 更换富集方法

    14210

    R语言基础提升与总结

    140","tony 152")y:字符型向量"jimmy 150":字符串,一个引号内的所有东西引号内的单个字母/数字/符号称为字符x ifelse(i>0,"+",ifelse(i中的每一个元素进行循环对...x 将for循环的结果保存下来?...,按列拼接成为一个矩阵 do.call完成批量操作4 表达矩阵画箱线图4.1 表达矩阵的概念基因表达的数据通常使用表达矩阵来表示其中矩阵的行代表某个基因在不同样本(不同处理,或时间点等)中的表达水平列表示某个样本中各个基因的表达水平...,其实是对左边的数据框取子集7 一些顶呱呱的函数7.1 match()7.2 一些处理文件的函数dir() # 列出工作目录下的文件dir(pattern = ".R$") #列出工作目录下以.R结尾的文件

    18310

    WGCNA加权基因共表达网络多步法分析学习

    varianceStabilizingTransformation方法,或将基因标准化后的数据(如FPKM、CPM等)进行log2(x+1)转化。...# 如果是分类变量(比如性别、地区等),则需要转换为0-1矩阵的形式# (1表示属于此组或有此属性,0表示不属于此组或无此属性)。...# SFT.R.sq:Scale Free Topology Model Fit,表示拟合模型的拟合度,通常用 R^2 衡量。较高的值表示模型更好地拟合数据。...# truncated.R.sq:表示截断模型的拟合度,也是一个衡量模型拟合程度的指标。# mean.k.:平均连接度(Mean Connectivity),用于描述网络中节点的连接性。...查看每个模块的基因数量 table(geneModule$Module) # 例如,提取某个特定模块(例如 "blue" 模块)中的基因: blueModuleGenes = geneModule

    11310

    转录组差异分析—基本流程

    read.csv("RawCounts.csv", check.names = F, row.names = 1)#read.csv读取后是数据框,需要转换为矩阵...GSM数据集被单独做成一个txt.gz文件(如GSE193861)r1 = function(b){ read.delim(paste0("GSE193861_RAW/",b),header = F,...dat = lapply(bs, r1)#新函数 do.call 对列表进行批量操作,对dat中每个元素按照列拼接在一起exp = do.call(cbind,dat)在额外添加列名,获得完整的表达矩阵...,2)2.2 临床信息clinical = 1 #有临床信息就读取,没有临床信息就写1,占位置,不用改后面代码2.3 表达矩阵行名ID转换注意:trans_exp_new ()仅用于ensemble 转symbollibrary...#过滤之前基因数量nrow(exp)#常用过滤标准1:仅去除在所有样本里表达量都为零的基因exp1 = exp[rowSums(exp)>0,]nrow(exp1)# 常用过滤标准2(推荐):仅保留在一半以上样本里表达的基因

    19710

    为什么0.1 + 0.2 不等于 0.3 ?

    在二进制中,,浮点数通常使用 IEEE 754 标准进行表示,无法准确表示的小数有 0.1、0.2 或 0.3 这样的数字,因为它使用的是二进制浮点格式。...而 1/3、1/6 和 1/7 是无限循环的小数,因为分母使用了 3 或 7 的质因数。在二进制(计算机使用的系统)中,如果一个分数使用基数(2)的质因数来表示,那么它可以被精确地表示。...这个近似值是通过将无限循环的二进制小数转换为有限位数的浮点数表示来实现的。因此,当我们在计算机中进行浮点数运算时,结果可能会有微小的误差。...十进制小数转二进制还有一种更容易理解的方法(采用 *2 取整法),例如我们要把十进制数的小数 0.875 转换为二进制数,只需将十进制数的小数部分乘以 2,然后提取整数部分,直到小数部分变为 0。...,如下实例:(0.1*10 + 0.2*10)/102、使用 toFixed() 方法toFixed() 方法可以将一个数字转换为指定小数位数的字符串表示形式。

    14110

    WGCNA加权基因共表达网络一步法分析学习

    varianceStabilizingTransformation方法,或将基因标准化后的数据(如FPKM、CPM等)进行log2(x+1)转化或者归一化后的芯片数据。...# 如果是分类变量(比如性别、地区等),则需要转换为0-1矩阵的形式# (1表示属于此组或有此属性,0表示不属于此组或无此属性)。...# truncated.R.sq:表示截断模型的拟合度,也是一个衡量模型拟合程度的指标。# mean.k.:平均连接度(Mean Connectivity),用于描述网络中节点的连接性。...,值越大,越敏感,得到的模块就越多;# minModuleSize 参数设置最小模块的基因数,值越小,小的模块就会被保留下来;# mergeCutHeight 设置合并相似性模块的距离,值越小,就越不容易被合并...# numericLabels = TRUE:表示模块将使用数值标签,返回数字而不是颜色作为模块的名字,后面可以再转换为颜色。

    18410

    「R」数据可视化1: 火山图

    在生物领域我们常常使用R语言对数据可视化。在对数据可视化的时候,我们需要明确想要展示的信息,从而选择最为合适的图突出该信息。本系列文章将介绍多种基于不同R包的作图方法,希望能够帮助到各位读者。...一般来说在差异基因分析过程中,筛选标准通常认为qvalue小于0.05且foldchange的绝对值大于2为差异基因。...当然在差异基因数量过多的时候,我们可以调整筛选标准以获得相对适合数量的差异基因再进行下游的富集分析,比如要求qvalue小于0.001,或者要求foldchange的绝对值大于5等等。...当差异基因数量过少的时候,我们可以考虑将foldchange的绝对值变为1.5,或者考虑选择pvalue小于0.05。 而图中的虚线就是根据自己的筛选标准确定添加。...(2) 如何使用ggpot2做火山图 能够做火山图的方法有很多,有一些RNA-seq分析的包中自带了画火山图的函数。

    2.2K10

    TNBC数据分析-GSE27447-GPL6244

    主要是参考我八年前的笔记: 解读GEO数据存放规律及下载,一文就够 解读SRA数据库规律一文就够 从GEO数据库下载得到表达矩阵 一文就够 GSEA分析一文就够(单机版+R语言版) 根据分组信息做差异分析...按照取出的这一列中的每一行组成一个新的dat #把ids的symbol这一列中的每一行给dat作为dat的行名 rownames(dat)=ids$symbol dat[1:4,1:4] table(group_list...exp <- dat exp=t(exp)#画PCA图时要求是行名时样本名,列名时探针名,因此此时需要转换 exp=as.data.frame(exp)#将matrix转换为data.frame library...=model.matrix(~factor( group_list )) fit=lmFit(dat,design) fit=eBayes(fit) options(digits = 4) #设置全局的数字有效位数为...,'stable') ) ) #统计上下调基因数量 table(df$g) #给绘制火山图用的数据新增一列symbol df$name=rownames(df) head(df) logFC_t = 2

    2.5K30

    GEO数据挖掘之转录组测序数据流程-以GSE150392为例

    _,所以将第一个下划线改为///,方便后续的切割 str_split("///",simplify = T) # 这一步骤很重要 k = !...duplicated(b[,2]);table(k) # 如果重复,则返回false,不重复则返回true exp = exp[k,] # 表达矩阵中筛选只返回ture的行 b = b[k,]...过滤之前基因数量: nrow(exp) 常用过滤标准1: 仅去除在所有样本里表达量都为零的基因 exp1 = exp[rowSums(exp)>0,] nrow(exp1) 常用过滤标准2(推荐):...Group = str_remove(colnames(exp),"\\d") # 将列名中的数字删除,成为了两个分组 Group = factor(Group,levels = c("Mock",..."Cov")) # 对照组在前,实验组在后 table(Group) 6.保存数据 save(exp,Group,proj,file = paste0(proj,".Rdata")) 7.三大R包差异分析

    2.5K51

    RNA-seq入门实战(十一):WGCNA加权基因共表达网络分析——关联基因模块与表型

    ;最后对矩阵进行转置,变成行为样品、列为基因的形式 rm(list = ls()) options(stringsAsFactors = F) Sys.setenv(LANGUAGE = "en")...datExpr0 <- as.data.frame(t(keep_data)) 在这里根据细胞的多能性状态,将这些细胞粗略分为3组,并按其发育顺序编号为123,添加到了其表型数据中: datTraits...# maxBlockSize:计算机能处理的最大模块的基因数量(默认5000),16G内存可以处理2万个, # 计算资源允许的情况下最好放在一个block里面。...# numericLabels: 返回数字而不是颜色作为模块的名字,后面可以再转换为颜色 # saveTOMs:最耗费时间的计算,可存储起来供后续使用, # mergeCutHeight: 合并模块的阈值...,越大模块越少,一般为0.25 # minModuleSize: 每个模块里最少放多少个基因,设定越大模块越少 # 输出结果根据模块中基因数目的多少,降序排列,依次编号为 `1-最大模块数`。

    12.9K76

    TNBC数据分析-GSE76275-GPL570

    为否,即取出不重复的项,去除重复的gene ,保留每个基因最大表达量结果s #获得去冗余之后的dat/exp dat=dat[ids$probe_id,] #新的ids取出probe_id这一列,将dat...按照取出的这一列中的每一行组成一个新的dat #把ids的symbol这一列中的每一行给dat作为dat的行名 rownames(dat)=ids$symbol dat[1:4,1:4] table(group_list...exp <- dat exp=t(exp)#画PCA图时要求是行名时样本名,列名时探针名,因此此时需要转换 exp=as.data.frame(exp)#将matrix转换为data.frame library...=model.matrix(~factor( group_list )) fit=lmFit(dat,design) fit=eBayes(fit) options(digits = 4) #设置全局的数字有效位数为...,'stable') ) ) #统计上下调基因数量 table(df$g) #给绘制火山图用的数据新增一列symbol df$name=rownames(df) head(df) logFC_t = 2

    2.4K21
    领券