def real(): G = pd.read_pickle(utl.outpath + 'real/real.replicates.uptoF59.maxLikelihoods.regularized.LowCovRemoved.df'); G = G.s * (G.alt - G.null) R = pd.read_pickle(utl.outpath + 'real/real.replicates.uptoF59.df'); F=pd.read_pickle(utl.outpath+'real/negativeControl.Simulations.maxLikelihoods.regularized.df');F=F.s*(F.alt-F.null) kde=utl.getDensity(F,width=100) q = np.sort(np.append(np.linspace(0.0, 1, 100)[:-1], np.linspace(0.999, 1, 1000))) qq=pd.concat([utl.getQantilePvalues(G,kde,quantiles=q),utl.getQantilePvalues(F,kde,quantiles=q)],axis=1);qq.columns=['data','null']; pplt.QQPval(qq, fname=utl.paperFiguresPath + 'qq.pdf') reload(pplt)
def plotSNPPval(out): scores = rutl.loadScores() kde = utl.getDensity(scores, width=1); pval = utl.getPvalKDE(out.sort_values(ascending=False).iloc[:1200], kde) print pval.sort_values() pval[pval >= 3].size df = pd.DataFrame(pval) df = pd.concat([df[df.index.get_level_values('CHROM') == ch] for ch in ['X', '2L', '2R', '3L', '3R', '4', '2LHet', '2RHet', '3LHet', '3RHet', 'XHet']]) fig = plt.figure(figsize=(7, 2), dpi=300); pplt.Manhattan(df, fig=fig, markerSize=2, ticksize=8, sortedAlready=True); [pplt.setSize(ax, 8) for ax in fig.get_axes()]
def computeLocalPval(x,i): wins=np.array([200])*1000 df=[] for i in X.index: res=[] for pad in wins: x=X[(X.index>=i-pad) & (X.index<=i+pad)] kde=utl.getDensity(x[x.index != i]) res+=[utl.getPvalKDE(pd.Series(x.loc[i]),kde)[0]] df+=[pd.Series(res,index=wins,name=i)] df=pd.DataFrame(df) pd.concat([df.apply(lambda x:x.idxmax(),1),df.max(1)],1).plot.scatter(x=0,y=1) a['pval']=df.max(1).values o=a[a.pval>a.pval.quantile(0.999)] pplt.Manhattan(a,Outliers=o) df.max(1).plot() y=utl.scan3way(x,winsize=10,f=np.mean) x.sort_values() y.sort_values()
def Simulation(): a=pd.read_pickle('{}ROC/{}.df'.format(utl.outpath, 'COMALE'));a=a.s*(a.alt-a.null); pos=a.loc[(0.1,'COMALE',0.1,1,0)];neg=a.loc[(0.005,'COMALE',0.0,-1,0)] F=pd.read_pickle(utl.outpath+'real/negativeControl.Simulations.maxLikelihoods.regularized.df').loc[0];F=F.s*(F.alt-F.null) q=np.linspace(0,1,1200) kde=utl.getDensity(F,width=50) qq=pd.concat([utl.getQantilePvalues(pos,kde,quantiles=q),utl.getQantilePvalues(neg,kde,quantiles=q)],axis=1);qq.columns=['data','null']; pplt.QQPval(qq) plt.savefig(utl.paperFiguresPath + 'qqsim.pdf')