本文へスキップ
からだにいいもの

Rのトピックスを中心に『まだ、まだ、知らない、役に立つ情報?』を発信します。

Rで解析:手軽に記述統計「desctable」パッケージ

手軽にデータの記述統計を確認できるだけでなく、DTパッケージを利用してウェブブラウザからエクセルの保存やコピーが可能です。

パッケージバージョンは0.1.0。実行コマンドはwindows 11のR version 4.1.2で確認しています。

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

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

#パッケージのインストール
install.packages("desctable")
スポンサーリンク

実行コマンド

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

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

###データ例の作成#####
#tidyverseパッケージがなければインストール
if(!require("tidyverse", quietly = TRUE)){
  install.packages("tidyverse");require("tidyverse")
}
set.seed(1234)
n <- 30
TestData <- data.frame("Group" = factor(sample(paste0("Group", 1:3),
                                               n, replace = TRUE)),
                       "Data1" = sample(rnorm(10), n, replace = TRUE),
                       "Data2" = sample(rnorm(1), n, replace = TRUE),
                       "Data3" = sample(rnorm(5), n, replace = TRUE))
########

#データの記述統計を表示:desctableコマンド
#変数のクラスに対する処理を設定:statオプション
#出力ラベル = 処理内容で記述,処理内容が複数の場合は|で区切る
desctable(TestData, stats = list("N" = length,
                                 "%" = ~ if(is.factor(.)) ~ percent(.),
                                 "mean" = ~ if(is.factor(.)) ~ NA | mean(.),
                                 "sd" =  ~ if(is.factor(.)) ~ NA | sd(.),
                                 "Med" = median,
                                 "Max" = max,
                                 "Min" = min))
#       <U+00A0>  N        %       mean        sd         Med       Max         Min
#1         Group 30       NA         NA        NA          NA        NA          NA
#2 Group: Group1  6 20.00000         NA        NA          NA        NA          NA
#3 Group: Group2 14 46.66667         NA        NA          NA        NA          NA
#4 Group: Group3 10 33.33333         NA        NA          NA        NA          NA
#5         Data1 30       NA -0.3926371 1.1685124 -0.03763026  1.029563 -2.20434809
#6         Data2 30       NA -1.1265701 0.0000000 -1.12657011 -1.126570 -1.12657011
#7         Data3 30       NA  0.5507246 0.7697034  0.16611512  2.135383 -0.04670306   

#グループ分けして出力:group_byコマンド
TestData %>%
  group_by(Group) %>%
  desctable(stats = list("N" = length,
                         "%" = is.factor ~ percent,
                         "mean" = is.factor ~ NA | mean,
                         "sd" =  is.factor ~ NA | sd,
                         "Med" = median, "Max" = max, "Min" = min))

#インタラクティブなテーブルを作成:datatableコマンド
TestData %>%
  group_by(Group) %>%
  desctable(stats = list("N" = length,
                         "%" = is.factor ~ percent,
                         "mean" = is.factor ~ NA | mean,
                         "sd" =  is.factor ~ NA | sd,
                         "Med" = median, "Max" = max, "Min" = min)) %>%
  datatable()

出力例

ウェブブラウザからデータの保存・コピーが可能です。なお、chromeで動作を確認しています。

別ウィンドで開くのは下記リンクをクリック。
https://www.karada-good.net/wp/wp-content/uploads/2017/05/desctable.html

・インタラクティブなテーブルを作成:datatableコマンド

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

スポンサーリンク
Prices and shipping availability may change. Please refer to the product page at time of purchase.
Content displayed on this site is provided by Amazon and may be updated or removed.
Amazon Associate, karada-good earns income through qualifying sales.