In dit blog gaan we in op Data Types in R. Het blog is een onderdeel van een blogserie over R waarin we o.a. ingaan op hoe je R installeert, hoe je in RStudio werkt, data manipuleert met bijvoorbeeld dplyr of data.table, of data visualiseert in bijvoorbeeld een histogram of boxplot.

Op deze pagina lees je meer over:


1. Variabelen in R

Variabelen zijn koppelingen tussen een naam en data.

  • De naam van een variabele is specifiek en hoofdlettergevoelig.
  • De waarde of data van een variabele is op te roepen met de naam.

1.1. Een variabele aanmaken

In R maak je een variabele als volgt aan:

  • Je geeft een naam op
  • Met <- geef je aan dat je een waarde toewijst
  • Je geeft een waarde op

Zie onderstaand voorbeeld:

age <- 42
  • De naam: age
  • De waarde: 42

1.2. Een variabele tonen met functie print()

R bevat vele functies waarmee je opdrachten uit kunt voeren.

  • Met de functie print() kun je de waarde van een variabele tonen.

Zie onderstaand voorbeeld:

print(age)
 [1] 42

In RStudio kun je de waarde van een variabele rechts ook terugvinden in tabblad Environment.


Met vertrouwen waardevolle inzichten halen uit data met R? Bekijk dan onze opleiding R voor data analyse.

1.3. Naamgeving van variabelen

Binnen programmeertalen zijn er vaak afspraken over de naamgeving van bijvoorbeeld variabelen.

  • Dit worden ook wel de naming conventions genoemd.
  • In R zijn er geen hele duidelijke afspraken.

In onze opleiding R maken we gebruik van de snake case naming convention.

Snake case houdt in:

  • Gebruik van kleine letters
  • Woorden scheiden door underscores _

Enkele voorbeelden:

Goed:

  • house_number
  • age
  • car_price

Fout:

  • HouseNumber
  • AGE
  • carPrice

Zie je waarom bovenstaande voorbeelden fout zijn?


2. Datatypes in R

De data die je in een variabele opslaat heeft een datatype.

  • Hiermee is het gedrag en eigenschappen van de data vastgelegd.
  • Er zijn verschillende soorten data:
    • Tekst
    • Getallen
    • Waar / niet waar
    • Datums
    • Lijsten
    • Tabellen
    • Etc.
  • R kent hier verschillende datatypes voor

We gaan enkele verschillende variabelen aanmaken en hun datatypes bekijken.

In R kun je de functies is() en typeof() gebruiken om een datatype van een variabele te achterhalen.


2.1. Datatype voor tekst in R

  • In R benoem je tekst tussen 2 dubbele apostrofs: "<text>"

Zie onderstaand voorbeeld:

city <- "Utrecht"

En het datatype met functie typeof():

typeof(city)
 [1] "character"
  • Het datatype van tekst heet character

2.2. Datatype voor getallen in R

  • In R benoem je een getal direct

Zie onderstaand voorbeeld:

count_inhabitants <- 324723

En het datatype met functie typeof():

typeof(count_inhabitants)
 [1] "double"

Voorkomende datatypes voor getallen zijn:

  • Double
  • Integer
  • Numeric

2.3. Logisch waarden

In R benoem je logische waarden (waar/niet waar) met TRUE en FALSE

Zie onderstaand voorbeeld:

is_city <- TRUE

En het datatype met functie typeof():

typeof(is_city)
[1] "logical"
  • Het datatype van een logische waarde heet logical

3. Verschillend gedrag van verschillende datatypes in R

We hebben nu al enkele datatypes gezien:

  • Character
  • Double
  • Logical

Verschillende datatypes zorgen voor verschillende eigenschappen van de data.

Hierover leer je later in de training meer.

Dit bekijken nu een eerste voorbeeld van verschillen. Hierbij gaan we verschillende datatypes optellen.


3.1. Getallen kun je optellen

number_1 <- 10.5
number_2 <- 5

result <- number_1 + number_2

result
[1] 15.5

3.2. Tekst kun je niet optellen

fout voor data type in R

Er verschijnt een foutmelding.

Tekst kun je niet samenvoegen met het + teken.

Dit kan wel met de paste0() functie:

number_1 <- "10.5"
number_2 <- "5"

result <- paste0(number_1, number_2)

result
[1] "10.55"
  • De teksten zijn nu aan elkaar geplakt

3.3. Datatype logical (waar/niet waar) optellen

condition_1 <- TRUE
condition_2 <- FALSE

result = condition_1 + condition_2

result
[1] 1
  • De het resultaat is getal 1
  • TRUE + FALSE kun je zien als 1 + 0 = 1

Je hebt nu gezien dat verschillende datatypes tot verschillend gedrag leiden.

4. Voorbeeld: De stelling van Pythagoras

De stelling van Pythagoras drukt het verband uit tussen lengtes van zijden in een rechthoekige driehoek:

a²+b²=c²

voorbeeld data types in R met pythagoras

  • Hiervoor maken we 2 variabelen a en b aan:
a <- 3
b <- 4

print(a)
print(b)
[1] 3
[2] 4
  • Met ^ kunnen we kwadrateren:
c_kwadraat <- a^2 + b^2

c_kwadraat
[1] 25

Met ^(1/2) kun je de wortel trekken:

c <- c_kwadraat^(1/2)

c
[1] 5

De schuine zijde c is gelijk aan 5.


4.1. Hergebruik van de code

Deze code is nu gemakkelijk te hergebruiken voor andere driehoeken:

a <- 10
b <- 20

c_kwadraat <- a^2 + b^2
c <- c_kwadraat^(1/2)

c
[1] 22.36068

4.2. Versimpelen door functies

Later leren we meer over functies.

Onderstaand zie je hoe de code compacter wordt met standaard functie sqrt() (square root):

a <- 10
b <- 20

c <- sqrt(a^2 + b^2)

c
[1] 22.36068

Om te onthouden

  • Variabelen zijn koppelingen tussen een naam en data.
    • Voorbeeld: age -> 42
    • Gebruik snake case voor naamgeving. Dit zijn kleine letters en woorden scheid je door underscores. Een voorbeeld is age_limit.
  • De data die je in een variabele opslaat heeft een datatype.
    • Te achterhalen met functies is() en typeof()
    • Verschillende soorten, bijvoorbeeld: Character (tekst), Logical (waar / niet waar), Double (getallen)
    • Leidt tot verschillend gedrag, bijvoorbeeld: getallen kun je optellen, tekst niet

Wil jij goed leren werken in R? Tijdens onze Opleiding R leer je alles wat je nodig hebt om zelfstandig analyses uit te voeren in R.

by: