R语言中计算FST值的z分数、根据z分数计算P、进行P值的FDR矫正筛选阈值线
001、生成fst值得z分数
即:(观测值-平均值)/标准差
dat <- read.table("fst.fst", header = T) head(dat, 3) dat$z_score <- (dat$FST - mean(dat$FST))/sd(dat$FST) ## 在原来数据上新增一列,并赋值为z_score head(dat, 3)
。
002、根据z分数计算P值
dat <- read.table("fst.fst", header = T) head(dat, 3) dat$z_score <- (dat$FST - mean(dat$FST))/sd(dat$FST) head(dat, 3) dat$p <- pnorm(q=dat$z_score, lower.tail=F) ## 是否大于某个值,使用右侧检验 head(dat, 3)
。
003、对P值进行FDR矫正
dat <- read.table("fst.fst", header = T) head(dat, 3) dat$z_score <- (dat$FST - mean(dat$FST))/sd(dat$FST) head(dat, 3) dat$p <- pnorm(q=dat$z_score, lower.tail=F) head(dat, 3) dat$p_adjust <- p.adjust(dat$p,method="fdr") ## 对p值进行FDR矫正 head(dat, 3)
。
004、查看显著性位点得数目
sum(dat$p_adjust < 0.05) ## 查看显著性位点的数目
。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2021-04-22 linux shell while循环
2021-04-22 linux shell for循环
2021-04-22 linux系统中case语句的用法
2021-04-22 linux 终端光标消失问题
2021-04-22 linux中while循环语句
2021-04-22 linux中 for语句和while语句计算1-100的和
2021-04-22 linux shell if语句