我是R的新手,我正在尝试将.Rdata格式文件转换为逗号分隔的文本文件格式。有人可以帮我解决这个问题吗?
答案 0 :(得分:18)
load("yourData.RData")
ls() #returns a list of all the objects you just loaded (and anything else in your environment)
write.csv(theItemOfInterestFromYourDRadataFileAsThereMayBeMoreThanOneThingInthere,
file="yourCSV.csv")
答案 1 :(得分:6)
.RData
文件可以包含任何类的多个对象。
如果您的文件包含多个data.frame
对象 - 就像类一样,那么以下内容应该可以使用
resave <- function(file){
e <- new.env(parent = emptyenv())
load(file, envir = e)
objs <- ls(envir = e, all.names = TRUE)
for(obj in objs) {
.x <- get(obj, envir =e)
message(sprintf('Saving %s as %s.csv', obj,obj) )
write.csv(.x, file = paste0(obj, '.csv'))
}
}
resave('yourData.RData')
您可以将呼叫更改为write.csv
以执行您想要的操作。如果您的对象与write.csv
的行为不合适,那么您不应该尝试这个。