且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《数据驱动的网络分析》——6.3 使用R工作区

更新时间:2022-09-28 11:33:23

本节书摘来自异步社区《数据驱动的网络分析》一书中的第6章,第6.3节,作者: 【美】Michael Collins 更多章节内容可以访问云栖社区“异步社区”公众号查看。

6.3 使用R工作区

R为用户提供了一个持久化的工作区,也就是说,当用户退出R会话,他们可以选择保存数据和变量供未来使用。这一操作基本上是透明完成的,如下面的命令行示例:

> s<-1:15
> s
 [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
> t<-(s*3) - 5
> t
 [1] –2 1 4 7 10 13 16 19 22 25 28 31 34 37 40
>
Save workspace image? [y/n/c]: y
$ R --silent
> s
 [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
> t
 [1] –2 1 4 7 10 13 16 19 22 25 28 31 34 37 40

每当你从特定目录中启动R,它会检查工作区文件(._RData),_如果存在则加载其内容。在退出会话时,.RData会在用户请求时更新。在会话期间,也可以用save.image()命令保存工作区。这在尝试新分析或者长命令时可能救你的命。

你可以使用ls函数获得工作区中对象的列表,该命令返回对象名称组成的一个矢量。这些对象可以用rm函数删除。工作区中的对象可以用save和load函数保存和加载。这些命令的参数是对象的列表和一个文件名,自动将结果加载到环境中:

> #我们首先创建一些简单的对象
> a<-1:20
> t<-rnorm(50,10,5)
> # Ls将显示这些对象
> ls()
[1] "a" "t"
> # 现在我们保存它们
> save(a,t,file='simple_data')
> #删除对象并查看
> rm(a,t)
> ls()
character(0)
> load('simple_data')
> ls()
[1] "a" "t"

如果你打算加载一个简单的R脚本,可以使用source命令加载文件。Sink命令将把输出重定向到一个文件。