在我的R文件中,第一个任务是读取24个excel文件,每个文件有8个选项卡。这需要一段时间,因为必须完成通常的排序和列命名等。
现在最好的策略是什么才能在不读取文件的情况下继续工作?
我能想到的一个选择是保存工作空间并在每次进行分析工作时打开它,但还有其他可能更好的选择吗?
谢谢。
答案 0 :(得分:4)
而不是保存所有工作空间,只保存您阅读过的data.frames。让我们让您从xls文件中读取一些data.frames,并将它们命名为data1
,data2
和data3
。要保存它们,只需执行
save(data1,data2,data3,file =“filename.Rdata”)
并加载它们执行
负载( “filename.Rdata”)
它会将data1
,data2
和data3
添加到您的工作空间。
顺便说一下,它适用于R中的任何对象,包括列表,函数和任何你想要的东西,而不仅仅是data.frames。
答案 1 :(得分:0)
我同意之前的回答,这里有一个小技巧来扩展它以构建某种缓存,这在从在线资源中读取数据时特别有趣。
# load data
if (file.exists("cache/my_data.RData") {
load("cache/my_data.RData")
} else {
# read.csv, do whatever pre-processing
# connect to a remote db ...
save(my_object,file="cache/my_data.RData")
}
请注意,这也适用于函数或图形,如@Rufo所说。