Ga naar hoofdinhoud

R-packages: installeren, laden en beheren

Leer hoe je R-packages installeert, laadt, bijwerkt en beheert via CRAN, Bioconductor en GitHub. Behandelt renv, devtools en packagedocumentatie.
Bijgewerkt 2 okt 2026  · 15 min lezen

Verken met AI

ChatGPTClaudePerplexity

R is een van de meest gebruikte programmeertalen voor statistiek en data science, en een groot deel van die kracht komt van packages. Of je nu natuurlijke taal wilt verwerken, weerdata van het web wilt halen of complexe statistische modellen wilt draaien, er is bijna zeker een package voor. In 2026 host de officiële repository (CRAN) meer dan 21.000 packages, en er zijn er nog veel meer publiek beschikbaar op internet.

Als je net begint met R, neem ik je mee door de basis van R-packages en hoe je ze gebruikt. Dit is wat we behandelen:

Wat is een R-package?

R-packages zijn verzamelingen functies en datasets die door de community zijn ontwikkeld. Ze vergroten de kracht van R door bestaande base R-functionaliteit te verbeteren of nieuwe toe te voegen. Als je vaak met data frames werkt, heb je waarschijnlijk al gehoord van dplyr of data.table, twee van de populairste R-packages.

Een package bundelt doorgaans R-code (en soms gecompileerde C- of Fortran-code), documentatie, tests en datasets in één eenheid die je kunt delen en hergebruiken.

De basisinformatie over een package vind je in het DESCRIPTION-bestand: wat het package doet, wie de auteur is, bij welke versie de documentatie hoort, de datum, de licentie, en de afhankelijkheden van het package.

Let op: je kunt ook de alternatieve stats-link gebruiken om het DESCRIPTION-bestand te bekijken.

Naast sites als cran.r-project.org of stat.ethz.ch kun je het DESCRIPTION-bestand ook in R openen met packageDescription("package"), via de packagedocumentatie help(package = "package"), of online in de repository van het package.

Voor het “stats”-package kan dat zo:

packageDescription("stats")
help(package = "stats")

Wat zijn R-repositories?

Een repository is een plek waar packages staan zodat je ze daaruit kunt installeren. Jij of je organisatie kan een lokale repository hebben, maar doorgaans zijn ze online en voor iedereen toegankelijk. Drie van de populairste repositories voor R-packages zijn:

  • CRAN: de officiële repository; een netwerk van ftp- en webservers dat wereldwijd door de R-community wordt beheerd. Het wordt gecoördineerd door de R Foundation. Om hier gepubliceerd te worden, moet een package een reeks tests doorstaan die naleving van de CRAN-beleidsregels garanderen. 
  • Bioconductor: een themaspecifieke repository voor open-sourcesoftware voor bio-informatica. Net als CRAN heeft het een eigen indienings- en reviewproces, en de community is zeer actief met meerdere conferenties en bijeenkomsten per jaar.
  • GitHub: hoewel niet R-specifiek, is GitHub waarschijnlijk de populairste repository voor open-sourceprojecten. De populariteit komt door onbeperkte ruimte voor open source, integratie met git (versiebeheer) en het gemak van delen en samenwerken. Let wel: er is geen gekoppeld reviewproces.

Hoe installeer je een R-package

Er zijn verschillende opties om R-packages te installeren.

R-packages installeren vanaf CRAN

De meest gebruikelijke manier is via CRAN. Je hebt alleen de packagenaam nodig en een aanroep van install.packages("package"). Voor packages die elders staan (Bioconductor, GitHub) verschilt de methode—die behandel ik hieronder.

Het oudste package dat op CRAN staat en nog steeds online is en wordt bijgewerkt, is het vioplot-package van Daniel Adler.

De oorspronkelijke publicatiedatum staat in het DESCRIPTION-bestand van het package.

Om het vanaf CRAN te installeren, gebruik je:

install.packages("vioplot")

Na uitvoeren print R berichten over de downloadbron, voortgang van de installatie en of het gelukt is. Hier is een ingekort voorbeeld van wat je kunt zien:

Installing package into '/home/username/R/x86_64-pc-linux-gnu-library/4.6'
(as 'lib' is unspecified)
trying URL 'https://cloud.r-project.org/src/contrib/vioplot_0.4.0.tar.gz'
...
* DONE (vioplot)

De output vertelt waar het package is geïnstalleerd, vanwaar het is gedownload en of de installatie is geslaagd. Afhankelijk van je besturingssysteem kunnen deze berichten variëren.

Om meer dan één R-package tegelijk te installeren, zet je ze als character vector in het eerste argument van install.packages():

install.packages(c("vioplot", "MASS"))

Installeren via CRAN-mirrors

Onthoud dat CRAN een netwerk van servers is (elk een “mirror”), dus je kunt aangeven welke je wilt gebruiken. Gebruik je R via de RGui-interface, dan kun je er een kiezen uit de lijst die verschijnt na install.packages(). In RStudio is de mirror al standaard geselecteerd.

Je kunt ook een mirror selecteren met chooseCRANmirror(), of direct in install.packages() via de repo-parameter. De lijst met beschikbare mirrors zie je met getCRANmirrors() of op de CRAN-mirrorpagina.

Voorbeeld: om de mirror van Universiteitsbibliotheek Gent (België) te gebruiken om vioplot te installeren, kun je dit draaien:

install.packages("vioplot", repos = "https://lib.ugent.be/CRAN")

Bioconductor-packages installeren

Bioconductor-packages installeer je via het BiocManager-package. Installeer eerst BiocManager vanaf CRAN:

install.packages("BiocManager")

Installeer daarna Bioconductor-packages op naam:

BiocManager::install(c("GenomicFeatures", "AnnotationDbi"))

Om alle core Bioconductor-packages te installeren of updaten, roep je BiocManager::install() zonder argumenten aan. De huidige release is Bioconductor 3.23 en vereist R 4.6.0. Zie de officiële installatiegids voor details.

Packages installeren via devtools

Zoals je hierboven las, heeft elke repository z’n eigen manier van installeren. Als je regelmatig packages uit verschillende bronnen gebruikt, kan dat wat frustreren. Een efficiëntere manier is het devtools-package, dat specifieke functies bevat voor elke repository, inclusief CRAN.

Je installeert devtools zoals gewoonlijk met install.packages("devtools"), maar mogelijk moet je ook Rtools op Windows, Xcode command line tools op Mac, of r-base-dev en r-devel op Linux installeren.

Nadat devtools is geïnstalleerd, kun je de hulpfuncties gebruiken om andere packages te installeren. De opties zijn:

  • install_bioc() vanaf Bioconductor,

  • install_bitbucket() vanaf Bitbucket,

  • install_cran() vanaf CRAN,

  • install_git() vanaf een git-repository,

  • install_github() vanaf GitHub,

  • install_local() vanaf een lokaal bestand,

  • install_svn() vanaf een SVN-repository,

  • install_url() vanaf een URL, en

  • install_version() vanaf een specifieke versie van een CRAN-package.

Om bijvoorbeeld het babynames-package vanuit de GitHub-repo te installeren, gebruik je:

devtools::install_github("hadley/babynames")

R-packages updaten, verwijderen en controleren

Als je meer met R werkt, gebruik je install.packages() misschien meerdere keren per week of zelfs per dag, en gezien het tempo waarin R-packages worden ontwikkeld, zul je vroeg of laat je favoriete packages moeten updaten of vervangen. In deze sectie vind je functies om je verzameling te beheren.

  • Om te zien welke packages op je computer zijn geïnstalleerd, gebruik je:
installed.packages()
  • Een package verwijderen gaat eenvoudig met remove.packages():
remove.packages("vioplot")
  • Controleren welke packages een update nodig hebben:
old.packages()
  • Alle packages updaten:
update.packages()
  • Een specifiek package updaten door het opnieuw te installeren:
install.packages("vioplot")

Packages beheren met renv

Voor afhankelijkheidsbeheer op projectniveau maakt het renv-package (onderhouden door Posit) geïsoleerde, reproduceerbare package-omgevingen—vergelijkbaar met de virtual environments van Python.

install.packages("renv")

# Initialize renv in your project
renv::init()

# Take a snapshot of current packages
renv::snapshot()

# Restore packages from the lockfile
renv::restore()

renv legt exacte packageversies vast in een renv.lock-bestand, zodat samenwerkers je omgeving kunnen reproduceren met renv::restore(). Dit is vooral handig voor teams en langlopende projecten.

Gebruikersinterfaces om R-packages te installeren

Als je liever een grafische interface gebruikt, bevatten zowel RStudio als RGui hulpmiddelen voor packagebeheer. In RStudio (nu ontwikkeld door Posit) ga je naar Tools → Install Packages en typ je de packagenaam in het dialoogvenster. Voor een volledige rondleiding door RStudio, zie onze RStudio-tutorial.

packages installeren

In de RGui vind je de opties onder het menu Packages.

rgui

Hoe laad je packages

Nadat een package is geïnstalleerd, kun je het gebruiken. Als je slechts sporadisch een paar functies of data uit een package nodig hebt, kun je ze benaderen met de notatie packagename::functionname(). Omdat je het babynames-package hebt geïnstalleerd, kun je bijvoorbeeld een van de datasets verkennen.

Gebruik help(package = "babynames") om te zien welke functies en data het package bevat.

Om de births-dataset uit het babynames-package te benaderen, typ je:

babynames::births
## # A tibble: 6 x 2
##    year  births
##   <int>   <int>
## 1  2009 4130665
## 2  2010 3999386
## 3  2011 3953590
## 4  2012 3952841
## 5  2013 3932181
## 6  2014 3988076

Ga je het package intensiever gebruiken, dan is het de moeite om het in het geheugen te laden. De eenvoudigste manier is met library().

Let op: de input van install.packages() is een character vector en vereist aanhalingstekens, terwijl library() zowel een character als een naam accepteert en je dus zonder aanhalingstekens kunt schrijven.

Daarna heb je de notatie package::function() niet meer nodig en kun je functies en data rechtstreeks benaderen zoals bij base R:

births
## # A tibble: 6 x 2
##    year  births
##   <int>   <int>
## 1  2009 4130665
## 2  2010 3999386
## 3  2011 3953590
## 4  2012 3952841
## 5  2013 3932181
## 6  2014 3988076

Je hebt misschien gehoord van de functie require(): je kunt hiermee ook een package laden, maar het verschil is dat er geen error wordt gegooid als het package niet is geïnstalleerd.

Gebruik deze functie dus met beleid!

Lees meer over library() vs require() in Yihui Xie’s blogpost. Wil je R-vaardigheden, inclusief packagebeheer, opbouwen, bekijk dan onze gids om R te leren.

Wat is het verschil tussen een package en een library?

In de context van de functie library() is er soms verwarring tussen een package en een library, en noemen mensen packages wel eens “libraries”.

Raak niet in de war: library() is het commando om een package te laden, en verwijst naar de plek waar het package staat, meestal een map op je computer; een package is de verzameling functies, handig gebundeld.

Een citaat van Hadley Wickham, Chief Scientist bij Posit (voorheen RStudio) en docent van de Writing Functions in R-cursus op DataCamp, vat het mooi samen:

Een andere handige manier om dit verschil te zien is library() zonder argumenten te draaien. Je krijgt dan de lijst met packages die in verschillende libraries op je computer zijn geïnstalleerd:

library()

Meerdere R-packages tegelijk laden

In tegenstelling tot install.packages() laadt library() maar één package per aanroep. Een veelgebruikte workaround is lapply():

packages <- c("dplyr", "ggplot2", "tidyr")
lapply(packages, library, character.only = TRUE)

Je kunt ook het pacman-package gebruiken, dat ontbrekende packages installeert en ze in één stap laadt met p_load().

Hoe ontlaad je een R-package

Om een package te ontladen, gebruik je de functie detach(). Het gebruik is:

detach("package:babynames", unload = TRUE)

Alternatieve bronnen van documentatie en hulp

Zoals je hierboven las, bevat het DESCRIPTION-bestand basisinformatie over een package. Dat is nuttig, maar helpt je nog niet bij het toepassen in je analyse. Daarvoor heb je nog twee bronnen nodig: helpbestanden en vignettes.

Helpbestanden

Net als in base R zijn de commando’s ?() en help() de eerste documentatiebron als je met een package begint. Je weet vast dat je een algemeen overzicht krijgt met help(package = "packagename"), maar elke functie kun je apart bekijken met help("naam van de functie") of help(function, package = "package") als het package niet is geladen. Daar vind je doorgaans de beschrijving, parameters en een toepassingsvoorbeeld.

Om bijvoorbeeld het helpbestand van het vioplot-commando uit het vioplot-package op te vragen, typ je:

help(vioplot, package = "vioplot")

Tip: je kunt ook zien wat er in een geladen package zit met ls() op deze manier:

library(babynames)
ls("package:babynames")
## [1] "applicants" "babynames"  "births"     "lifetables"

Vignettes

Een andere heel bruikbare hulpbron in de meeste packages zijn de vignettes: documenten waarin auteurs de functionaliteit van hun package uitgebreider tonen. Vignettes volgen is een fijne manier om praktisch aan de slag te gaan, dus perfect om te starten vóór je eigen analyse.

De informatie over vignettes in een package is lokaal of online ook in de DOCUMENTATION-file te vinden, maar je kunt de lijst van vignettes in je geïnstalleerde packages ook krijgen met browseVignettes(), en voor een specifiek package met browseVignettes(package="packagename"). In beide gevallen opent een browservenster zodat je makkelijk kunt klikken naar het gewenste vignette.

Blijf je liever aan de commandoregel, dan toont vignette() de lijst met vignettes; met vignette(package = "packagename") die van een specifiek package; en als je de gewenste hebt gevonden, open je die met vignette("vignettename").

Een van de populairste packages voor visualisatie is ggplot2. Je leert er meer over in DataCamp’s cursus Introduction to Data Visualization with ggplot2. Waarschijnlijk heb je het al geïnstalleerd; zo niet, dan is dit je kans om je install.packages()-skills te testen.

Als je ggplot2 al hebt geïnstalleerd, kun je zien welke vignettes erin zitten:

vignette(package = "ggplot2")

Er zijn twee vignettes voor ggplot2: “ggplot2-specs” en “extending-ggplot2”. De eerste bekijk je met:

vignette("ggplot2-specs")

In RStudio verschijnt dit op het tabblad Help rechts; in RGui of aan de commandoregel opent een browservenster met het vignette.

Meer opties om hulp van R te krijgen vind je op de R-Project-site.

Hoe kies je de juiste R-packages

Je kunt nu packages installeren en er het meeste uithalen, maar er blijft nog één vraag: waar vind je de packages die je nodig hebt?

De typische manier om packages te ontdekken is simpelweg door R te leren. In veel tutorials en cursussen worden de populairste packages genoemd. Zo behandelt de cursus Cleaning Data in R tidyr uitgebreid.

Voor elk onderwerp dat je in R wilt aanpakken, is er waarschijnlijk een interessant package te vinden.

Maar wat als je een specifiek probleem hebt en niet weet waar je moet beginnen? Zoals in de inleiding genoemd: stel dat je Koreaanse teksten wilt analyseren?

Of als je weerdata wilt verzamelen? Of evapotranspiratie wilt schatten?

Je hebt diverse repositories bekeken en ja, je kunt de lijst met CRAN-packages nalopen, maar met meer dan 21.000 opties raak je snel verdwaald.

Laten we naar wat alternatieven kijken!

CRAN Task View

Een alternatief is het browsen door categorieën van CRAN-packages dankzij de CRAN Task Views. Precies! CRAN, de officiële repository, laat je ook door packages bladeren. De task views zijn thema’s of categorieën die packages groeperen op basis van functionaliteit.

Zoals je hieronder ziet, vallen alle packages die met genetica te maken hebben onder de task view "Genetics": 

R-packages gidsNeem het voorbeeld van Koreaanse teksten: je vindt het juiste package eenvoudig door naar de task view Natural Language Processing te gaan. Daar kun je de tekst doornemen om het package te vinden dat je teksten aankan, of een simpele CTRL+F doen en je zoekterm intypen. 

RDocumentation en R-Universe

RDocumentation bundelt packagedocumentatie van CRAN, Bioconductor en GitHub in één doorzoekbare interface. Resultaten worden gerankt op downloadpopulariteit, zodat veelgebruikte packages bovenaan komen.

R-Universe is een nieuwer alternatief met packagepagina’s met buildstatus, documentatie en afhankelijkheden. Beide zijn gratis en het bewaren van een bookmark waard.

Tot slot

R-packages vormen de ruggengraat van het R-ecosysteem. Of je nu installeert vanaf CRAN, Bioconductor of GitHub, de kernworkflow is hetzelfde: eenmalig installeren met install.packages() of BiocManager::install(), en per sessie laden met library().

Ik ben hier niet ingegaan op het zelf maken van packages. Als dat je volgende stap is, dan is Hadley Wickham’s boek R Packages dé referentie, en DataCamp’s cursus Developing R Packages loopt het proces hands-on door.

Wil je je R-basis verder versterken, begin dan met de cursus Introduction to R of bekijk de volledige R-catalogus.

Onderwerpen
R
Data Science

Topcursussen in R

Cursus

Introductie tot R

4 uur
3.1M
Beheers de basis van data-analyse in R, inclusief vectors, lists en data frames, en oefen met echte datasets.
Bekijk detailsRight Arrow
Start Cursus
Meer bekijkenRight Arrow
Gerelateerd

blog

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer BekijkenMeer Bekijken