Skip to content

Add federated non-inferiority meta-analysis task and the AcT analysis - #71

Open
legend5teve wants to merge 1 commit into
mainfrom
act-noninferiority-analysis
Open

legend5teve wants to merge 1 commit into
mainfrom
act-noninferiority-analysis

Conversation

@legend5teve

Copy link
Copy Markdown
Collaborator

Adds the r_noninferiority_meta task, which implements federated site-stratified non-inferiority meta-analysis in R. Each site returns a proportion difference and its standard error and the coordinating centre pools them by inverse-variance weighting using metafor. The module follows the layout of the existing r_* tasks, so tasks_validator picks it up by convention with no registration step. A task referencing it uses "model": "RNoninferiorityMeta".

Adds analysis/act-noninferiority, holding the single entry-point script behind Table 1, Table 2 and Table 3 of the accompanying manuscript together with the archived artifacts of the run that produced them. The task scripts are resolved from the location of run_analysis.R rather than from the working directory, so the run behaves the same way wherever it is started.

The archived run reproduced the per-arm counts published by the parent trial for all four outcomes, which is the provenance check the script enforces before it writes a table. The crude primary estimate is 2.1365 with a 95% interval of -2.6114 to 6.8844 and the site-stratified estimate is 2.1168 with -2.5325 to 6.7661. Across the ten specifications of the sensitivity grid the lower bound stays between -2.9544 and -2.0917.

The trial data are restricted and are not included. The script takes the extract as an argument and records neither its path nor its file name, and the per-site partitions are removed when the run ends, so the archived output holds only the tables and the log.

Adds .zenodo.json so the archived release carries the manuscript author list and description rather than metadata derived from commit history.

This lands ahead of a v0.2.0 release, which the Zenodo webhook will archive as a new version under concept DOI 10.5281/zenodo.20388959 for the manuscript's Code Availability section.

🤖 Generated with Claude Code

https://claude.ai/code/session_01QyV1P2jh8bSwD5W5mkCGzu

Adds the r_noninferiority_meta task, which implements federated
site-stratified non-inferiority meta-analysis in R. Each site returns a
proportion difference and its standard error and the coordinating centre
pools them by inverse-variance weighting using metafor. The module follows
the layout of the existing r_* tasks, so tasks_validator picks it up by
convention with no registration step. A task referencing it uses
"model": "RNoninferiorityMeta".

Adds analysis/act-noninferiority, holding the single entry-point script
behind Table 1, Table 2 and Table 3 of the accompanying manuscript together
with the archived artifacts of the run that produced them. The task scripts
are resolved from the location of run_analysis.R rather than from the
working directory, so the run behaves the same way wherever it is started,
and a misplaced task directory fails at startup with a clear error.

The archived run reproduced the per-arm counts published by the parent
trial for all four outcomes, which is the provenance check the script
enforces before it writes a table. The crude primary estimate is 2.1365
with a 95% interval of -2.6114 to 6.8844 and the site-stratified estimate
is 2.1168 with -2.5325 to 6.7661. Across the ten specifications of the
sensitivity grid the lower bound stays between -2.9544 and -2.0917.

The trial data are restricted and are not included. The script takes the
extract as an argument and records neither its path nor its file name, and
the per-site partitions are removed when the run ends, so the archived
output holds only the tables and the log.

Adds .zenodo.json so the archived release carries the manuscript author
list and description rather than metadata derived from commit history.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant