SPB Git

spb/wp29_uqo

Public
702 B · 11 lines python
1# Exact E[V_CR0]/Var(ybar) under the DGP vs Monte Carlo estimate (z-score with MC SE)2import json, numpy as np, pandas as pd3res=json.load(open("out/results.json")); d=pd.read_csv("data/design.csv")4for _,r in d.iterrows():5    n=np.array([int(x) for x in r.cluster_sizes.split("|")]); G=len(n); N=n.sum(); icc=r.icc6    gid=np.repeat(np.arange(G),n); Z=(gid[:,None]==np.arange(G)).astype(float)7    Sig=icc*Z@Z.T+(1-icc)*np.eye(N); A=Z.T-np.outer(n,np.ones(N))/N8    ev0=np.trace(A@Sig@A.T)/N**2; var=(icc*np.sum(n**2)+(1-icc)*N)/N**29    k=f"cr0_G{G}_icc{icc:.1f}"; mc=res["rel_bias_var"][k]; se=res["mc_se_rel_bias_var"][k]10    print(k, "exact %.4f  MC %.4f  z=%.2f"%(ev0/var, mc, (mc-ev0/var)/se))11
Files · main
Menu

Theme