GWAS power的计算

import math
import numpy as np
import pandas as pd
from matplotlib import pyplot as plt
from scipy.special import chdtri
from collections import defaultdict
%matplotlib inline
  1. 对于GWAS中power值(statistical power)的计算,用自己的话来说,Power值就是我们在Pvalue<α时(α:通常设为5e-8)显著水平下,原假设(H0)为假,接受备择假设(H1)的概率。
def pchisq(q,df,ncp=0):"""Calculates the cumulative of the chi-square distribution"""from scipy.stats import chi2,ncx2if ncp==0:result=chi2.cdf(x=q,df=df,loc=0,scale=1)else:result=ncx2.cdf(x=q,df=df,nc=ncp,loc=0,scale=1)return resultdef qchisq(p,df,ncp=0):"""Calculates the quantile function of the chi-square distribution"""from scipy.stats import chi2,ncx2if ncp==0:result=chi2.ppf(q=p,df=df,loc=0,scale=1)else:result=ncx2.ppf(q=p,df=df,nc=ncp,loc=0,scale=1)return result
def get_power(MAF, beta_alt, count, pvalue=5e-8):
#     MAF = 0.5
#     beta_alt = 0.2
#     count = 2000sigma = math.sqrt(1 - 2*MAF*(1-MAF)*beta_alt**2) # error sd after SNP effect is accounted for (see next part for explanation)ses = sigma/math.sqrt(count*2*MAF*(1-MAF)) # q_thresh = scipy.stats.chi2.ppf(q= 5e-8, df = 1)q_thresh = qchisq(1-pvalue, 1)pwr = 1- pchisq(q_thresh, 1, (beta_alt/ses)**2) return pwr
(1)给定效应值(Effect size,beta)为 1.2,计算在不同 MAF 和样本量下它所对应的 Power,并画出图。这里的 MAF 分为五个档位,突变频率从小到大分别是:0.01, 0.05, 0.1,0.15 和 0.2。把结果画在同一个图中,X 轴为样本量,Y 轴为 Power,画图时每一个 MAF 对应一条线。alpha 的阈值都定为 5e-8
# 计算在指定sample数据下,每个beta值对应的power值,并用字典保存
beta_value = np.arange(0, 1.2, 0.01)
count = 2000
pwr_dict=defaultdict(dict)
for maf in [0.01, 0.05, 0.1, 0.15 ,0.2]:pwr_dict[maf]=defaultdict(list)for beta in beta_value:pwr_dict[maf][beta]=get_power(maf, beta, count)
# 字典用pandas转为dataframe,再画图
df = pd.DataFrame(pwr_dict)
df.plot()
plt.title("Sample = 2000",fontsize=15)
plt.xlabel("Beta",fontsize=13)
plt.ylabel("Statistical Power",fontsize=13)
plt.legend(title = 'MAF')
<matplotlib.legend.Legend at 0x7f95af583670>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

(2)给定样本量(sample size)为 2000,计算在不同 MAF 和效应值(Effect size, beta)下它所对应的 Power,并画出图。这里的 MAF 分为五个档位,突变频率从小到大分别是:0.01, 0.05, 0.1,0.15 和 0.2。把结果画在同一个图中,X 轴为效应值,Y 轴为 Power,画图时每一个 MAF 对应一条线。alpha 的阈值都定为 5e-8。
# 计算在指定sample数据下,每个beta值对应的power值,并用字典保存
beta_value = 0.2
count = np.arange(1, 4000, 10)
pwr_dict=defaultdict(dict)
for maf in [0.01, 0.05, 0.1, 0.15 ,0.2]:pwr_dict[maf]=defaultdict(list)for cnt in count:pwr_dict[maf][cnt]=get_power(maf, beta_value, cnt)
# 字典用pandas转为dataframe,再画图
df = pd.DataFrame(pwr_dict)
df.plot()
plt.title("Beta = 0.2",fontsize=15)
plt.xlabel("Sample Count",fontsize=13)
plt.ylabel("Statistical Power",fontsize=13)
plt.legend(title = 'MAF')
<matplotlib.legend.Legend at 0x7f95b7304b50>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/212059.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

unity 2d 入门 飞翔小鸟 下坠功能且碰到地面要停止 刚体 胶囊碰撞器 (四)

1、实现对象要受重力 在对应的图层添加刚体 改成持续 2、设置胶囊碰撞器并设置水平方向 3、地面添加盒状碰撞器 运行则能看到小鸟下坠并落到地面上

二叉树题目:翻转二叉树以匹配前序遍历

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;翻转二叉树以匹配前序遍历 出处&#xff1a;971. 翻转二叉树以匹配前序遍历 难度 5 级 题目描述 要求 给定一个二叉树的根结点 root \texttt{roo…

Redis--13--缓存一致性问题

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 缓存一致性问题1、先更新缓存&#xff0c;再更新DB方案二&#xff1a;先更新DB&#xff0c;再更新缓存方案三&#xff1a;先删缓存&#xff0c;再写数据库推荐1&…

【c】杨辉三角

下面介绍两种方法 1.利用上面性质的第五条&#xff0c;我们可以求各行各列的组合数 2.利用上面性质的第7条&#xff0c;我们可以用数组完成 下面附上代码 1. #include<stdio.h> void fact(int n ,int m )//求组合数 {long long int sum11;long long int sum21;int a…

C#中GDI+图形图像技术(Graphics类、Pen类、Brush类)

目录 一、创建Graphics对象 1.创建Pen对象 2.创建Brush对象 &#xff08;1&#xff09;SolidBrush类 &#xff08;2&#xff09;HatchBrush类 ​​​​​​​&#xff08;3&#xff09;LinerGradientBrush类 用户界面上的窗体和控件非常有用&#xff0c;且引人注目&#…

家政小程序源码,师傅竞价接单

家政预约上门服务小程序开发方案&#xff0c;php开发语言&#xff0c;前端是uniapp&#xff0c;有成品源码&#xff0c;可以二开&#xff0c;可以定制。 一家政小程序用户端功能&#xff1a;服务分类、在线预约、在线下单。 师傅端&#xff1a;在线接单&#xff0c;竞价&…

zabbix分布式监控平台从IPV4切换到IPV6之监控主机切换

现在有一套监控了海量服务器的zabbix分布式监控平台需整体在线从IPV4切换到IPV6&#xff0c;不能影响其原有的定制监控及视图。本文讲解了切换的第一步--监控主机切换。 一、zabbix分布式监控平台平台架构 本套zabbix分布式监控平台是一个多代理服务器分布式部署的典型传统架构…

rocketMQ介绍

作用 流量削峰系统解耦 功能 普通消息 同步消息异步消息事务消息顺序消息延迟消息订阅与发布消息过滤消息消费重试死信队列...... 架构设计 1个broker是1台实例每个broker都有从节点&#xff0c;便于做故障转移每个broker对应一个文件&#xff0c;存储数据&#xff1f;还是…

基于单片机设计的自动门控制系统

一、前言 自动门控制系统是一种智能化的应用&#xff0c;能够根据人体接近信号自动完成门的打开和关闭操作。在传统的门控系统中&#xff0c;通常需要人手动进行门的开启和关闭&#xff0c;不仅费时费力&#xff0c;还不够智能高效。 本项目采用了STC89C52作为主控芯片&#…

【高数:1 映射与函数】

【高数&#xff1a;1 映射与函数】 例2.1 绝对值函数例2.2 符号函数例2.3 反函数表示例2.4 双曲正弦sinh&#xff0c;双曲余弦cosh&#xff0c;双曲正切tanh 参考书籍&#xff1a;毕文斌, 毛悦悦. Python漫游数学王国[M]. 北京&#xff1a;清华大学出版社&#xff0c;2022. 例2…

1.1美术理论基础

一、光影 物体呈现在人们眼前的时候&#xff0c;不同的受光面其明暗变化以及物体的影子。 1.什么是黑白灰 在美术中黑白灰指亮面、灰面、暗面&#xff0c;属于素描的三大面&#xff0c;主要体验一个物体的整体寿光过程。普遍存在于各种艺术和设计领域。黑白灰作品的出现&#x…

一文搞懂系列——你真的了解如何生成动态库了吗?

引言 动态库的编译&#xff0c;这有什么难度&#xff0c;这不是手到擒来的事情吗&#xff1f;无非不就是&#xff1a; gcc -FPIC -shared -o libxxx.so *.o *.c 我若是提出这些需求场景&#xff0c;阁下又如何应对呢&#xff1f; 动态库A依赖其他部分提供的能力。但是却不…

LinkedList详解

LinkedList详解 LinkedList是List接口的一个主要的实现类之一&#xff0c;基于链表的实现。以java8为例来了解一下LinkedList的源码实现 继承关系 public class LinkedList<E> extends AbstractSequentialList<E> implements List<E>, Deque<E>,…

第十五届蓝桥杯模拟赛B组(第二期)C++

前言&#xff1a; 第一次做蓝桥模拟赛的博客记录&#xff0c;可能有很多不足的地方&#xff0c;现在将第十五届蓝桥杯模拟赛B组&#xff08;第二期&#xff09;的题目与代码与大家进行分享&#xff0c;我是用C做的&#xff0c;有好几道算法题当时自己做的也是一脸懵&#xff0c…

DELL EMC unity 存储系统日志收集方法

对于一些非简单的硬件故障&#xff0c;解决故障最有效、最快速的方法就是收集日志&#xff0c;而不是瞎搞。常见的乱搞方法就是 1. reimage系统‘ 2. 更换控制器&#xff1b;3&#xff0c; 重启。 本文详细介绍了图形界面GUI和命令行CLI下如何收集DELL EMC Unity日志的方法和常…

WPS导出的PDF比较糊,和原始的不太一样,将带有SVG的文档输出为PDF

一、在WPS的PPT中 你直接输出PDF可能会导致一些问题&#xff08;比如照片比原来糊&#xff09;/ 或者你复制PPT中的图片到AI中类似的操作&#xff0c;得到的照片比原来糊&#xff0c;所以应该选择打印-->高级打印 然后再另存为PDF 最后再使用AI打开PDF文件再复制到你想用…

挑选数据可视化工具:图表类型、交互功能与数据安全

作为一名数据分析师&#xff0c;我经常需要使用各种数据可视化工具来将数据以直观、清晰的方式呈现出来&#xff0c;以便更好地理解和分析。在市面上的众多可视化工具中&#xff0c;我根据实际需求和项目特点进行选择。本文将从以下几个角度对市面上的数据可视化工具进行对比&a…

flutter开发实战-轮播Swiper更改Custom_layout样式中Widget层级

flutter开发实战-轮播Swiper更改Custom_layout样式中Widget层级 在之前的开发过程中&#xff0c;需要实现卡片轮播效果&#xff0c;但是卡片轮播需要中间大、两边小一些的效果&#xff0c;这里就使用到了Swiper。具体效果如视频所示 添加链接描述 这里需要的效果是中间大、两边…

安装postgresql驱动及python使用pyodbc指定postgresql驱动调用postgresql

注&#xff1a;Python解释器版本(32位/64位)和postgresql驱动版本(32位/64位)需一致。 一、安装postgresql驱动 https://www.postgresql.org/ftp/odbc/versions/msi/ &#xff08;1&#xff09;32位&#xff1a; &#xff08;2&#xff09;64位&#xff1a; 双击安装。全程默…