R Language
Input en output
Zoeken…
Opmerkingen
Gebruik file.path
om bestandspaden te maken voor lezen of schrijven.
Gebruik dir
om te zien welke bestanden in een map staan.
Dataframes lezen en schrijven
Gegevensframes zijn de gegevensstructuur van R in tabelvorm. Ze kunnen op verschillende manieren worden beschreven of gelezen.
Dit voorbeeld illustreert een aantal veel voorkomende situaties. Zie de links aan het einde voor andere bronnen.
Schrijven
Voordat u de onderstaande voorbeeldgegevens maakt, moet u zich in een map bevinden waarnaar u wilt schrijven. Voer getwd()
uit om de map waarin u zich bevindt te controleren en lees ?setwd
als u mappen moet wijzigen.
set.seed(1)
for (i in 1:3)
write.table(
data.frame(id = 1:2, v = sample(letters, 2)),
file = sprintf("file201%s.csv", i)
)
We hebben nu drie CSV-bestanden met dezelfde indeling op schijf.
Lezing
We hebben drie bestanden met dezelfde indeling (uit de laatste sectie) om in te lezen. Aangezien deze bestanden aan elkaar gerelateerd zijn, moeten we ze samen na het inlezen in een list
opslaan:
file_names = c("file2011.csv", "file2012.csv", "file2013.csv")
file_contents = lapply(setNames(file_names, file_names), read.table)
# $file2011.csv
# id v
# 1 1 g
# 2 2 j
#
# $file2012.csv
# id v
# 1 1 o
# 2 2 w
#
# $file2013.csv
# id v
# 1 1 f
# 2 2 w
Om met deze lijst met bestanden te werken, onderzoekt u eerst de structuur met str(file_contents)
en leest u vervolgens over het stapelen van de lijst met ?rbind
of itereren over de lijst met ?lapply
.
Verdere bronnen
Bekijk ?read.table
en ?write.table
om dit voorbeeld uit te breiden. Ook:
- R binaire formaten (voor tabellen en andere objecten)
- Tekstindelingen zonder opmaak
- door komma's gescheiden CSV's
- door tabs gescheiden TSV's
- Formaten met vaste breedte
- Taal-agnostische binaire tabelformaten
- Veer
- Buitenlandse tabel- en spreadsheetformaten
- SAS
- SPSS
- Stata
- uitmunten
- Relationele databasetabelindelingen
- MySQL
- SQLite
- PostgreSQL