コード例 #1
0
ファイル: replicator.py プロジェクト: mossmatters/DPLSim
def rep_case_control(rep_opt,logger=None):
	"""Given the gridding scheme options, create simuPOP files in the given subdirectories."""	
	simuOpt.setOptions(alleleType='binary', optimized=True)
	from simuPOP import *

	cc_opt = simuOpt.Params(singleGeneModel.options)
	
	for maf in xrange(len(rep_opt.MAFs)):
		for maf_rep in xrange(rep_opt.MAF_replicates):
			
			maf_dir = "MAF_%.2f_%d" %(rep_opt.MAFs[maf],maf_rep+1)
			cc_opt.expandPop = "%s/%s.pop" % (maf_dir,maf_dir)
			cc_opt.pop = 	loadPopulation(cc_opt.expandPop)
			logger.info("Expanded population %s loaded!" %cc_opt.expandPop)

			for cc in xrange(len(rep_opt.CCs)):
				for cc_rep in xrange(rep_opt.CC_replicates):
					cc_dir = "cc_%d_%d" % (rep_opt.CCs[cc],cc_rep+1)
					for wtr in xrange(len(rep_opt.WTRs)):
						for wtr_rep in xrange(rep_opt.WTR_replicates):
							wtr_dir = "WTR_%.2f_%d" % (rep_opt.WTRs[wtr],wtr_rep+1)
							for grr in xrange(len(rep_opt.GRRs)):
								for grr_rep in xrange(rep_opt.GRR_replicates):
									grr_dir = "GRR_%.2f_%d" % (rep_opt.GRRs[grr],grr_rep+1)
									
									dirpath = path_maker(maf_dir,cc_dir,wtr_dir,grr_dir)
									
									cc_opt.wtr = rep_opt.WTRs[wtr]
									cc_opt.GRR = rep_opt.GRRs[grr]
									cc_opt.numControls= rep_opt.CCs[cc]
									cc_opt.sampledPop = os.path.join(dirpath,"sample.pop")
									pop = singleGeneModel.penetrance(cc_opt,logger)
									case_control_dataset.save(pars.sampledPop)
									logger.info("Sampled population saved at %s" %pars.sampledPop)
コード例 #2
0
def single_mode(pipeline_pars,logger=None):
	if pipeline_pars.download:
		download_pars=downloadData(logger)
	
	if pipeline_pars.init:
		init_pop_pars =getInitPop(logger)
	
	if pipeline_pars.expand:
		expand_pop_pars = getExpandPop(logger)
	
	if pipeline_pars.penetrance:
		case_control_pars = getCaseControl(logger)
		if pipeline_pars.expand:
			if expand_pop_pars.filename == case_control_pars.expandPop:
				case_control_pars.pop = expand_pop_pars.expandPop
				logger.info("Using expandPop from simuGWAS!")
			else:
				case_control_pars.pop = simuPOP.loadPopulation(case_control_pars.expandPop)
				logger.info("Expanded population %s loaded!" %case_control_pars.expandPop)
		if os.path.isfile(case_control_pars.sampledPop):
			logger.info("Skipping case control dataset, file %s exists." %case_control_pars.sampledPop)
		else:
			case_control_dataset = singleGeneModel.penetrance(case_control_pars,logger)	
			case_control_dataset.save(case_control_pars.sampledPop)
			logger.info("Sampled population saved at %s" %case_control_pars.sampledPop)

	if pipeline_pars.format:
		format_filenames = get_formatters(logger)
	
	if pipeline_pars.cline:
		cline_filenames = get_cline(logger)