差异分析的代码分析
你知道差异的代码分析有哪几步吗?
当然知道,有设定阙值,选出UP、DOWN、NOT表达基因,为画图做准备。
举个?:
logFC_cutoff2
1.FC是fold change 的简写,它是两样品组间基因表达水平的比值,是表达差异倍数的变量。一般差异表达分析中会同时控制这两个参数来筛选显著差异表达基因。logFC是FC的对数值,意义是“差异倍数”。此代码logFC即logFoldchange。
2.Cutoff是临界值的意思。(阙值)
3.sd()为数字函数,意为标准差 abs() 也是数字函数,意为绝对值。mean函数是求算数平均值。在设置阙值时,根据网站https://www.bmj.com/about-bmj/resources-readers/publications/statistics-square-one/2-mean-and-standard-deviation的介绍。Mean+2*sd可以反应95%以上观测值,比较可信。
4.此代码目的为在DEG里添加一列名为change的列,标记基因上调下调。with把所有操作都限制在数据框上(with()的括号内外,信息是完全隔开的,避免程序定位错误的情况)调用数据框DEG里的logFC。
码农的代码世界
再来个?:
DEG2$change=as.factor(
Ifelse(DEG2$PValue<0.05&abs(DEG2$logFC)>logFC_cutoff2, Ifelse(DEG2$logFC>logFC_cutoff2,”UP”,”DOWN”),”NOT”)
1.as.factor将函数参数转换为factor类型。
2.ifelse()条件判断可以得到多个逻辑结果,有多少个逻辑结果,那么反回值就有多少个元素,且不同的逻辑结果取不同的值。 这是两个ifelse判断嵌套。Ifelse的结构为ifelse(条件,yes,no),如果满足条件,那么返回yes/或者执行yes所处的下一个命令;反之返回no。这里外层的ifelse中DEG$PValue<0.05&abs(DEG$logFC)>logFC_cutoff是判断条件,这个就是看p值和logFC是不是达到了他们设定的阙值【p是0.05,logFC是logFC_cutoff】,如果达到了就进行下一个ifelse,达不到就返回NOT。第二层ifelse也是上来一个条件:DEG$logFC>logFC_cutoff,如果达到了,就返回UP即上调基因,达不到就是下调调DOWN。
3.差异基因筛选,P值小于0.05。pvalue即概率,一般以p<0.05为有统计学差异,对两组差别有显著差异。
4.UP DOWN 计算上下调标准。
5.此代码目的对DEG的每一行判定为UP/DOWN/NOT,判定结果添加为change列,并转换为因子格式,得到DOWN、UP、NOT的三种因子。 P.Value<0.05且l logFC l >logFC_cutoff且logFC>logFC_cutoff,输出“UP” P.Value<0.05且llogFC l >logFC_cutoff且logFC=logFC_cutoff,输出”DOWN” P.Value>/=0.05或l logFC l =logFC_cutoff,输出“NOT”。
Table(DEG$change)
Down NOT UP分别为下调,无显著差异,上调三类 。
各种各样的分析方法
今日份知识小拓展
TCGA数据挖掘之基因表达差异分析:
图文;崔旭舒
喜欢请点关注哦!