예제 #1
0
파일: shSurface.py 프로젝트: airanmehr/bio
def plotSurf():
    from scipy import interpolate
    a=pd.read_pickle(utl.outpath+'real/real.maxLikelihoods.df')
    idx=(a.s.abs()*a.h.abs()*(a.alt-a.null)).sort_values().index[-1]
    R=pd.DataFrame(pd.read_pickle(utl.outpath+'real/real.replicates.df').loc[idx]).T
    SH=dta.getSH()
    ARGS=[(R,)+sh for sh in SH]
    likelihoods=pd.concat(map(mkv.computeLikelihoodReal,ARGS),axis=1);likelihoods.columns.names=['s','h']


    fig = plt.figure()
    ax = fig.gca(projection='3d')
    df=pd.concat([pd.Series(z[1].loc[z[0]].values,index=z[1].loc[z[0]].index,name=z[0]) for z in b.groupby(level=0)],axis=1)
    Z=df.values
    # Z[Z==Z.min()]=-1e3
    X=np.tile(df.index.values[:,None],Z.shape[1])
    Y=np.tile(df.columns.values[:,None],Z.shape[0]).T
    Z.min()
    Z.max()

    nn = 401;
    xi = np.linspace(-1.0, 2.0, 10);
    yi = np.linspace(-0.5, 0.5, nn);

    f = interpolate.interp2d(X,Y,Z,kind='cubic')
    zi = f(xi, yi)
    [xi, yi] = np.meshgrid(xi, yi);
    # surf = ax.plot_surface(X, Y, Z, cmap=mpl.cm.autumn)
    surf = ax.plot_surface(xi, yi, zi, cmap=mpl.cm.autumn)
    fig.colorbar(surf, shrink=0.5, aspect=5)

    # surf(xi, yi, zi, 'LineStyle', 'none', 'FaceColor', 'interp')
    plt.show()
예제 #2
0
파일: Utils.py 프로젝트: airanmehr/bio
def SNPscan(R,regAlpha,numProcess):
    reload(dta)
    SH=dta.getSH(sparse=True)
    ARGS=[(R,)+sh for sh in SH]
    print pd.DataFrame(SH)
    print R
    if numProcess==1:
        likelihoods=pd.concat(map(mkv.computeLikelihoodReal,ARGS),axis=1);likelihoods.columns.names=['s','h']
    else:
        pool=Pool(numProcess)
        likelihoods=pd.concat(pool.map(mkv.computeLikelihoodReal,ARGS),axis=1);likelihoods.columns.names=['s','h']
        pool.terminate()
    del ARGS
    gc.collect()
    likelihoods=mkv.maxLikelihood(likelihoods,regAlpha=regAlpha)
    gc.collect()
    return likelihoods