扩增子统计绘图1箱线图:Alpha多样性
# 运行前,请在Rstudio中菜单栏选择“Session - Set work directory -- Choose directory”,弹窗选择之前分析目录中的result文件夹 # 安装相关软件包,如果末安装改为TRUE运行即可安装
if (FALSE){
source("https://bioconductor.org/biocLite.R")
biocLite(c("ggplot2"))
} # 加载相关软件包
library("ggplot2") # 读入实验设计和Alpha多样性值
design = read.table("design.txt", header=T, row.names= 1, sep="\t")
alpha = read.table("alpha.txt", header=T, row.names= 1, sep="\t") # 以Observed OTU为例进行可视化和统计分析,其它指数将observed_otus替换为shannon, chao1, PD_whole_tree即可计算 # 合并Alpha指数与实验设计
index = cbind(alpha, design[match(rownames(alpha), rownames(design)), ])
# 绘图代码、预览、保存PDF
p = ggplot(index, aes(x=genotype, y=observed_otus, color=genotype))+
geom_boxplot(alpha=1, outlier.size=0, size=0.7, width=0.5, fill="transparent") +
geom_jitter( position=position_jitter(0.17), size=1, alpha=0.7)+
labs(x="Groups", y="observed_otus index")
p
ggsave(paste("alpha_observed_otus.pdf", sep=""), p, width = 5, height = 3) # 统计组间是否显著差异
# anova对指数与分组统计
observed_otus_stats <- aov(observed_otus ~ genotype, data = index)
# 使用TukeyHSD对组间进行检验,效正pvalue
Tukey_HSD_observed_otus <- TukeyHSD(observed_otus_stats, ordered = FALSE, conf.level = 0.95)
# 结果中提取需要的结果
Tukey_HSD_observed_otus_table <- as.data.frame(Tukey_HSD_observed_otus$genotype)
# 预览结果
Tukey_HSD_observed_otus_table
# 保存结果到文件,按Pvaule值由小到大排序
write.table(Tukey_HSD_observed_otus_table[order(Tukey_HSD_observed_otus_table$p, decreasing=FALSE), ], file="alpha_observed_otus_stats.txt",append = FALSE, quote = FALSE, sep="\t",eol = "\n", na = "NA", dec = ".", row.names = TRUE,col.names = TRUE)
各组间的统计结果如下:主要看最后一列p adj(Adjust P-value)是否显著,本文数据不显著
diff lwr upr p adj
OE-KO -7.52380952380952 -24.480725165752 9.43310611813294 0.515429907536906
WT-KO -6.11111111111111 -21.9728532782553 9.75063105603303 0.604309699204896
WT-OE 1.4126984126984 -15.5442172292441 18.3696140546409 0.976169656924344
扩增子统计绘图1箱线图:Alpha多样性的更多相关文章
- 扩增子图表解读1箱线图:Alpha多样性
箱线图 箱形图(Box-plot)又称为盒须图.盒式图或箱线图,是一种用作显示一组数据分散情况资料的统计图.因形状如箱子而得名.在宏基因组领域,常用于展示样品组中各样品Alpha多样性的分布 第一种情 ...
- R语言绘图:箱线图
使用ggplot2绘制箱线图 ######*****绘制箱线图代码*****####### data1$学区房 <- factor(data1$school, levels = 0:1, lab ...
- R语言学习 - 箱线图(小提琴图、抖动图、区域散点图)
箱线图 箱线图是能同时反映数据统计量和整体分布,又很漂亮的展示图.在2014年的Nature Method上有2篇Correspondence论述了使用箱线图的好处和一个在线绘制箱线图的工具.就这样都 ...
- python3绘图示例4(基于matplotlib:箱线图、散点图等)
#!/usr/bin/env python# -*- coding:utf-8 -*- from matplotlib.pyplot import * x=[1,2,3,4]y=[5,4,3,2] # ...
- 斯坦福【概率与统计】课程笔记(五):EDA | 箱线图
介绍箱线图之前,需要先介绍若干个其需要的术语 min:整个样本的最小值 max:整个样本的最大值 Range:即整个样本的取值范围,Range = max - min Inter-Quartile R ...
- Matplotlib数据可视化(6):饼图与箱线图
In [1]: from matplotlib import pyplot as plt import numpy as np import matplotlib as mpl mpl.rcParam ...
- 一起来玩echarts系列(一)------箱线图的分析与绘制
一.箱线图 Box-plot 箱线图一般被用作显示数据分散情况.具体是计算一组数据的中位数.25%分位数.75%分位数.上边界.下边界,来将数据从大到小排列,直观展示数据整体的分布情况. 大部分正常数 ...
- Matlab boxplot for Multiple Groups(多组数据的箱线图)
在画之前首先介绍一下Matlab boxplot,下面这段说明内容来自http://www.plob.org/2012/06/10/2153.html 由于matlab具有强大的计算功能,用其统计 ...
- 第六篇:R语言数据可视化之数据分布图(直方图、密度曲线、箱线图、等高线、2D密度图)
数据分布图简介 中医上讲看病四诊法为:望闻问切.而数据分析师分析数据的过程也有点相似,我们需要望:看看数据长什么样:闻:仔细分析数据是否合理:问:针对前两步工作搜集到的问题与业务方交流:切:结合业务方 ...
随机推荐
- 百度编辑器拦截上传图片提交上传腾讯server并返回腾讯url
微信图文编辑时图片必须为上传到腾讯server的url,外连接所有屏蔽,则须要改动百度编辑器的源代码,源代码详细处理地方例如以下图.类为BinaryUploader.java InputStream ...
- MongoDB 学习笔记一 安装以及基础命令
一.MongoDB安装配置 1.获取最新版本号: wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.2.tgz 2.解压缩就可 ...
- Python爬虫开发【第1篇】【urllib2】
1.urlopen # urllib2_urlopen.py # 导入urllib2 库 import urllib2 # 向指定的url发送请求,并返回服务器响应的类文件对象,urlopen中有da ...
- jquery跨域请求json数据
//服务端生成json数据json.php <?php $json=array("Volvo","BMW","SAAB"); $cb ...
- 【bzoj1798】[Ahoi2009]Seq 维护序列seq
大意:一个数组,三个操作,第一种是区间[a,b]每个数乘乘,第二种是区间[a,b]每个数加c,第三种是查询[a,b]区间的和并对p取摸. 两种操作就不能简单的只往下传标记.每次传乘法标记时,要把加法标 ...
- grep 并列查询 效率 且 或
find / | grep -v python | grep -v xl_ | grep -v xiaole |grep redis [root@hadoop3 ~]# find / | grep - ...
- 阿里电话面试问题----100万个URL怎样找到出现频率最高的前100个?
内推阿里电话面试中面试官给我出的一个题: 我想的头一个解决方式.就是放到stl 的map里面对出现的频率作为pair的第二个字段进行排序.之后依照排序结果返回: 以下口说无凭,show your co ...
- HTTP要点概述:七,编码,压缩传输,分块传输
一,编码: HTTP 在传输数据时可以按照数据原貌直接传输,但也可以在传输过程中通过编码提升传输速率.通过在传输时编码,能有效地处理大量的访问请求.但是,编码的操作需要计算机来完成,因此会消耗更多的 ...
- VS-按F12无法跳转到函数定义,点击右键也无法跳转
工具->选项->项目和解决方案->常规,把“在解决方案资源管理器中跟踪活动项”反选.
- 【HDU 1588】 Gauss Fibonacci
[题目链接] 点击打开链接 [算法] 要求 f(g(0)) + f(g(1)) + f(g(2)) + ... + f(g(n-1)) 因为g(i) = k * i + b 所以原式 = f(b) + ...