Rでオブジェクトをファイルに保存または読み込みする方法を記載します。

長時間の計算による解析結果をファイルに保存しておくことは、解析手続きの分割が行えるため、とても役に立ちます。
解析手続きの分割について、解析Aの結果を解析Bで用いる場合という例でご説明します。
同じスクリプトで解析Aと解析Bを記載すると、解析Bを変更した際に再度解析Aを実行しないといけません。解析Aの処理時間が短い場合は問題ありませんが、長い処理時間がかかる場合は効率が悪くなります。そのため、ある程度重い処理を実行するときは、解析手続きの分割を考えた方が良いと考えます。

保存

保存はsaveRDS関数を用います。


> # 計算結果をobjに格納
> obj <- lm(Sepal.Length ~ Sepal.Width, data = iris) > # objの表示
> obj

Call:
lm(formula = Sepal.Length ~ Sepal.Width, data = iris)

Coefficients:
(Intercept)  Sepal.Width  
     6.5262      -0.2234

> # "lm.obj"として保存
> saveRDS(obj, file = "lm.obj")

読み込み

読み込みにはreadRDS関数を用います。


> # "lm.obj"の読み込み
> obj2 <- readRDS("lm.obj") > # obj2の表示
> obj2

Call:
lm(formula = Sepal.Length ~ Sepal.Width, data = iris)

Coefficients:
(Intercept)  Sepal.Width  
     6.5262      -0.2234

saveRDS関数で作成したファイルを別OSで読み込み

Ubuntu上のRStudioでsaveRDS関数で作成したファイルをWindows上のRStudioで読み込みができるかを試してみました。
Ubuntu上のRStudioの環境設定とWindows上のRStudioの環境設定は、デフォルトのままです。
結果としては、英数字は可能だが、日本語は文字化けをしてしまいました。
UbuntuのRStudioのロケールはja_JP.UTF-8を用いておりますが、WindowsのRStudioのロケールはJapanese_Japan.932であることが原因のような気がします。
ロケールはRStudioのコマンドラインでSys.getlocale関数を実行すれば取得でき、Sys.setlocale関数を実行すれば設定できます。
WindowsのRStudioでja_JP.UTF-8に相当するものを設定できないため、今のところ、日本語の文字化けについては対処の方法が分かっておりません。

関連する記事

  • R UbuntuでRからMariaDBへ接続する方法 UbuntuでRからMariaDBへ接続して、データフレームとして取得する方法をお伝えする。 環境 Ubuntuのバージョン $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENAME=xenial DISTRIB_DESCRIPTION="Ubuntu […]
  • TensorFlow チュートリアルMNIST For Beginnersを試してみるTensorFlow チュートリアルMNIST For Beginnersを試してみる TensorFlowのチュートリアルMNIST For ML Beginnersを試してみる。 プログラミングの世界では、最初に「Hello World」と表示される非常に小さいプログラムを書くことが伝統となっている。 機械学習では、この「Hello […]
  • R実装と解説 対応のない2標本の母平均の差の検定(母分散が異なる) [latexpage] 母分散が異なるの場合の対応のない2標本の母平均の差の検定とは、2つの母集団が正規分布に従い、ともに母分散が異なるとき、一方の母平均が他方の母平均と「異なる」または「大きい」、「小さい」かどうかを、検定統計量がt分布に従うことを利用して検定します。 統計的検定の流れ 検定の大まかな流れを確認しておきます。 […]
  • UCI 機械学習リポジトリのデータセット一覧UCI 機械学習リポジトリのデータセット一覧 UCI machine learning repositoryで公開されているデータセットの一覧をご紹介します。英語での要約(abstract)をgoogle翻訳を使用させていただき機械的に翻訳したものを掲載しました。データセットのサンプルを探す参考にしていただければ幸いです。 掲載内容は2021年10月01日の情報で、データセット数は576です。 2.4 […]
  • R言語 CRAN Task View:政府統計&調査の方法R言語 CRAN Task View:政府統計&調査の方法 CRAN Task View: Official Statistics & Survey Methodologyの英語での説明文をGoogle翻訳を使用させていただき機械的に翻訳したものを掲載しました。 Maintainer: Matthias Templ Contact: matthias.templ at […]
R オブジェクトを保存・読み込みする方法