yeepee-ctr / v21graph2 /evalrho.py
Eric-Yyvuw's picture
sync: 2026-11-02 06:10 Dublin
db2fca9 verified
Raw History Blame Contribute Delete
1.04 kB
"""helpers: to_merged(x_v21seq_order)->array in merged order; rho(x) vs EN etc (sample 200k, pearson of ranks like fitg)"""
import sys,os,numpy as np,polars as pl; sys.dont_write_bytecode=True
sys.path.insert(0,'/workspace/huawei/v21fit'); os.chdir('/workspace/huawei/v21graph2')
from scipy.stats import rankdata
H='/workspace/huawei/'; O='/workspace/huawei/v21graph2/out/'
mrow=pl.read_parquet(H+'erbrown/merged.parquet',columns=['rowid'])['rowid'].to_list()
EN=np.load(H+'erbrown/w10an/eb_new_rank.npy'); rid=np.load(O+'tab_eval.npz')['rowid'].astype(str)
nr=lambda x:(rankdata(x)-1)/(len(x)-1)
def to_merged(x):
gm=pl.DataFrame({'rowid':rid,'p':np.asarray(x,np.float64)}).join(pl.DataFrame({'rowid':mrow}),on='rowid',how='right',maintain_order='right')['p'].to_numpy(); assert np.isfinite(gm).all(); return gm
idx=np.random.RandomState(0).choice(len(EN),200000,replace=False)
G7=np.load('/workspace/huawei/v21graph/out/graph_eval_merged_rank.npy').astype(np.float64)
def rho(xm,ref=EN): return np.corrcoef(nr(xm)[idx],ref[idx])[0,1]