Mis a jour le 2016-05-22, 16:22

Lecture et Ecriture de fichiers

Lecture d'un frame à partir d'un fichier contenant un tableau :
Lecture d'un frame à partir d'un flux : fr <- read.table(pipe("cut -f1,3 file.csv |header -10")) : lit seulement les colonnes 1 et 3 des 10 premières lignes du fichier.
Ecriture d'un dataframe :
Ecriture simple d'une matrice avec les noms de lignes et de colonnes :
mat <- matrix(c(2, 3, 4, 5), nrow = 2)
rownames(mat) <- c("a", "b")
colnames(mat) <- c("A", "B")
write.table(mat, "out.csv", sep = "\t", quote = FALSE, col.names = NA)
  
Lecture simple d'un fichier :
con <- file("myFile", open = "r")
while (length(line <- readLines(con, n = 1))) {
    print(line)
}
close(con)
ou même en lisant toutes les lignes d'un seul coup :
con <- file("myFile", open = "r")
lines <- readLines(con)
print(lines)
close(con)
C'est un vecteur de type character qui est renvoyé.
Lecture d'une fichier structuré :
con <- file("myFile", open = "r")
while (length(line <- scan(con, what = character(0), sep = "\t", nlines = 1, quiet = TRUE)) > 0) {
    print(line)
}
close(con)
Ecriture simple d'un fichier (l'argument sep doit être précisé si plusieurs lignes, car son défaut est " ") :
con <- file("myFile", open = "w")
cat("first line\n", file = con)
cat("second line\n", "third line\n", file = con, sep = "")
close(con)
Autre façon d'écrire un fichier :
con <- file("myFile", open = "w")
vect <- c("first line", "second line", "third line")
writeLines(vect, con = con)
close(con)
writeLines :

Copyright Aymeric Duclert
programmer en R, tutoriel R, graphes en R