Rで解析:data.frameの内容確認に便利「inspectr」パッケージ

Rの解析に役に立つ記事
スポンサーリンク

data.frameの内容確認に便利なパッケージの紹介です。紹介したコマンド以外にも便利なコマンドが収録されています。興味があればパッケージヘルプを確認してください。

パッケージバージョンは1.0.0。windows 10のR version 3.3.2で動作を確認しています。

スポンサーリンク

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

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

#パッケージのインストール
install.packages("inspectr")

実行コマンド

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

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

###データ例の作成#####
n <- 15
TestData <- data.frame("x" = sample(c(1:100, ""), n, replace = TRUE),
                       "y" = sample(c(1:200, NA), n, replace = TRUE),
                       "Data1" = sample(c(1:100, NA), n, replace = TRUE),
                       "Data2" = sample(c(50:150, NA), n, replace = TRUE),
                       "Data3" = sample(c(130:140, NA), n, replace = TRUE),
                       "LETTERS" = sample(c(LETTERS[1:24], NA), n, replace = TRUE),
                       "letters" = sample(c(letters[1:24], NA), n, replace = TRUE))
#確認
TestData
x   y Data1 Data2 Data3 LETTERS letters
1  11  37    56   146   130       J       q
2   9 100     8   137   137       A       u
3  76 183    36   141   130       T       j
4  90  84    74   136   140       H       t
5   2   3    39    62   137       R       o
6  56  91    78   138   134       N       x
7  32  65    88    95    NA       C       i
8   2  12    55    59   137       W       j
9  63 200    53   141   137       N       v
10 61  98    72   150   137       G       a
11 20  92    34   122   133       I       d
12 74  61     3   116    NA       M       m
13 29  83    54    87   139       B       d
14 87  18    96   132   130       P       d
15 81  35    87    88    NA       M       g
########

#データに含まれるNAをFALSEで表示:character_checkコマンド
character_check(TestData)
x    y Data1 Data2 Data3 LETTERS letters
[1,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[2,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[3,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[4,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[5,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[6,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[7,] TRUE TRUE  TRUE  TRUE FALSE    TRUE    TRUE
[8,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[9,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[10,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[11,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[12,] TRUE TRUE  TRUE  TRUE FALSE    TRUE    TRUE
[13,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[14,] TRUE TRUE  TRUE  TRUE  TRUE    TRUE    TRUE
[15,] TRUE TRUE  TRUE  TRUE FALSE    TRUE    TRUE
#参考:列に含まれるNAを計算
apply(character_check(TestData), 2, function(x) {length(x) - sum(x)})
x       y   Data1   Data2   Data3 LETTERS letters 
0       0       0       0       3       0       0

#特定データを基準に抽出する:col_checkコマンド
#データ指定:dataオプション
#列を指定:colnameオプション
#処理内容を指定:funオプション
#結果を作業フォルダにエクセルで出力:outputオプション
#FALSE値を元データから抽出するようです
col_check(data = TestData, colname = "Data1",
          fun = function(x) {
            #Data1が90以上を抽出
            NaCheck <- (x &gt; 90)
            NaCheck <- ifelse(is.na(NaCheck), FALSE, NaCheck)
            ifelse(NaCheck == TRUE, FALSE, TRUE)},
          output = FALSE)
x  y Data1 Data2 Data3 LETTERS letters
14 87 18    96   132   130       P       d

#col2より大きいcol1をTRUEで表示:greater_thanコマンド
#greater_than_equaltoコマンドもあります
greater_than(col1 = TestData[, 4], col2 = TestData[, 5])
[1]  TRUE FALSE  TRUE FALSE FALSE  TRUE    NA FALSE
[2]  TRUE  TRUE FALSE    NA FALSE  TRUE    NA

#col2より小さいcol1をTRUEで表示:greater_thanコマンド
#less_than_equaltoコマンドもあります
less_than(col1 = TestData[, 4], col2 = TestData[, 5])
[1] FALSE FALSE FALSE  TRUE  TRUE FALSE    NA  TRUE
[2] FALSE FALSE  TRUE    NA  TRUE FALSE    NA

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました