from causalforge.metrics import eps_ATE_diff, PEHE_with_ite
import numpy as np
experiment_ids = [1,10,400]
eps_ATE_tr, eps_ATE_te = [], []
eps_PEHE_tr, eps_PEHE_te = [] , []
for idx in experiment_ids:
t_tr, y_tr, x_tr, mu0tr, mu1tr = T_tr[:,idx] , YF_tr[:,idx], X_tr[:,:,idx], mu_0_tr[:,idx], mu_1_tr[:,idx]
t_te, y_te, x_te, mu0te, mu1te = T_te[:,idx] , YF_te[:,idx], X_te[:,:,idx], mu_0_te[:,idx], mu_1_te[:,idx]
# Train your causal method on train-set ...
bcaus_dr.fit(x_tr,t_tr,y_tr)
# Validate your method test-set ...
ATE_truth_tr = (mu1tr - mu0tr).mean()
ATE_truth_te = (mu1te - mu0te).mean()
ITE_truth_tr = (mu1tr - mu0tr)
ITE_truth_te = (mu1te - mu0te)
eps_ATE_tr.append( eps_ATE_diff( bcaus_dr.predict_ate(x_tr,t_tr,y_tr), ATE_truth_tr) )
eps_ATE_te.append( eps_ATE_diff( bcaus_dr.predict_ate(x_te,t_te,y_te), ATE_truth_te) )