如何将 .Rdata 格式转换为文本文件格式
Posted
技术标签:
【中文标题】如何将 .Rdata 格式转换为文本文件格式【英文标题】:How to convert .Rdata format into text file format 【发布时间】:2012-10-22 18:31:30 【问题描述】:我是 R 的新手,我正在尝试将 .Rdata 格式文件转换为逗号分隔的文本文件格式。有人可以帮我解决这个问题吗?
【问题讨论】:
【参考方案1】: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")
【讨论】:
write.csv
必须使用您要在调用中写入 csv 的变量的名称。它可能不一定是“yourData”
嘿,它只将一条记录写入 csv 文件。只是数据集的名称。
@SOaddict; str(yourData)
返回什么?【参考方案2】:
.RData
文件可以包含多个任何类的对象。
如果您的文件包含超过 1 个 data.frame
-like 类的对象,那么以下应该可以工作
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
时表现不佳,那么您不应该尝试这个。
【讨论】:
我收到此错误:Error in data.frame(
2` = list(pos = c(6506L, 6601L, 21801L, 21811L, 21902L, : 参数暗示不同的行数:7670、9729、114 , 2422 调用:重新保存 ... as.data.frame -> as.data.frame.list -> eval -> eval -> data.frame`
我也在这里问过:***.com/questions/23413728/…以上是关于如何将 .Rdata 格式转换为文本文件格式的主要内容,如果未能解决你的问题,请参考以下文章
关于“任意编码”的txt格式的文本文档“批量转换”为同一种编码的文本文件,要能自动识别源编码(200分)