#!/usr/bin/env python
# -*- coding: utf-8 -*-
import os
import sys
import scipy.stats as stats
in1=sys.argv[1]
ou1=sys.argv[2]
#def trimdata(inputD,outputf):
def trimdata(inputD):
# inputD 第一列case/control ; 第二列 sample number ; 第三列 sample ID; 输入形式是文本
# outputf 输出形式 文本
casen=0
controln=0
case_T=0
case_G=0
case_GT=0
con_T=0
con_G=0
con_GT=0
patientn=0
Gn=0
Tn=0
GTn=0
# outc=open(outputf,'w')
casel=[]
controll=[]
with open(inputD,'r') as f:
fi=f.readlines()
for fil in fi[1:]:
filc=fil.strip().split("\t")
types=filc[0]
genotyp=filc[2]
if types == "case":
casen=casen+1
if genotyp == "G":
case_G=case_G+1
Gn=Gn+1
elif genotyp == "T":
case_T=case_T+1
Tn=Tn+1
elif genotyp == "GT":
case_GT=case_GT+1
con_GT=con_GT+1
elif types == "control":
controln=controln+1
if genotyp == "G":
con_G=con_G+1
Gn=Gn+1
elif genotyp == "T":
con_T=con_T+1
Tn=Tn+1
elif genotyp == "GT":
con_GT=con_GT+1
GTn=GTn+1
casel=[case_G,case_T,case_GT]
controll=[con_G,con_T,con_T]
r, p=stats.pearsonr(casel,controll)
conc=str(case_G)+"\t"+str(case_T)+"\t"+str(case_GT)+"\t"+str(con_G)+"\t"+str(con_T)+"\t"+str(con_T)+"\t"+str(p)+"\n"
return conc
# outc.write("G\tT\tGT\n")
# outc.write("case\t"+str(case_G)+"\t"+str(case_T)+"\t"+str(case_GT)+"\n")
# outc.write("control\t"+str(con_G)+"\t"+str(con_T)+"\t"+str(con_GT)+"\n")
if __name__ == "__main__":
inputf=in1
outputf=open(ou1,'w')
outcon=trimdata(inputf)
trimdata.write(outcon)
python31
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 原码、反码、补码 1)如何计算补码?规则: 正数:原码 = 反码 = 补码负数:反码 = 符号位不变,其他位取反补...
- 可以通过logging.Formatter指定日志的输出格式,这个参数可以输出很多有用的信息,如下: ♦ %(n...
- 31Code: print("You enter a dark room with two doors . Do ...