def findRelated(bed, outFile, cutoff, kinshipFile=None): bed = leapUtils._fixupBed(bed) keepArr = leapUtils.findRelated(bed, cutoff, kinshipFile) if (outFile is not None): print 'Printing output to', outFile f = open(outFile, 'w') for i, (fid,iid) in enumerate(bed.iid): if (keepArr[i]): f.write(fid + ' ' + iid + ' 0\n') else: f.write(fid + ' ' + iid + ' 1\n') f.close() return keepArr
def findRelated(bed, outFile, cutoff, kinshipFile=None): bed = leapUtils._fixupBed(bed) keepArr = leapUtils.findRelated(bed, cutoff, kinshipFile) if (outFile is not None): print 'Printing output to', outFile f = open(outFile, 'w') for i, (fid, iid) in enumerate(bed.iid): if (keepArr[i]): f.write(fid + ' ' + iid + ' 0\n') else: f.write(fid + ' ' + iid + ' 1\n') f.close() return keepArr
bed, phe = leapUtils.loadData(args.bfilesim, args.extractSim, args.pheno, args.missingPhenotype, loadSNPs=(args.eigen is None), standardize=True) #Read/create eigendecomposition if (args.eigen is not None): eigen = np.load(args.eigen) else: import eigenDecompose eigen = eigenDecompose.eigenDecompose(bed) #Compute relatedness if (args.relCutoff <= 0): keepArr = np.ones(bed.iid.shape[0], dtype=bool) else: if (args.related is None): bed2 = bed if (args.extractSim is not None or args.eigen is not None): bed2, _ = leapUtils.loadData(args.bfilesim, None, args.pheno, args.missingPhenotype, loadSNPs=True) keepArr = leapUtils.findRelated(bed2, args.relCutoff) else: keepArr = leapUtils.loadRelatedFile(bed, args.related) leapMain.calcH2(phe, args.prev, eigen, keepArr, args.numRemovePCs, args.h2coeff, args.lowtail == 1)
#Read bfilesim and pheno file for heritability computation bed, phe = leapUtils.loadData(args.bfilesim, args.extractSim, args.pheno, args.missingPhenotype, loadSNPs=(args.eigen is None), standardize=True) #Read/create eigendecomposition if (args.eigen is not None): eigen = np.load(args.eigen) else: import eigenDecompose eigen = eigenDecompose.eigenDecompose(bed) #Compute relatedness if (args.relCutoff <= 0): keepArr = np.ones(bed.iid.shape[0], dtype=bool) else: if (args.related is None): bed2 = bed if (args.extractSim is not None or args.eigen is not None): bed2, _ = leapUtils.loadData(args.bfilesim, None, args.pheno, args.missingPhenotype, loadSNPs=True) keepArr = leapUtils.findRelated(bed2, args.relCutoff) else: keepArr = leapUtils.loadRelatedFile(bed, args.related) #Add significant SNPs as fixed effects covar = None if (args.resfile is not None): bed_fixed, _ = leapUtils.loadData(args.bfile, args.extract, args.pheno, args.missingPhenotype, loadSNPs=True) covar = leapUtils.getSNPCovarsMatrix(bed_fixed, args.resfile, args.pthresh, args.mindist) print 'using', covar.shape[1], 'SNPs as covariates' #Read covar file if (args.covar is not None): covarsMat = leapUtils.loadCovars(bed, args.covar) print 'Read', covarsMat.shape[1], 'covariates from file' if (covar is None): covar = covarsMat