Rで解析データをクラウドストレージから読み込む

r
解析の生データをクラウドストレージから読み込む方法を紹介します
Published

2026-04-13

Modified

2026-04-13

解析の生データをクラウドストレージから読み込む方法を紹介します。

この記事では、以下のような管理方法を前提とします。

このように分けることで、データとコードを分離して管理できます。 また、生データを Git管理下に置かなくても、クラウドストレージを使ってバックアップや共有をしやすくなります。

ただし、この方法はクラウドストレージそのものに依存するのではなく、R から通常のファイルパスとして参照できる場所にデータがあることを前提としています。 たとえば Google Drive for desktop や OneDrive、Dropbox などを使えば、クラウド上のデータをローカルのファイルと同じように扱うことができます。

概念図を示すと、以下のようになります。

概念図

.Renvironファイルの作成

解析コードをGit管理しつつ、データの保存場所をローカル環境ごとに切り替えたい場合は、.Renvironファイルに環境変数として保存先を定義しておくと便利です。

たとえば、以下のように設定します。

.Renviron
PROJECT_DATA_DIR=C:/Users/Username/Dropbox/GitHub/repository-name

データの読み込み

.Renvironに環境変数を設定しておけば、RではSys.getenv()を使ってその値を取得できます。

data_dir <- Sys.getenv("PROJECT_DATA_DIR")

このようにして取得したパスを使えば、クラウドストレージ上にあるデータを、ディレクトリ構造を保ったまま読み込めます。

必要に応じて、設定が存在するか確認しておくと安全です。

data_dir <- Sys.getenv("PROJECT_DATA_DIR")

if (identical(data_dir, "")) {
  stop("PROJECT_DATA_DIR is not set.")
}
Warning

.Renviron ファイルを新しく作成・編集した場合は、Rセッションを再起動して反映させてください。

.Renvironファイル使う際の注意点

保存場所

.Renviron は、このプロジェクト専用の設定として使うなら、プロジェクトのルートディレクトリに置くとわかりやすいです。
一方で、複数のプロジェクトで共通して使いたい設定は、ユーザー単位の .Renviron に書く方法もあります。

パスの書き方

.Renviron には、絶対パスを書いておくのが安全です。

Gitで管理しない

.Renviron は、通常は Git 管理下に置かない方がよいです。
そのため、.gitignore.Renviron を追加して、誤ってコミットしないようにしておきます。

.gitignore
.Renviron

ただし、.gitignore は未追跡ファイルを無視するための設定です。
すでに Git にコミット済みの .Renviron には、そのままでは効果がありません。
誤って追跡してしまった場合は、別途 Git 側で追跡対象から外す必要があります。

共有方法

.Renviron は各自のローカル環境で作成することになるため、リポジトリには含めません。
その代わり、README.md などに .Renviron の作成方法を記載しておくと、共同研究者や将来の自分が環境を再構築しやすくなります。

まとめ

生データをクラウドストレージに置き、解析コードをGitHubで管理し、両者を.Renvironの環境変数でつなぐことで、データとコードを分離しつつ、再現性のある解析環境を作ることができます。

クラウドストレージ上のデータをRから通常のファイルパスとして参照できる環境であれば、この方法は比較的簡単に導入できます。

なぜこの方法をまとめたか

余談ですが、この方法は、私が最近のプロジェクトで実際に採用している管理方法です。 経緯としては、Cドライブ直下にGitHubフォルダを作り、そこにデータをすべて入れていたのですが、ある日そのPCが起動しなくなってしまい、データを失いかけました。

そこで、データはクラウドストレージに置いておき、コードはGitHubで管理する方法に切り替えました。 バックアップの重要性を痛感した経験から、データとコードの管理方法を見直すことにしました。