Marcos,
Se vc tem certeza de que cada RData contém somente um
data.frame, acho que isso vai funcionar:
arquivos <-
list.files()
arquivos <- grep(".*\\.RData$", arquivos, ignore.case=T,
value=T) #pega só os arquivos .RData
require(mgcv)
for(nomes in
arquivos){
dframe <- readRDS(nomes)
write.csv2(dframe, file=paste(dframe, ".csv", sep=""),
row.names=FALSE)
rm(dframe)
}
Em 9 de abril de 2012 23:33, Marcos Silva
<marcosfs2006@gmail.com>
escreveu:
Olá Pessoal,
Eu tenho, em um diretório, um conjunto
de mais ou menos 30 arquivos RData que armazenam data frames. O que eu
gostaria de fazer é escrever um scrip que lesse os nomes dos arquivos RData
no referido diretorio e os exportasse no formato .csv.
A abordagem
que estou tentanto desenvolver é a seguinte:
arquivos <-
list.files()
for(nomes in arquivos){
dframe <-
load(nomes)
load(nomes)
write.csv2(????,
file=paste(dframe, ".csv", sep=""),
row.names=FALSE)
rm(list=ls())
}
O problema para o qual
ainda não consegui vislumbrar uma solução é como usar o write.csv2() nesse
contexto.
Os arquivos RData tem nomes no seguinte padrão:
"Emp_DETRAN_2009.2012fev.RData" e o data frame contido no arquivo tem nome
"empDETRAN". Basicamente o que muda de um arquivo para o outro é o nome do
do órgão.
Possivelmente exista outra abordagem menos macarronica e
mais direta ao ponto...
.