Rで解析:9変数までのベン図を作成できます「Vennerable」パッケージ


投稿日: Rの解析に役に立つ記事

共通数を示すのに便利なベン図があります。多くは2から4変数の共通数を示すために円を用いての表現が多いと思います。紹介パッケージは円だけでなく四角などを用い、最大9変数のベン図が作成できます。

パッケージバージョンは3.1.0.9000。実行コマンドはwindows 7およびOS X 10.11.2のR version 3.2.3で確認しています。


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

下記、コマンドを実行してください。

#パッケージのインストール
install.packages("devtools")
source("https://bioconductor.org/biocLite.R")
biocLite(c("RBGL","graph"))
devtools::install_github("js229/Vennerable")

実行コマンド

詳細はコメント、パッケージのヘルプを確認してください。

#パッケージの読み込み
library("Vennerable")

###データ例の作成#####
TestData <- list(Group1 = sample(paste0("Group", 1:2000), 1300, replace = FALSE), Group2 = sample(paste0("Group", 1:2000), 800, replace = FALSE), Group3 = sample(paste0("Group", 1:600), 400, replace = FALSE), Group4 = sample(paste0("Group", 1:1900), 700, replace = FALSE), Group5 = sample(paste0("Group", 1:600), 100, replace = FALSE), Group6 = sample(paste0("Group", 1:300), 100, replace = FALSE), Group7 = sample(paste0("Group", 1:1500), 100, replace = FALSE), Group8 = sample(paste0("Group", 1:300), 100, replace = FALSE), Group9 = sample(paste0("Group", 1:1500), 100, replace = FALSE)) ####### #ベン図を作成:Vennコマンド #ラベル名の指定:SetNamesオプション #変数の数で大きさを指定:Weightオプション;TRUEで自動 DemoPlot <- Venn(SetNames = c("TEST1", "TEST2"), Weight = c('01' = 3, '11' = 10, '10' = 20)) #プロット plot(DemoPlot) ###プロット体裁の調整##### #プロットスタイルを指定:typeオプション #2変数;"circles","squares" plot(DemoPlot, doWeights = FALSE, type = "circles") plot(DemoPlot, doWeights = FALSE, type = "squares") #3変数;"triangles","circles","squares" plot(Venn(TestData[1:3]), doWeights = FALSE, type = "triangles") plot(Venn(TestData[1:3]), doWeights = FALSE, type = "circles") plot(Venn(TestData[1:3]), doWeights = FALSE, type = "squares") #3変数以上:"squares", "ChowRuskey", "AWFE" ChoiceType <- c("squares", "ChowRuskey", "AWFE") #プロット for(i in seq(length(ChoiceType))){ plot(Venn(TestData[1:(i + 3)]), doWeights = FALSE, type = ChoiceType[i]) } #参考:9変数のプロット:"battle" plot(Venn(TestData[1:9]), doWeights = FALSE, type = "battle") ######## #0のエリアを表示しない:doEulerオプション #表示しない:TRUE DemoPlot0 <- Venn(SetNames = c("TEST1", "TEST2"), Weight = c('01' = 3, '11' = 10, '10' = 0)) #プロット plot(DemoPlot0, doEuler = TRUE) [/code]


出力例

2変数
・circles
2circles

・squares
2squares

3変数
・triangles
triangles

・circles
circles

・squares
3squares

3変数以上
・squares
squares

・ChowRuskey
ChowRuskey

・AWFE
AWFE

9変数
・battle
battle

・doEulerオプション
doEuler


少しでも、あなたのウェブや実験の解析が楽になりますように!!

スポンサードリンク

関連コンテンツ


スポンサードリンク