Uaktualnianie R z R (w Windows) – przy użyciu pakietu {installr}

Uaktualnianie R w Windows nie jest łatwe. Chociaż R FAQ oferuje wskazówki, niektórzy użytkownicy mogą woleć po prostu uruchomić polecenie, aby zaktualizować swój R do najnowszej wersji. O to właśnie chodzi w nowym pakiecie {installr}.

Pakiet {installr} oferuje zestaw funkcji R do instalacji i aktualizacji oprogramowania (obecnie tylko w systemie operacyjnym Windows), ze szczególnym uwzględnieniem samego R. Aby zaktualizować R, wystarczy uruchomić następujący kod:

# installing/loading the package:if(!require(installr)) {install.packages("installr"); require(installr)} #load / install+load installr# using the package:updateR() # this will start the updating process of your R installation. It will check for newer versions, and if one is available, will guide you through the decisions you'd need to make.

Wykonanie tej funkcji spowoduje wykonanie następujących czynności:

  • Sprawdź, jaka jest najnowsza wersja R. Jeśli aktualnie zainstalowana wersja R jest aktualna, funkcja kończy działanie (i zwraca FALSE)

  • Jeśli dostępna jest nowsza wersja R, zostaniesz zapytany, czy przejrzeć NEWS najnowszej wersji R – w celu podjęcia decyzji, czy zainstalować
    najnowszą wersję R, czy nie.

  • Jeśli sobie tego życzysz – funkcja pobierze i zainstaluje najnowszą wersję R. (

  • Po zakończeniu instalacji należy nacisnąć „any-key”, a funkcja przystąpi do kopiowania wszystkich pakietów ze starej (aktualnej) instalacji R, do nowszej instalacji R.

  • Wtedy możesz wymazać wszystkie pakiety z twojej starej instalacji R.

  • Po tym jak twoje pakiety zostaną przeniesione (a stare ewentualnie wymazane), otrzymasz opcję aktualizacji wszystkich swoich pakietów w nowej wersji R.

  • Na koniec – możesz otworzyć nowe Rgui i zamknąć bieżącą sesję starego R. (Jest to trochę błędne w wersji 0.8, ale zostało naprawione w wersji 0.8.1)

Jeśli wiesz, że chcesz uaktualnić R, i chcesz, aby pakiety zostały przeniesione (nie skopiowane, PRZENIESIONE), możesz po prostu uruchomić:

# installing/loading the package:if(!require(installr)) { install.packages("installr"); require(installr)} #load / install+load installrupdateR(F, T, T, F, T, F, T) # install, move, update.package, quit R.

Ponieważ różne kroki są podzielone na poszczególne funkcje, możesz również wybrać, co uruchomić używając odpowiedniej funkcji:

# installing/loading the package:if(!require(installr)) { install.packages("installr"); require(installr)} #load / install+load installr# step by step functions:check.for.updates.R() # tells you if there is a new version of R or not.install.R() # download and run the latest R installercopy.packages.between.libraries() # copy your packages to the newest R installation from the one version before it (if ask=T, it will ask you between which two versions to perform the copying)

Jeśli lubisz korzystać z systemu bibliotek globalnych, możesz uruchomić następujące czynności w starym R:

# installing/loading the package:if(!require(installr)) { install.packages("installr"); require(installr)} #load / install+load installrupdateR(F, T, F, F, F, F, T) # only install R (if there is a newer version), and quits it.

A następnie uruchomić następujące czynności w nowej wersji R:

source("https://www.r-statistics.com/wp-content/uploads/2010/04/upgrading-R-on-windows.r.txt")New.R.RunMe()

Pakiet {installr} oferuje również funkcje do instalowania różnych innych programów w systemie Windows. Funkcje te obejmują: install.pandoc (o którym była mowa ostatnio na tym blogu), install.git, install.Rtools, install.MikTeX, install.RStudio oraz ogólne funkcje install.URL i install.packages.zip. Możesz je zobaczyć dokładniej objaśnione w podręczniku referencyjnym pakietu.

Poprosiny o nowe funkcje, raporty o błędach – i twoja pomoc w ulepszaniu pakietu

Możesz zobaczyć najnowszą wersję installr na githubie, gdzie możesz także zgłaszać raporty o błędach (możesz także po prostu zostawić komentarz w tym poście). Ponieważ jest to mój pierwszy pakiet R, mogłem (np.: prawdopodobnie) przeoczyć coś tu lub tam. Tak więc wszelkie komentarze na temat tego, jak poprawić mój kod/dokumentację/R-fu, będą mile widziane (tutaj lub na githubie).

Jeśli ten rodzaj kodowania jest dla Ciebie zabawny/łatwy, możesz pomóc mi ulepszyć ten pakiet na githubie. Fajne nowe funkcje, które myślę, że mogą zostać dodane (przeze mnie lub innych) to:

  • Dodaj funkcję uninstall.R – aby usunąć starą wersję R.
  • Dodaj więcej wsparcia dla aktualizacji R dla ludzi, którzy używają globalnej biblioteki dla swoich pakietów.
  • Dodaj wsparcie dla Linuksa i Maca! Jest mniej prawdopodobne, że zrobię to sam – i chciałbym zobaczyć, jak ktoś inny rozszerza mój kod na inne systemy operacyjne.
  • GUI – dodaj opartą na menu opcję uruchamiania updateR. Coś w stylu help->”check for updates” byłoby świetne. (p.s: ten pomysł pochodzi od Yihui Xie)
  • dodaj jeszcze więcej funkcji install.software. Jeśli masz funkcje, dla których chciałbyś móc je łatwo zainstalować – po prostu daj mi znać, a może to zostać uwzględnione w przyszłych wydaniach.

Podziękowania

Na koniec chciałbym podziękować wielu ludziom, którzy stworzyli WONDERFUL narzędzia, dzięki którym rozwój pakietów R jest możliwy (a nawet nieco szybszy), w systemie Windows. Należą do nich Prof. Brian Ripley i Duncan Murdoch za Rtools, także Uwe Ligges za jego pracę nad CRAN, Hadley Wickham za devtools (ogólnie, i za jego dokumentację), Yihui Xie za roxygen2, JJ i inni z zespołu RStudio za RStudio, ludzie stojący za git i github, i więcej. Prawdopodobnie jest więcej rzeczy, za które mogę podziękować tym ludziom, i wiele więcej osób, którym powinienem podziękować, ale nie mogę się zorientować kim jesteście (nie krępujcie się wysłać mi maila, doceniam waszą pracę, nawet jeśli nie jest dla mnie jasne, kto za nią stoi).

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *