J'ai 30 séries de données, chacune stockée dans un fichier CSV distinct, runi.csv, i = 0:29.R - façon idiomatique de traiter les listes de trames de données
Disons que je veux les rassembler tous dans une liste. La meilleure façon je sais comment faire est
runs = list()
for (i in 1:30) { runs[[i]] = read.csv(paste("run", i-1, ".csv")); }
Maintenant, nous allons dire en outre que chacune de ces trames de données stockées dans la liste a les dispositions mêmes de la colonne et que je suis intéressé par la colonne identifiée par « x » et la colonne identifiée par "y".
Quelle est la manière la plus simple de tracer les 30 paires de paires (x, y)? Voici comment je en faire (et je sens qu'il doit être une meilleure façon):
xList = list()
yList = list()
for (i in 1:30) { xList[[i]] = runs[[i]]$x; yList[[i]] = runs[[i]]$y; }
matplot(x=as.data.frame(xList), y=as.data.frame(yList))
Cela devient encore plus douloureux quand je suis en train de faire des transformations des données; Je n'arrive pas à comprendre comment appliquer une fonction à une colonne spécifique de chaque trame de données stockée dans une liste.
Toute aide ici serait extrêmement utile.
fonctionne <- llply (pâte ("run", 1: 30, "csv", sep = ""), lire. csv) est très lisse - et fonctionne avec lapply si vous ne voulez pas inclure plyr. Bravo – I82Much