R LanguageRozpoczęcie pracy z językiem R.


Uwagi

Edycja dokumentów R w przypadku przepełnienia stosu

Zobacz wytyczne dotyczące dokumentacji, aby zapoznać się z ogólnymi zasadami tworzenia dokumentacji.

Kilka cech R, które imigranci z innego języka mogą uznać za niezwykłe

  • W przeciwieństwie do innych języków zmienne w R nie muszą wymagać deklaracji typu.
  • W razie potrzeby tej samej zmiennej można przypisać różne typy danych w różnych momentach.
  • Indeksowanie wektorów atomowych i list rozpoczyna się od 1, a nie od 0.
  • arrays R (i szczególny przypadek macierzy) mają atrybut dim który odróżnia je od „wektorów atomowych” R, które nie mają atrybutów.
  • Lista w R pozwala zebrać różne obiekty pod jedną nazwą (to znaczy nazwą listy) w uporządkowany sposób. Obiekty te mogą być macierzami , wektorami , ramkami danych , a nawet innymi listami itp. Nie jest nawet wymagane, aby obiekty te były ze sobą w jakikolwiek sposób powiązane.
  • Recykling
  • Brakujące wartości

Otrzymywać pomoc

Możesz użyć funkcji help() lub ? aby uzyskać dostęp do dokumentacji i szukać pomocy w R. Aby uzyskać jeszcze bardziej ogólne wyszukiwania, możesz użyć help.search() lub ?? .

#For help on the help function of R
help()

#For help on the paste function
help(paste)    #OR
help("paste")  #OR
?paste         #OR
?"paste"
 

Odwiedź https://www.r-project.org/help.html w celu uzyskania dodatkowych informacji

Witaj świecie!

"Hello World!"
 

Sprawdź także szczegółowe omówienie, w jaki sposób, kiedy, czy i dlaczego należy wydrukować ciąg .

Instalowanie R.

Możesz zainstalować RStudio po zainstalowaniu R. RStudio to środowisko programistyczne dla R, które upraszcza wiele zadań programistycznych.

Tylko system Windows:

Visual Studio (od wersji 2015 Update 3) zawiera teraz środowisko programistyczne dla R o nazwie R Tools , które zawiera interpreter na żywo, IntelliSense i moduł debugowania. Jeśli wybierzesz tę metodę, nie będziesz musiał instalować R, jak określono w poniższej sekcji.

Dla Windowsa

  1. Wejdź na stronę CRAN , kliknij pobierz R dla Windows i pobierz najnowszą wersję R.
  2. Kliknij plik instalatora prawym przyciskiem myszy i uruchom jako administrator.
  3. Wybierz język operacyjny instalacji.
  4. Postępuj zgodnie z instrukcjami instalacji.

Dla OSX / macOS

Alternatywa 1

(0. Upewnij się, że XQuartz jest zainstalowany)

  1. Wejdź na stronę CRAN i pobierz najnowszą wersję R.
  2. Otwórz obraz dysku i uruchom instalator.
  3. Postępuj zgodnie z instrukcjami instalacji.

Spowoduje to zainstalowanie zarówno R, jak i R-MacGUI. Umieści GUI w folderze / Applications / Folder jako R.app, gdzie można go kliknąć dwukrotnie lub przeciągnąć do Doc. Po wydaniu nowej wersji proces (ponownej) instalacji zastąpi R.app, ale poprzednie główne wersje R zostaną zachowane. Rzeczywisty kod R będzie w katalogu /Library/Frameworks/R.Framework/Versions/. Używanie R w RStudio jest również możliwe i będzie używać tego samego kodu R z innym GUI.

Alternatywa 2

  1. Zainstaluj homebrew (brakujący menedżer pakietów dla systemu macOS), postępując zgodnie z instrukcjami na https://brew.sh/
  2. brew install R

Osoby wybierające drugą metodę powinny mieć świadomość, że opiekun widelca Mac odradza ją i nie odpowie na pytania dotyczące trudności na liście mailingowej R-SIG-Mac.

Dla Debiana, Ubuntu i pochodnych

Możesz uzyskać wersję R odpowiadającą twojej dystrybucji przez apt-get . Jednak ta wersja często pozostaje daleko w tyle za najnowszą wersją dostępną w CRAN. Możesz dodać CRAN do swojej listy uznanych „źródeł”.

sudo apt-get install r-base
 

Możesz pobrać nowszą wersję bezpośrednio z CRAN, dodając CRAN do listy źródeł. Postępuj zgodnie ze wskazówkami z CRAN, aby uzyskać więcej informacji. Zwróć uwagę w szczególności na konieczność wykonania tego, abyś mógł użyć install.packages() . Pakiety systemu Linux są zwykle dystrybuowane jako pliki źródłowe i wymagają kompilacji:

sudo apt-get install r-base-dev
 

Dla Red Hat i Fedory

sudo dnf install R
 

Dla Archlinux

R jest dostępny bezpośrednio w repozytorium pakietu Extra .

sudo pacman -S r

Więcej informacji na temat używania R w Archlinux można znaleźć na stronie ArchWiki R.

Tryb interaktywny i skrypty R.

Tryb interaktywny

Najbardziej podstawowym sposobem korzystania z R jest tryb interaktywny . Wpisujesz polecenia i natychmiast otrzymujesz wynik z R.

Używanie R jako kalkulatora

Uruchom R, wpisując R w wierszu polecenia systemu operacyjnego lub uruchamiając RGui w systemie Windows. Poniżej znajduje się zrzut ekranu interaktywnej sesji R w systemie Linux:

Zrzut ekranu terminala linuxowego wykonującego R.

Oto RGui w systemie Windows, najbardziej podstawowe środowisko pracy dla R w systemie Windows: Zrzut ekranu terminala RGui w systemie Windows

Po znaku > można wpisać wyrażenia. Po wpisaniu wyrażenia wynik pokazuje R. Na powyższym zrzucie ekranu R służy jako kalkulator: Typ

1+1
 

aby natychmiast zobaczyć wynik, 2 . Wiodący [1] wskazuje, że R zwraca wektor. W tym przypadku wektor zawiera tylko jedną liczbę (2).

Pierwsza fabuła

R można użyć do wygenerowania wykresów. W poniższym przykładzie użyto zestawu danych PlantGrowth , który stanowi przykładowy zestaw danych wraz z R.

Wpisz int następujące wszystkie wiersze w wierszu R, które nie zaczynają się od ## . Linie zaczynające się od ## mają udokumentować wynik, który zwróci R.

data(PlantGrowth)
str(PlantGrowth)
## 'data.frame':    30 obs. of  2 variables:
## $ weight: num  4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ...
## $ group : Factor w/ 3 levels "ctrl","trt1",..: 1 1 1 1 1 1 1 1 1 1 ...
anova(lm(weight ~ group, data = PlantGrowth))
## Analysis of Variance Table
## 
## Response: weight
##           Df  Sum Sq Mean Sq F value  Pr(>F)  
## group      2  3.7663  1.8832  4.8461 0.01591 *
## Residuals 27 10.4921  0.3886                  
## ---
## Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
boxplot(weight ~ group, data = PlantGrowth, ylab = "Dry weight")
 

Powstaje następujący wykres:

Boxplot, utworzony z przykładowego zestawu danych PlantGrowth

data(PlantGrowth) ładuje przykładowy zestaw danych PlantGrowth , który jest zapisem suchych mas roślin, które zostały poddane dwóm różnym warunkom traktowania lub w ogóle nie zostały poddane zabiegowi (grupa kontrolna). Zestaw danych jest udostępniany pod nazwą PlantGrowth . Taka nazwa jest również nazywana Zmienną .

Aby załadować własne dane, pomocne mogą być następujące dwie strony dokumentacji:

str(PlantGrowth) pokazuje informacje o załadowanym zestawie danych. Dane wyjściowe wskazują, że PlantGrowth jest data.frame , która jest nazwą R dla tabeli. data.frame zawiera dwie kolumny i 30 wierszy. W takim przypadku każdy rząd odpowiada jednej roślinie. Szczegóły dwóch kolumn pokazano w wierszach zaczynających się od $ : Pierwsza kolumna nazywa się weight i zawiera liczby ( num , sucha masa odpowiedniej rośliny). Druga kolumna, group , zawiera obróbkę, której poddano roślinę. Są to dane kategorialne, które nazywane są factor w R. Czytaj więcej informacji o ramkach danych .

Aby porównać suche masy trzech różnych grup, wykonuje się jednokierunkową ANOVA za pomocą anova(lm( ... )) . weight ~ group oznacza „Porównaj wartości weight kolumny, pogrupowane według wartości group kolumn”. Nazywa się to Formułą w R. data = ... określa nazwę tabeli, w której można znaleźć dane.

Wynik pokazuje między innymi, że istnieje znacząca różnica (Kolumna Pr(>F) ), p = 0.01591 ) między niektórymi z trzech grup. Testy post-hoc, takie jak test Tukeya, należy wykonać, aby ustalić, które grupy różnią się znacznie.

boxplot(...) tworzy wykres pudełkowy danych. skąd pochodzą wartości do wykreślenia. weight ~ group oznacza: „ ylab = ... wartości masy kolumny w stosunku do wartości group kolumn. ylab = ... określa etykietę osi y. Więcej informacji: ylab = ... bazowe

Wpisz q() lub Ctrl - D, aby wyjść z sesji R.

Skrypty R.

Aby udokumentować swoje badania, warto zapisać w pliku polecenia używane do obliczeń. W tym celu możesz utworzyć skrypty R. Skrypt R to prosty plik tekstowy zawierający polecenia R.

Utwórz plik tekstowy o nazwie plants.R i wypełnij go następującym tekstem, w którym niektóre polecenia są znane z powyższego bloku kodu:

data(PlantGrowth)

anova(lm(weight ~ group, data = PlantGrowth))

png("plant_boxplot.png", width = 400, height = 300)
boxplot(weight ~ group, data = PlantGrowth, ylab = "Dry weight")
dev.off()    
 

Wykonaj skrypt, pisząc w swoim terminalu (terminal twojego systemu operacyjnego, a nie interaktywna sesja R jak w poprzednim rozdziale!)

R --no-save <plant.R >plant_result.txt
 

Plik plant_result.txt zawiera wyniki twoich obliczeń, tak jakbyś wpisał je w interaktywnym pytaniu R. W ten sposób twoje obliczenia są udokumentowane.

Nowe polecenia png i dev.off służą do zapisywania wykresu pudełkowego na dysku. Oba polecenia muszą zawierać polecenie drukowania, jak pokazano w powyższym przykładzie. png("FILENAME", width = ..., height = ...) otwiera nowy plik PNG o podanej nazwie, szerokości i wysokości w pikselach. dev.off() zakończy drukowanie i zapisuje wykres na dysku. Żadne wyjście nie jest zapisywane, dopóki dev.off() zostanie dev.off() .