データ内に潜む欠損値を把握することは重要な作業です。データが揃うとすぐに解析したくなりますが、まずは冷静に欠損値を把握してデータの傾向を改めて見つめてはいかがでしょうか。
本パッケージでは欠損値に関する情報を多くの表現で示すことができます。その中から、8つの表現方法とコマンドを紹介します。その他のコマンドはパッケージヘルプを参考ください。
パッケージバージョンは6.2.2。windows11のR version 4.2.2で確認しています。
パッケージのインストール
下記コマンドを実行してください。
#パッケージのインストール install.packages("VIM")
実行コマンドの紹介
パッケージから役に立ちそうな”aggr”と8つの出力コマンドを紹介します。詳細はコメントならびにパッケージヘルプを確認してください。
#パッケージの読み込み library("VIM") ###データ例の作成##### set.seed(1234) n <- 50 TestData <- data.frame(Group = sample(paste0("Group", formatC(1:n, width = 2, flag = "0")), n, replace = TRUE), Data1 = sample(c(NA, 1:10), n, replace = TRUE), Data2 = sample(NA, n, replace = TRUE), Data3 = sample(c(NA, 5:10), n, replace = TRUE), Data4 = sample(c(NA, 7:10), n, replace = TRUE)) #色の設定 #色の透明度を調整:alphablend DrowCol <- c("#4b61ba", alphablend("#a87963", 0.6)) ######## #各データの欠損値数と欠損値を含む行とデータの関係を表示:aggrコマンド a <- aggr(TestData, col = DrowCol) #結果の表示 a Missings in variables: Variable Count Data1 6 Data2 50 Data3 3 Data4 15 #summaryコマンドで情報を表示 summary(a) Missings per variable: Variable Count Group 0 Data1 6 Data2 50 Data3 3 Data4 15 Missings in combinations of variables: Combinations Count Percent 0:0:1:0:0 32 64 0:0:1:0:1 9 18 0:0:1:1:1 3 6 0:1:1:0:0 3 6 0:1:1:0:1 3 6 #項目の出現数に対する欠損値を含む項目数を棒グラフで表示:barMissコマンド #例えば下記のデータでは #項目 Data1 Data2 #項目1 1 2 #項目1 1 NA #出現数(青のバー)2で欠損値(グレーのバー)1になります barMiss(TestData[, c(1, 4, 5)], only.miss = FALSE, xlab ="", col = DrowCol) #欠損値を含めて散布図で表示:marginmatrixコマンド #欠損値の色はcolオプションの2番目に指定した色 marginmatrix(TestData[, c(2, 4)], col = c("#4b61ba", alphablend("#a87963", 0.6)), pch = c(17, 16)) #2要素を欠損値の情報を含めて散布図で表示:marginplotコマンド #欠損値の色はcolオプションの2番目に指定した色 marginplot(TestData[, c(2, 4)], col = c("#4b61ba", alphablend("#a87963", 0.6)), pch = c(17, 16)) #ヒートマップで欠損値を表示:matrixplotコマンド matrixplot(TestData, sortby = colnames(TestData[1]), col = "#4b61ba", fixup = FALSE) #モザイクプロットで欠損値を表示:mosaicMissコマンド #欠損値の色はcolオプションの2番目に指定した色 mosaicMiss(TestData[, 1:2], col = c("#4b61ba", alphablend("#a87963", 0.6))) #平行線で欠損値を表示:parcoordMissコマンド #欠損値の色はcolオプションの2番目に指定した色 parcoordMiss(TestData[, 1:2], col = c("#4b61ba", alphablend("#a87963", 0.6))) #箱ひげ図で欠損値を表示:pboxコマンド pbox(TestData, col = DrowCol) #密度分布を含めた散布図で欠損値を表示:scattmatrixMissコマンド #比較対象はhighlightオプションで指定 scattmatrixMiss(TestData, col = DrowCol, highlight = colnames(TestData[4]))
出力例
・項目の出現数に対する欠損値を含む項目数を棒グラフで表示
・欠損値を含めて散布図で表示
・2要素を欠損値の情報を含めて散布図で表示
・ヒートマップで欠損値を表示
・モザイクプロットで欠損値を表示
・平行線で欠損値を表示
・箱ひげ図で欠損値を表示
・密度分布を含めた散布図で欠損値を表示
少しでも、あなたの解析が楽になりますように!!