This function calculates the power and sample size in the presence of error-prone diagnostic tests and self-reported outcomes when both sensitivity and specificity are unknown. In this case, a subject of the subjects receive both gold standard test and error-prone test at each non-missing visit. The remaining subjects receive only error-prone test. Here, for the validation set, NTFP refers to no test after first positive result from the gold standard test. Both sensitivity and specificity are treated as unknown parameters in this setting.

1 2 3 | ```
icpower.val(HR, sensitivity, specificity, survivals, N = NULL, power = NULL,
rhoval, rho = 0.5, alpha = 0.05, pmiss = 0, design = "MCAR",
designval = "MCAR", negpred = 1)
``` |

`HR` |
hazard ratio under the alternative hypothesis. |

`sensitivity` |
the sensitivity of test. |

`specificity` |
the specificity of test |

`survivals` |
a vector of survival function at each test time for baseline(reference) group. Its length determines the number of tests. |

`N` |
a vector of sample sizes to calculate corresponding powers. If one needs to calculate sample size, then set to NULL. |

`power` |
a vector of powers to calculate corresponding sample sizes. If one needs to calculate power, then set to NULL. |

`rhoval` |
proportion of subjects in validation set. |

`rho` |
proportion of subjects in baseline(reference) group. |

`alpha` |
type I error. |

`pmiss` |
a value or a vector (must have same length as survivals) of the probabilities of each test being randomly missing at each test time. If pmiss is a single value, then each test is assumed to have an identical probability of missingness. |

`design` |
missing mechanism: "MCAR" or "NTFP". |

`designval` |
missing mechanism of validation set: "MCAR" or "NTFP". |

`negpred` |
baseline negative predictive value, i.e. the probability of being truely disease free for those who were tested (reported) as disease free at baseline. If baseline screening test is perfect, then negpred = 1. |

result: a data frame with calculated sample size and power

IR1 and IR2: calculated unit Fisher information matrices for each group in non-validation set

IV1 and IV2: calculated unit Fisher information matrices for each group in validation set

1 2 3 4 | ```
surv <- exp(log(0.9)*(1:8)/8)
pow <- icpower.val(HR = 2, sensitivity = 0.55, specificity = 0.99,
survivals = surv, power = 0.9, rhoval=0.05, design= "NTFP", designval = "NTFP")
pow$result
``` |

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.