Ich habe einige R-Code für eine Dissertation geschrieben, sich auf einige externe Pakete (z. B. plyr
und reshape
) und Schreiben ein paar relativ einfache Inline-C++ - Funktionen mit inline
und RcppArmadillo
.Wie stelle ich sicher, dass R/Rcpp-Code reproduzierbar ist ("distributable")?
Ich möchte sicherstellen, dass es "wie es ist" auf anderen Computern als meinem eigenen (Win64), für Zwecke der Forschung Reproduzierbarkeit durchgeführt werden kann.
Meine Frage: Ich nehme an Code enthalten die erforderlichen Pakete für die Installation, würden die RcppArmadillo
(und Rcpp
und inline
) Pakete ausreichend sein, um die Funktionen in RcppArmadillo
geschrieben kompilieren, oder würde der Endanwender benötigen Systempfade ändern zum Kompilieren auf seiner Windows-Maschine? Wenn nicht, ist es möglich/empfohlen, die kompilierten Funktionen von meinem Ende zu speichern und in den R-Code zu integrieren, den ich versende?
Auch im unwahrscheinlichen Fall, dass der Code einige Zeit später ausgeführt werden sollte (ein paar Jahre), ist es ausreichend, eine vollständige R-Installation mit den relevanten Paketen in ihrer aktuellen Version zu integrieren, um den Code zu erstellen " zukunftssicher"?
Ich hoffe, die Frage ist klar.
Danke, mir war der Unterschied zwischen "reproduzierbar" und "verteilbar" nicht bewusst. Wie du wahrscheinlich vermutet hast, meinte ich Letzteres. Ich erwartete halb, dass die Antwort "ein Paket erstellen" sein würde, was für mich scheint, meinen Code ein bisschen zu sehr zu würdigen, aber wenn das die einfachste, am meisten dokumentierte Lösung ist, werde ich das tun. – MatteoS
Btw, danke für 'Rcpp' und' RcppArmadillo' – MatteoS
Ich habe mich für die Unterscheidung von "reproduzierbar" und "verteilbar" entschieden. Ich wusste es auch nicht. –