R のパッケージ:
Install, CRAN および Github の使い方など

UB3/informatics/r/package

このページの最終更新日: 2023/08/02

  1. 概要: パッケージとは
    • パッケージから関数を読み込む
  2. install.packages によるインストール
  3. CRAN からのインストール
  4. Bioconductor パッケージのインストール
  5. ダウンロードした圧縮ファイルからのインストール
  6. R パッケージの一覧

広告

概要: パッケージとは

R 自体は、さまざまな統計などの関数を走らせるプラットフォームであり、それぞれの関数は パッケージ package または ライブラリ library として用意されている。

パッケージとライブラリを区別していないサイトも多いが、私の理解ではライブラリは関数、パッケージはライブラリとその他の情報 (サンプルデータセットや Readme のような解説) が一緒になったものである。一つのパッケージに、複数の関数が入っていることもある。

したがって、新しい関数をダウンロードするときはパッケージとしてダウンロードし、実行時にはライブラリを読み込む、ということになる。

パッケージには、以下のタイプがある (1)。

  1. R とともに自動でインストールされ、読み込みも必要なく使えるもの。
  2. R とともに自動でインストールされるが、library(パッケージ名) で読み込まないと使えないもの。
  3. install.packages("パッケージ名") でインストールし、かつ library(パッケージ名) で読み込まないと使えないもの。
  4. install.packages("パッケージ名") ではインストールできないもの。

2, 3, 4 番に該当するものについては、R を立ち上げるたびに library(パッケージ名) を実行しなければならない。パッケージ自体は一度インストールすればずっと保存されるので、インストールしなおす必要なない。

設定によって異なるかもしれないが、インストール先のパスは /usr/local/lib/R/4.2/site-library/ のような感じになる。

また、アンインストールは remove.packages("パッケージ名") である。

パッケージから関数を読み込む

方法は 3 通り (8)。

  • library(パッケージ名)
  • require(パッケージ名)
  • パッケージ名::関数名()

3 番目は少し特殊で、パッケージに複数の関数が含まれていて、そのうちの一つを呼び出したい場合に使う。異なるバージョンのパッケージがあって、そのうちの一つを呼び出したいときなどに使用。

library と require の挙動は近いが、インストールされていないパッケージを library(パッケージ名) と実行した場合、エラーが出て計算が止まる。

これに対して、require(パッケージ名) では警告が出るだけで計算が続く。また、require 関数は実行時に論理値を返すので、これで TRUE/FALSE を判定し、「インストールされていなければインストールしてから先に進む」というプログラムを書くことが可能である。全般に、require の方が便利そうである。

install.packages によるインストール

パッケージをインストールするには、install.packages("パッケージ名") とする。install.packages("パッケージ名", dependensies = TRUE) とすると、依存関係のあるパッケージもまとめてインストールできる (2)。

パッケージ名の指定には " " が必要である。つまり seqinr というパッケージをインストールするには install.packages("seqinr") とする。

CRAN からのインストール

CRAN とは Comprehensive R Archive Network の略で、「クラン」または「シーラン」と呼ばれる。R のパッケージが公開されている場所の一つで、経済、機械学習、画像処理などに関連するパッケージが多い。

CRAN にあるパッケージは、install.packages でインストールできそう。

Bioconductor パッケージのインストール

Bioconductor も CRAN と同じような R のパッケージ公開場所の一つである。生物および医学分野のパッケージが多い (3)。

Bioconductor からインストールする場合には、2021 年 12 月現在、BioManager というパッケージを使う。まずは、BioManager v3.14 を以下のようにインストール (2)。

if(!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")

BiocManager::install("パッケージ名")

以下の biocLite を使う方法 (3) は古い方法で、2021 年 12 月にはもう使えなくなっているようだ。

source("http://bioconductor.org/biocLite.R")
biocLite("Biostrings")

ダウンロードした圧縮ファイルからのインストール

コマンドラインからパッケージをインストールしたいときは、次の手順になる。

  • CRAN などからパッケージを .tar などの形でダウンロードする。
  • それを解凍すると、multcomp などといったパッケージ名のフォルダができる。
  • この状態で、ターミナルで R CMD INSTALL パッケージ名とする。sudo 権限が必要かもしれない。

R パッケージの一覧

R のパッケージは膨大で、網羅的なリストを作るのは難しい。以下は有名なもの、私が使っているもののリスト。

汎用的なパッケージ

tidyverse

tidyverse は単独のパッケージでなく、モダンなデータ分析を可能にするパッケージがまとめられたものである。詳細は tidyverse のページ を参照のこと。

devtools

このパッケージがインストールできずに困っていたときに、このページ で以下の記述をみつけて解決したことがあった。あとでまとめる。

"GitHub 上のパッケージをインストールするには remotes::install_github() を使う. devtools::install_github もあるが,これは remotes::install_github() を流用しているに過ぎない. あと,devtools は色んなパッケージに依存していて,依存パッケージをdevtools::install_github でインストールしようとすると事故ることがある"


Specific package

corplot

ggplot でもできるのかもしれないが、こんな感じの複数パラメーターでの相関の図が作れる (6)。

corplot を使った相関の図

survival

生存時間分析 のためのパッケージ。

回帰分析関係

  • lmtest: 線形回帰の条件をテストする。
  • smatr: II 型の線形回帰のためのパッケージ。
  • caret: 統計または機械学習ベースの回帰分析で役に立つ。

Seurat

Single-cell RNA-seq data 解析のためのパッケージ。インストールには時間がかかった。

seqinr

塩基配列、アミノ酸配列解析のためのパッケージ。このパッケージだけではないが、R による塩基配列解析 のページに概要がある。

Maaslin2

maaslinの使い方のメモ がとても参考になる。Microbiome Multivariable Association with Linear Models ver.2 の略で、マイクロバイオームの解析とグラフ化が可能。

xlsx
openxlsx

Excel ファイルを読み込めるようにする。xlsx パッケージは Java に依存しているらしく、インストールに非常に手間がかかるなど使いにくい。

Java に依存せずに動く openxlsx の方がおすすめ。どちらも読み込みの関数は read.xlsx なので、openxlsx::read.xlsx のようにパッケージ名をつけておくとわかりやすいだろう。



広告

References

  1. パッケージの「読み込み」と「追加インストール」. Link: Last access 2019/07/22.
  2. R のパッケージ管理. Link: Last access 2019/07/22.
  3. パッケージ. Link: Last access 2019/07/22.
  4. Bonatesta et al. 2018a. msa An R Package for Multiple Sequence Alignment. Pdf file.
  5. Rのグラフィック作成パッケージ“ggplot2”について. Colorless Green Ideas. Link: Last access 2020/05/28.
  6. Aprile et al. 2020a. In vitro-generated hypertrophic-like adipocytes displaying PPARG isoforms unbalance recapitulate adipocyte dysfunctions in vivo. Cells 9, 1284, 2020.
  7. Bioconductor official. Link: Last access 2021/12/18.
  8. R言語でパッケージから関数を呼び出す. Link: Last access 2021/12/18.

Aprile et al. (2020a) is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited.

コメント欄

サーバー移転のため、コメント欄は一時閉鎖中です。サイドバーから「管理人への質問」へどうぞ。