|
@@ -0,0 +1,56 @@
|
|
|
|
+### R数据保存和加载
|
|
|
|
+
|
|
|
|
+R有内置的数据格式,能够适应R的数据类型,是经过优化的存储方式,便于R快速方便的存储.
|
|
|
|
+
|
|
|
|
+R保存的数据格式有'.RData','.rda','.rds'等,相应的命令为save,save.image,data, writeRDS,loadRDS,其中save用于保存对象到文件中,save.image用于保存当前工作区的镜像,当前工作区包含加载的数据,函数等.data用来加载数据集,writeRDS把对象写入.rds文件,loadRDS执行相反的操作,把.rds文件中的对象加载到R工作空间.
|
|
|
|
+注意:以下命令的参数在"="之前的为参数名称,该参数叫做命名参数,命名参数不是通过参数位置和顺序来识别的,"="之后的为该参数的默认值,即如果不输入该参数,函数将默认使用这个值.
|
|
|
|
+
|
|
|
|
+#### save 保存对象到文件
|
|
|
|
+
|
|
|
|
+格式:save(..., list=character(),
|
|
|
|
+ file = stop("'file' must be specified"), #file参数用于指定保存的目标文件,是必须的,如果没有将显示警告,并停止执行
|
|
|
|
+ ascii = FALSE, version = NULL,
|
|
|
|
+ envir = parent.frame(),
|
|
|
|
+ compress = isTRUE(!ascii),
|
|
|
|
+ compression_level,
|
|
|
|
+ eval.promises = TRUE,
|
|
|
|
+ precheck = TRUE)
|
|
|
|
+
|
|
|
|
+ 其中...参数代表任意多个参数,可以同时保存多个对象,没有个数限制.这里要传入的是对象的名称,可以使符号,也可以是字符串表,用','(英文逗号)隔开.
|
|
|
|
+ list 是包含对象名称的字符向量,功能与...参数相同.
|
|
|
|
+ file 要保存到的目标文件名或路径
|
|
|
|
+
|
|
|
|
+ 举例: save(x, y, z, file='xyz.RData')
|
|
|
|
+ 把对象x,y,z保存到当前文件夹的xyz.RData文件中去.
|
|
|
|
+
|
|
|
|
+ #### save.image()
|
|
|
|
+
|
|
|
|
+ 保存当前环境中的所有对象到文件.RData中,相当于save(list=ls(all.names=TRUE), file='.RData", envir=.GlobalEnv)
|
|
|
|
+ .RData文件是在启动R时默认加载到工作区的数据,在选项--restore的情况下.当退出R环境时,RStudio会询问是否保存当前工作区,如果回答"yes",则RStudio在退出之前会将当前工作区的所有对象和函数保存到.RData文件中,下次启动时会自动加载这些数据.建议您使用这个功能,让您在下次工作时能够回到退出之前的环境.
|
|
|
|
+
|
|
|
|
+ #### data
|
|
|
|
+
|
|
|
|
+ data函数用于加载指定的数据集或者列出可用的数据集,没有参数时列出所有可用的数据集.
|
|
|
|
+ 格式: data(..., list = character(),
|
|
|
|
+ package = NULL,
|
|
|
|
+ lib.loc = NULL,
|
|
|
|
+ verbose = getOption("verbose")
|
|
|
|
+ envir = .GlobalEnv)
|
|
|
|
+
|
|
|
|
+ 参数:package: 指定要加载的数据所在的R包.
|
|
|
|
+ lib.loc: 包所在的地址,如果不指定则先搜索当前加载的包,然后搜索当前工作区中的data文件夹,从中加载数据文件.
|
|
|
|
+ verbose: 是否显示详细信息
|
|
|
|
+ envir: 要加在到哪个工作环境
|
|
|
|
+
|
|
|
|
+ data函数支持四种类型的数据文件:
|
|
|
|
+* '.R','.r':在脚本中的数据,使用source()函数加载
|
|
|
|
+* '.Rdata', '.rda': 使用load()函数加载
|
|
|
|
+* '.tab', '.txt', '.TXT': 文本格式文件,使用read.table(..., Header=T)加载,注意其中的'Header=T'参数,如果没有字段名,会把第一条记录当作字段名
|
|
|
|
+* '.csv', '.CSV': 使用read.table(..., header=T, sep=',')加载,注意同上
|
|
|
|
+
|
|
|
|
+#### load
|
|
|
|
+
|
|
|
|
+#### loadRDS
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+#### writeRDS
|