本文小编为大家详细介绍“R语言99%阈值置信区间是怎么计算的”,内容详细,步骤清晰,细节处理妥当,希望这篇“R语言99%阈值置信区间是怎么计算的”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
R语言代码:
###########genotype############################# genotype<-function(){ count<-0 if (population_structure=="RIL"){ x<-runif(1) if (x<=0.5){ count<-1 }else{ count<-0 } }else{ for(i in 1:2){ x<-runif(1) if (x<=0.5){ number<-0.5 }else{ number<-0 } if(number == 0.5){ count<- count+0.5 } } } return(count) } ############################################################ ###########caluclate of genotype ratio######################### individuals_genotype<-function(number_of_total_individuals){ ratio_of_genotype<-c() for(i in 1:number_of_total_individuals){ ratio_of_genotype<-c(ratio_of_genotype,genotype()) } return(mean(ratio_of_genotype)) } ############################################################ ###########SNP_index_caluclation######################### snp_index<-function(read_depth,ratio_of_genotype_in_the_population){ x1<-rbinom(1,read_depth,ratio_of_genotype_in_the_population) return(x1/read_depth) } ############################################################ #################################### #################################### Arg<-commandArgs(TRUE) ###########input############################################### population_structure<-"F2" individual_analysis<- c(Arg[1]) reprication<-c(Arg[2]) filter_value<-c(Arg[3]) depth_analysis<-c(1:300) ###########input############################################### for (key_individual in individual_analysis){ individual_number<-key_individual depth_data<-c() p_h_data_95<-c() p_h_data_99<-c() for (key_depth in depth_analysis){ depth_data<-c(depth_data,key_depth) depth<-key_depth sum_snp_index<-c() for(i in 1:reprication){ ##########gene_frequency###################### ratio_of_genotype_in_the_population<-individuals_genotype(key_individual) a_snp_index<-snp_index(key_depth,ratio_of_genotype_in_the_population) if(a_snp_index >= filter_value){ sum_snp_index<-c(sum_snp_index,a_snp_index) } ##########gene_frequency###################### } order_sum_snp_index<-sort(sum_snp_index) length_sum_snp_index<-length(sum_snp_index) ##########snp_index_probabirity_0.05###################### snp_cutoff_up_0.95<-order_sum_snp_index[ceiling(0.95*length_sum_snp_index)] p_h_data_95<-c(p_h_data_95,snp_cutoff_up_0.95) ##########snp_index_probabirity_0.05###################### ##########snp_index_probabirity_0.01###################### if (ceiling(0.99*length_sum_snp_index)<length_sum_snp_index){ snp_cutoff_up_0.99<-order_sum_snp_index[ceiling(0.99*length_sum_snp_index)] }else{ snp_cutoff_up_0.99<-order_sum_snp_index[length_sum_snp_index] } p_h_data_99<-c(p_h_data_99,snp_cutoff_up_0.99) ##########snp_index_probabirity_0.01###################### } FINAL_DATA<-data.frame(DEPTH=depth_data,P_H_95=p_h_data_95,P_H_99=p_h_data_99) table_name<-paste("./",individual_number,sep="") table_name<-paste(table_name,"individuals.txt",sep="") write.table(FINAL_DATA,table_name,sep="\t", quote=F, append=F,row.name=F) }
读到这里,这篇“R语言99%阈值置信区间是怎么计算的”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。