[英]How to save a data frame in R
根据这个问题的答案,您可以使用save()函数在R中保存数据框“foo”,如下所示:
save(foo,file="data.Rda")
这是数据框“df”:
> str(df)
'data.frame': 1254 obs. of 2 variables
$ text : chr "RT @SchmittySays: I love this 1st grade #science teacher from #Duluth http://t.co/HWDYFnIyqV #NSTA15 #AlbertEinstein #inspirat"| __truncated__ "RT @KVernonBHS: @smrtgrls would love Stellar Girls. Empowering female scientists rocks! #NSTA15 http://t.co/1ZU0yjVF67" "RT @leducmills: Leaving #SXSWedu to go straight to #NSTA15. There should be some sort of arbitrary conference-hopper social med"| __truncated__ "RT @KRScienceLady: Congrats to a wonderful colleague who helped #ngss Bcome reality, Stephen Pruitt, Distinguished Service to "| __truncated__ ...
$ group: Factor w/ 2 levels "narst","nsta": 2 2 2 2 2 2 2 2 2 2 ...
它似乎保存得很好:
> save(df, file = "~/downloads/df.Rda")
但事实证明只保存了对象的名称:
> df1 <- load("~/downloads/df.Rda")
> str(df1)
chr "df"
我尝试了在上面引用的同一个问题的另一个答案中建议的saveRDS()函数,该函数工作正常,但我想知道为什么save()不起作用。
您可能想在这里看一下这个问题: R数据格式:RData,Rda,Rds等 。
加载.rda
对象时,您将使用其原始名称将所有对象加载到全局环境中。 您不能尝试使用load
将对象分配给新名称。
如果要保存以后可以加载不同名称的对象,则应使用.rds
格式( saveRDS
和readRDS
)。 如果要在.rds
文件中保存多个对象,最简单的解决方案是将所有对象放在列表中并仅保存列表。 如果在读取.rds
后想要将列表的对象放在全局环境中,则可以使用list2env
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.