Menü der Dokumentation
- Startseite
- Dokumentation
- Reproduzierbarkeitsprüfungen
- Claim ↔ Code Traceability
Zahlen und Abbildungen zum Code zurückverfolgen
„Eine AUROC von 0,91“ lässt sich nur prüfen, wenn ein Skript den Wert berechnet hat und eine Datei ihn enthält. Geben Sie jeder Zahl einen Weg zurück zum Code.
Zuletzt aktualisiert
In Ihrem Bericht
- Bereich
- Manuscript
- Prüfung
- Claim ↔ Code Traceability
Warum das wichtig ist
Selten zweifeln Lesende an einem ganzen Manuskript, meist an einer Zahl. Die hilfreiche Antwort ist ein Weg: Dieser Befehl hat mit dieser Eingabe diese Datei geschrieben, und darin steht 0,91.
Aussagen im Text mit den zugrunde liegenden Ergebnissen zu verknüpfen und die Rohdaten hinter Abbildungen zu speichern, gehört zu den Ten Simple Rules for Reproducible Computational Research. Abbildungen, die nur als Bild existieren, und von Hand aus dem Terminal kopierte Metriken haben keinen solchen Weg.
So sieht gute Praxis aus
- Berichtete Zahlen schreiben Skripte in Dateien; nichts wird von Hand aus Terminal oder Notebook-Ausgabe kopiert.
- Ergebnisdateien heißen wie das, was das Manuskript berichtet, etwa
table2_auroc.jsonoderfig3_fold_change.csv. - Die Daten hinter jeder Abbildung liegen neben dem Bild, sodass sich Werte ohne neues Plotten ablesen lassen.
- Gerundet wird im Manuskript; gespeicherte Ergebnisse behalten die volle Genauigkeit.
- Jede Ergebnisdatei nennt die Seeds und die Zahl der Läufe hinter ihrem Wert.
So beheben Sie es
Python. Schreiben Sie jede berichtete Zahl in eine nach der Aussage benannte Datei, mit Seeds und Läufen:
import json
from pathlib import Path
import numpy as np
seeds = [0, 1, 2, 3, 4]
aurocs = [evaluate(train_model(s), test_set) for s in seeds] # your code
out = Path("results/claims/table2_auroc.json")
out.parent.mkdir(parents=True, exist_ok=True)
out.write_text(json.dumps({
"claim": "Table 2, held-out cohort AUROC",
"mean": round(float(np.mean(aurocs)), 3),
"sd": round(float(np.std(aurocs, ddof=1)), 3),
"n_runs": len(seeds),
"seeds": seeds,
"script": "analysis/evaluate_cohort.py",
}, indent=2))R. Speichern Sie die Tabelle hinter jeder Abbildung, nicht nur das Bild:
fold_change <- summarise_fold_change(counts, design) # your analysis
dir.create("results/figure3", recursive = TRUE, showWarnings = FALSE)
readr::write_csv(fold_change, "results/figure3/fold_change.csv")
ggplot2::ggsave("results/figure3/figure3.pdf", plot_fold_change(fold_change))Verweisen Sie auf die Dateien. Eine Tabelle „Ergebnisse“ im README mit Aussage, Befehl und Ausgabepfad führt Lesende direkt dorthin.
Verwandte Themen
Diese Prüfung für Ihr Repository
Fügen Sie einer Analyse Ihr Manuskript hinzu, um Befunde und Korrekturvorschläge zu dieser Prüfung zu erhalten.