R Language Zelfstudie
Aan de slag met R Language
Zoeken…
Opmerkingen
R-documenten bewerken op Stack Overflow
Raadpleeg de documentatierichtlijnen voor algemene regels bij het maken van documentatie.
Een paar kenmerken van R die immigranten uit een andere taal ongebruikelijk vinden
- In tegenstelling tot andere talen hoeven variabelen in R geen typeaangifte te vereisen.
- Aan dezelfde variabele kunnen indien nodig verschillende gegevenstypen op verschillende tijdstippen worden toegewezen.
- Het indexeren van atoomvectoren en lijsten begint bij 1, niet bij 0.
- R-
arrays
(en het speciale geval van matrices) hebben eendim
eigenschap die hen onderscheidt van de "atoomvectoren" van R die geen attributen hebben. - Met een lijst in R kunt u een verscheidenheid aan objecten onder één naam (dat wil zeggen de naam van de lijst) op een geordende manier verzamelen. Deze objecten kunnen matrices , vectoren , gegevensframes , zelfs andere lijsten , enz. Zijn. Het is zelfs niet vereist dat deze objecten op enigerlei wijze aan elkaar gerelateerd zijn.
- recycling
- Ontbrekende waarden
R installeren
Mogelijk wilt u RStudio installeren nadat u R. hebt geïnstalleerd. RStudio is een ontwikkelomgeving voor R die veel programmeertaken vereenvoudigt.
Alleen Windows:
Visual Studio (vanaf versie 2015 Update 3) beschikt nu over een ontwikkelomgeving voor R genaamd R Tools , met een live interpreter, IntelliSense en een debugging-module. Als u deze methode kiest, hoeft u R niet te installeren zoals gespecificeerd in de volgende sectie.
Voor ramen
- Ga naar de CRAN- website, klik op download R voor Windows en download de nieuwste versie van R.
- Klik met de rechtermuisknop op het installatiebestand en voer UIT als beheerder.
- Selecteer de operationele taal voor installatie.
- Volg de instructies voor installatie.
Voor OSX / macOS
Alternatief 1
(0. Zorg dat XQuartz is geïnstalleerd)
- Ga naar de CRAN- website en download de nieuwste versie van R.
- Open de schijfkopie en voer het installatieprogramma uit.
- Volg de instructies voor installatie.
Hiermee worden zowel R als de R-MacGUI geïnstalleerd. Het zal de GUI in de / Applications / Folder plaatsen als R.app waar het kan worden dubbelklikt of naar de Doc kan worden gesleept. Wanneer een nieuwe versie wordt vrijgegeven, zal het (her) installatieproces R.app overschrijven, maar eerdere belangrijke versies van R blijven behouden. De werkelijke R-code staat in de map /Library/Frameworks/R.Framework/Versions/. Het gebruik van R binnen RStudio is ook mogelijk en zou dezelfde R-code met een andere GUI gebruiken.
Alternatief 2
- Installeer homebrew (de ontbrekende pakketbeheerder voor macOS) door de instructies op https://brew.sh/ te volgen
-
brew install R
Degenen die voor de tweede methode kiezen, moeten zich ervan bewust zijn dat de beheerder van de Mac-vork het afraadt en niet zal reageren op vragen over problemen op de R-SIG-Mac-mailinglijst.
Voor Debian, Ubuntu en derivaten
Je kunt de versie van R krijgen die overeenkomt met je distro via apt-get
. Deze versie zal echter vaak ver achterlopen op de meest recente versie die beschikbaar is op CRAN. U kunt CRAN toevoegen aan uw lijst met erkende "bronnen".
sudo apt-get install r-base
U kunt een recentere versie rechtstreeks van CRAN verkrijgen door CRAN aan uw bronnenlijst toe te voegen. Volg de aanwijzingen van CRAN voor meer informatie. Let met name op de noodzaak om dit ook uit te voeren, zodat u install.packages()
kunt gebruiken. Linux-pakketten worden meestal als bronbestanden gedistribueerd en moeten worden gecompileerd:
sudo apt-get install r-base-dev
Voor Red Hat en Fedora
sudo dnf install R
Voor Archlinux
R is direct beschikbaar in de repo Extra
pakket.
sudo pacman -S r
Meer informatie over het gebruik van R onder Archlinux is te vinden op de ArchWiki R-pagina .
Hallo Wereld!
"Hello World!"
Bekijk ook de gedetailleerde discussie over hoe, wanneer, of en waarom een string moet worden afgedrukt .
Hulp krijgen
U kunt functie help()
of ?
om toegang te krijgen tot documentatie en hulp te zoeken in R. Voor nog meer algemene zoekopdrachten kunt u help.search()
of ??
.
#For help on the help function of R
help()
#For help on the paste function
help(paste) #OR
help("paste") #OR
?paste #OR
?"paste"
Ga naar https://www.r-project.org/help.html voor aanvullende informatie
Interactieve modus en R-scripts
De interactieve modus
De meest eenvoudige manier om R te gebruiken is de interactieve modus. Je typt commando's en krijgt direct het resultaat van R.
R gebruiken als rekenmachine
Start R door het intikken van R
bij de opdrachtprompt van uw besturingssysteem of door het uitvoeren van RGui
op Windows. Hieronder zie je een screenshot van een interactieve R-sessie op Linux:
Dit is RGui op Windows, de meest elementaire werkomgeving voor R onder Windows:
Na het >
teken kunnen uitdrukkingen worden ingetypt. Zodra een uitdrukking wordt getypt, wordt het resultaat weergegeven door R. In de bovenstaande schermafbeelding wordt R gebruikt als een rekenmachine: Type
1+1
om het resultaat onmiddellijk te zien, 2
. De voorloop [1]
geeft aan dat R een vector retourneert. In dit geval bevat de vector slechts één nummer (2).
Het eerste plot
R kan worden gebruikt om plots te genereren. In het volgende voorbeeld wordt de gegevensset PlantGrowth
, die samen met R als voorbeeldgegevensset wordt geleverd
Typ int de volgende regels in de R-prompt die niet beginnen met ##
. Regels die beginnen met ##
zijn bedoeld om het resultaat te documenteren dat R zal retourneren.
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")
De volgende plot is gemaakt:
data(PlantGrowth)
laadt de voorbeeldgegevensset PlantGrowth
, die records is van droge massa's van planten die onderworpen waren aan twee verschillende behandelingsomstandigheden of helemaal geen behandeling (controlegroep). De gegevensset wordt beschikbaar gesteld onder de naam PlantGrowth
. Een dergelijke naam wordt ook een variabele genoemd .
Om uw eigen gegevens te laden, kunnen de volgende twee documentatiepagina's nuttig zijn:
- Tabelgegevens lezen en schrijven in platte tekstbestanden (CSV, TSV, enz.)
- I / O voor buitenlandse tabellen (Excel, SAS, SPSS, Stata)
str(PlantGrowth)
toont informatie over de dataset die werd geladen. De uitvoer geeft aan dat PlantGrowth
een data.frame
, wat R's naam is voor een tabel. Het data.frame
bevat twee kolommen en 30 rijen. In dit geval komt elke rij overeen met één plant. Details van de twee kolommen worden weergegeven in de regels die beginnen met $
: de eerste kolom wordt weight
en bevat getallen ( num
, het droge gewicht van de respectieve plant). De tweede kolom, group
, bevat de behandeling die de plant heeft ondergaan. Dit zijn categoriale gegevens, die factor
in R worden genoemd. Lees meer informatie over gegevensframes .
Om de droge massa van de drie verschillende groepen te vergelijken, wordt een ANOVA in één richting uitgevoerd met behulp van anova(lm( ... ))
. weight ~ group
betekent "Vergelijk de waarden van de kolom weight
groeperen door de waarden van de kolom group
". Dit wordt een formule genoemd in R. data = ...
geeft de naam van de tabel aan waar de gegevens kunnen worden gevonden.
Het resultaat toont onder andere dat er een significant verschil (kolom Pr(>F)
), p = 0.01591
) bestaat tussen enkele van de drie groepen. Post-hoc tests, zoals Tukey's Test, moeten worden uitgevoerd om te bepalen welke groepen 'middelen aanzienlijk verschillen.
boxplot(...)
maakt een boxplot van de gegevens. waar de te plotten waarden vandaan komen. weight ~ group
betekent: "Zet de waarden van het gewicht kolom versus de waarden van de kolom group
. ylab = ...
specificeert het label van de y-as. Meer informatie: Base plotting
Typ q()
of Ctrl - D om de R-sessie te verlaten.
R scripts
Om uw onderzoek te documenteren, is het gunstig om de opdrachten die u voor berekening gebruikt in een bestand op te slaan. Voor dat effect kunt u R-scripts maken . Een R-script is een eenvoudig tekstbestand dat R-opdrachten bevat.
Maak een tekstbestand met de naam plants.R
en vul het met de volgende tekst, waarvan sommige opdrachten bekend zijn uit het codeblok hierboven:
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()
Voer het script uit door in uw terminal te typen (de terminal van uw besturingssysteem, geen interactieve R-sessie zoals in de vorige sectie!)
R --no-save <plant.R >plant_result.txt
Het bestand plant_result.txt
bevat de resultaten van uw berekening, alsof u deze in de interactieve R-prompt hebt getypt. Daardoor worden uw berekeningen gedocumenteerd.
De nieuwe opdrachten png
en dev.off
worden gebruikt om de boxplot op schijf op te slaan. De twee commando's moeten het plotcommando omsluiten, zoals getoond in het bovenstaande voorbeeld. png("FILENAME", width = ..., height = ...)
opent een nieuw PNG-bestand met de opgegeven bestandsnaam, breedte en hoogte in pixels. dev.off()
zal het plotten voltooien en slaat de plot op schijf op. Er wordt geen uitvoer opgeslagen totdat dev.off()
wordt aangeroepen.