La question dit tout - je veux prendre un objet liste complète de data.frames et écrire chaque data.frame dans un fichier .csv séparé où le nom de la Le fichier .csv correspond au nom de l'objet liste.Écrit la liste de data.frames pour séparer les fichiers CSV avec lapply
Voici un exemple reproductible et le code que j'ai écrit jusqu'ici.
df <- data.frame(
var1 = sample(1:10, 6, replace = TRUE)
, var2 = sample(LETTERS[1:2], 6, replace = TRUE)
, theday = c(1,1,2,2,3,3)
)
df.daily <- split(df, df$theday) #Split into separate days
lapply(df.daily, function(x){write.table(x, file = paste(names(x), ".csv", sep = ""), row.names = FALSE, sep = ",")})
Et voici le haut du message d'erreur R recrache
Error: Results must have one or more dimensions.
In addition: Warning messages:
1: In if (file == "") file <- stdout() else if (is.character(file)) { :
the condition has length > 1 and only the first element will be used
Qu'est-ce que je manque ici?
Duplication de http://stackoverflow.com/q/3411429/271616 –
@Joshua - dar, la recherche Google échoue. Je devrais rentrer à la maison maintenant. N'hésitez pas à fermer celui-ci. – Chase
Ce n'est pas exactement un doublon. Votre erreur indique que vous passez plus d'une chaîne à write.table en tant que nom de fichier. names (x) renvoie tous les colnames d'une trame de données. –