Szukaj…


Wprowadzenie

„Powtarzalność” oznacza, że ktoś inny (być może ty w przyszłości) może powtórzyć kroki, które wykonałeś i uzyskać ten sam rezultat. Zobacz odtwarzalny widok zadania badawczego .

Uwagi

Aby uzyskać powtarzalne wyniki, wszystkie źródła zmienności muszą zostać naprawione. Na przykład, jeśli używany jest (pseudo) generator liczb losowych, ziarno musi zostać naprawione, jeśli chcesz odtworzyć te same wyniki. Innym sposobem zmniejszenia zmienności jest połączenie tekstu i obliczeń w tym samym dokumencie.

Bibliografia

Odtwarzalność danych

dput() i dget()

Najłatwiejszym sposobem udostępniania (najlepiej małej) ramki danych jest użycie podstawowej funkcji dput() . Wyeksportuje obiekt R w postaci zwykłego tekstu.

Uwaga: przed wykonaniem poniższych przykładowych danych upewnij się, że znajdujesz się w pustym folderze, w którym możesz pisać. Uruchom getwd() i przeczytaj ?setwd jeśli chcesz zmienić foldery.

dput(mtcars, file = 'df.txt')

Następnie każdy może załadować precyzyjny obiekt R do swojego GlobalEnvironment za pomocą funkcji dget() .

df <- dget('df.txt')

W przypadku większych obiektów R istnieje wiele sposobów ich powtarzalnego zapisywania. Zobacz Dane wejściowe i wyjściowe .

Odtwarzalność opakowania

Odtwarzalność pakietu jest bardzo częstym problemem przy odtwarzaniu części kodu R. Gdy różne pakiety są aktualizowane, niektóre połączenia między nimi mogą się zerwać. Idealnym rozwiązaniem tego problemu jest odtworzenie obrazu maszyny piszącej kod R na komputerze w dniu, w którym kod został napisany. A oto pakiet checkpoint .

Począwszy od 17.09.2014 autorzy pakietu wykonują codzienne kopie całego repozytorium pakietu CRAN do własnego repozytorium lustrzanego - Microsoft R Archived Network. Aby uniknąć problemów z odtwarzalnością pakietu podczas tworzenia odtwarzalnego projektu R, wszystko czego potrzebujesz to:

  1. Upewnij się, że wszystkie twoje pakiety (i wersja R) są aktualne.
  2. Dołącz do kodu wiersz checkpoint::checkpoint('YYYY-MM-DD') .

checkpoint utworzy katalog .checkpoint w twoim katalogu R_home ( "~/" ). W tym katalogu technicznym zainstaluje wszystkie pakiety, które są używane w twoim projekcie. Oznacza to, że checkpoint przegląda wszystkie pliki .R w katalogu projektu w celu pobrania wszystkich wywołań library() lub require() i zainstalowania wszystkich wymaganych pakietów w takiej formie, w jakiej istniały w CRAN w określonym dniu.

PRO Jesteś wolny od problemu z odtwarzalnością pakietu.
CONTRA Dla każdej określonej daty musisz pobrać i zainstalować wszystkie pakiety używane w określonym projekcie, który chcesz odtworzyć. To może chwilę potrwać.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow