# paper_alg1

Algorithm 1 Estimating and Evaluating an Individualized Treatment Rule (ITR) using the Same Experimental Data via Cross-Validation

Steps in Algorithm 1 | Function/object | Output
--- | --- | ---
1. Split data into \(K\) random subsets of equal size \(\left(\mathbf{Z}_1, \cdots, \mathbf{Z}_k\right)\) | `caret::createFolds()` within `estimate_itr()` | dataframe
2. k \(\leftarrow\) 1 |  |
3. while \(k \leq K\) do | for loop in `fit_itr()` within `estimate_itr()` |
4. \(\quad \mathbf{Z}_{-k}=\left[\mathbf{Z}_1, \cdots, \mathbf{Z}_{k-1}, \mathbf{Z}_{k+1}, \cdots, \mathbf{Z}_K\right]\) | `trainset` object | training data
5. \(\hat{f}_{-k}=F\left(\mathbf{Z}_{-k}\right)\) | modulized functions for each ML algoritms (e.g., `run_causal_forest()`) within `estimate_itr()` | ITR (binary vector)
6. \(\hat{\tau}_k=\hat{\tau}_{\hat{f}_{-k}}\left(\mathbf{Z}_k\right)\) | `compute_qoi()` function within `evaluate_itr()` | metrics for fold \(k\)
7. \(k \leftarrow k+1\) |  |
8. end while |  |
9.return \(\hat{\tau}_F=\frac{1}{K} \sum_{k=1}^K \hat{\tau}_k\), \(\widehat{\mathbb{V}\left(\hat{\tau}_F\right)}=v\left(\hat{f}_{-1}, \cdots, \hat{f}_{-k}, \mathbf{Z}_1, \cdots, \mathbf{Z}_K\right)\) | `PAPEcv()` `PAPDcv()` and `getAupecOutput()` functions inside `compute_qoi()` function within `evaluate_itr()` | averaging the results across folds