式中,t 为 t 值,x1,x2是两组的均值,s两组的合并标准误差,n1,n2是每组的观测个数
t 值大,则两组的均值差异大于合并标准误差,表明两组的差异显著
实例
1 | # 检验鸢尾花花瓣长度是否与花的种类有关 |
t.test()
输出内容解释
data
:对比项t
值:-33.719,虽然是负的,但是大多数情况下,只关注其绝对值df
:自由度,30.196,自由度与样本大小有关,表示有多少数据点可用于比较,自由度越大,统计检验越有效p
值:2.2e-16,偶然得到这样的t
值的概率alternative hypothesis
:备择假设,setosa 和 virginica 组的真实均值差异不为095% confidence interval
:95% 置信区间,真实的均值差在 95% 可能性下所处的区间,即两组的真实均值差有 95% 可能性处于[-4.331287, -3.836713]
区间内;可以更改区间,但 95% 常用mean
:各组的均值由以上结果,样本数据的均值差 = 1.456 - 5.540 = -4.084,置信区间显示均值的真实差异在[-4.331287, -3.836713]
之间。所以,95% 的情况下均值的真实差异不为0。p
值远小于 0.05,所以可以拒绝原假设(均值差异为0),即可以说,均值的真实差异显著不为0。
t 检验总结方式
展示重要的信息:t 值,p 值,自由度
也可以带上均值(mean)和标准差差(standard deviation)
1 | > flower.data %>% |
power analysis,可以帮助在给定置信度的情况下,判断检测到给定效应值所需的样本量。反过来,也可以在给定置信度水平情况下,计算某样本量内能检测到给定效应值的概率。
理论基础
n
:实验设计中每种条件/组中观测的数目p
(也称alpha):Type I error probability。也可把他看做是发现效应不发生的概率1-p
:1 minus Type II error probability。可把他看成是真实效应发生的概率ES
:在备择假设或研究假设下效应的量。效应值的表达式依赖于假设检验中使用的统计方法功效分析中研究设计的四个基本量,知三求一
R中使用pwr
包进行功效分析,根据不同的假设检验选择不同的函数
线性回归的功效分析:pwr.f2.test()
假设要研究老板风格对员工满意度的影响,是否超过薪水和消费对员工满意度的影响。老板风格用4个变量来估计,薪水和小费与3个变量有关。已有研究表明,薪水和小费能够解释约30%员工满意度的方差,而从现实出发,老板风格至少能解释35%的方差,假定显著性水平为0.05,在90%的置信度水平下,需要多少受试者,才能得到这样的方差贡献率?
1 | # Linear Models |
方差分析:pwr.anova.test()
假设2组样品做单因素方差分析,要达到0.9的功效,效应值为0.25,并选择0.05的显著性水平,求每一组的样本量
1 | # ANOVA |
t检验:pwr.t.test()
1 | # t tests |
相关性
1 | # Correlations |
比例检验
1 | # Tests of proportions |
卡方检验
1 | # Chi-square tests |
前面所学的线性回归和方差分析基于正态分布的假设
许多变量并不是正态分布
1 | install.packages('robust') |
1 | # 读数据 |
1 | # 读数据 |
1 | # 读数据,跳过前7行,字符串取消用''显示 |
1 | # 读数据 |
1 | # 读文件 |
箱线图展示了数据的5个指标(最小值、下四分位数、中位数、上四分位数、最大值)和离群点。
1 | boxplot(mtcars$mpg) |
生信分析中常见的图,根据颜色的深浅反应数值的大小,可用于基因表达的可视化和聚类。
绘制热图的对象是数值矩阵。
绘制热图的方法:
heatmap()
gplot
包heatmap.2()
pheatmap
包pheatmap()
ComplexHeatmap
包1 | # 不是数值矩阵要先转换 |
par函数,Parameter简写,设置绘图中的参数。
1 | head(par()) |
颜色选择标准:
1 | colors() |
一般最少2组,最多5组,再多图很复杂没有意义。
韦恩图画法:
gplots
包venn
函数(简单,无颜色)venneuler
包中的venneuler
函数(安装失败)venn
包中的venn
函数(简单,有颜色,推荐)vennDiagram
包中的venn.Diagram
函数(有颜色,图没有上个好看,必须输出文件,无法在plots
窗口预览)1 | # 读数据 |
曼哈顿图是用二维散点图展示大量数据的方法,主要用于全基因组关联分析。
1 | library(qqman) |
散点图的一种,主要用于基因表达的分析中。
自带散点图
1 | # 读数据 |
ggplot
包
1 | # 读数据并处理 |
逻辑清晰,绘图方便,简介好看,有很多基于ggplot2的绘图包。
图形语法:grammar of graphis,类似于图层的概念。
1.数据(data)
一般为数据框
1 | ggplot(data = mtcars) |
2.映射(mapping)
可以将size,shape,col等映射为数据框中的值
1 | ggplot(data = mtcars, mapping = aes(x=wt, y=mpg)) |
3.几何对象
1 | ggplot(data = mtcars, mapping = aes(x=wt, y=mpg)) + geom_point() |