Z =(x-μ)/ σ
μ为均值,σ为标准差。
以下是R中将z-score转为p.value的方法:
pnorm(q, mean = 0, sd = 1, lower.tail = TRUE)
q就是z-score;
个人最常用的是双边检验(two-tailed test).
data <- read.table("./FPKM.txt",sep = '\t',header = T)
p1 <-as.matrix(p_value)
p2 <-as.vector(p1)#格式转换
p2
p_adjust <- p.adjust(p2,method = "BH")
Summary:t.test计算存在NA值的data时,默认的mean格式为mean(x, na.rm=TRUE),
也就是每组的NA不计入每组的个数中。
验证:
1. data 如下:
2. 在NA存在的条件下直接计算p.value
t.test(as.numeric(test)~group)$p.value,可以直接提取p-value;
t.test(as.numeric(test)~group)$estimate[1], 可以直接提取相应的mean值;
3. 去掉NA值计算p.value
可以看出两种计算相同,以后可以放心的计算含有NA值的数据啦!