Rとウェブ解析:データの要約が簡単!「summarytools」パッケージ

Rの解析に役に立つ記事

データの要約は意外と面倒くさい作業です。そこで、手軽にデータの要約が可能なsummarytoolsをご紹介します。

スポンサーリンク
スポンサーリンク

「summarytool」パッケージの導入

下記コードを実行することで導入することができます。お好きな方をどうぞ。

#githubから
#devtoolsがインストールされていなければ#を取って下記のコマンドを実行
#install.packages("devtools")
library("devtools")
install_github("dcomtois/summarytools")

#CRNAからインストール
install.packages("summarytools", type = "source")

実行コマンド

summarytoolsは行やグループ、データフレーム全体の要約ができます。要約のデータは変数に格納してエクセル等に出力可能です。

#ライブラリの読み込み
library("summarytools")

#データ例を作成
Data <- matrix(rep(c(4, 7, 8, NA, 11, 15), 100), 10, 10)
colnames(Data) <- paste("Col", 1:10, sep = "") #行名の付与
Data <- data.frame(Group = sample(c("Group1", "Group2", "Group3"), 10, replace = TRUE, prob = c(1, 1, 1)), Data) #グループ名の追加

#Groupの要約
freq(Data[, 1]) 

Frequencies  
Data$Group  
Type: Character  

Freq   % Valid   % Valid Cum.   % Total   % Total Cum.
------------ ------ --------- -------------- --------- --------------
Group1      5     50.00          50.00     50.00          50.00
Group2      4     40.00          90.00     40.00          90.00
Group3      1     10.00         100.00     10.00         100.00
<NA>      0                               0.00         100.00
Total     10    100.00         100.00    100.00         100.00


dfSummary(Data) 
--------------------------------------------------------------------------------------------
  num   variable.name   properties    factor.levels.or.stats         frequencies   n.valid    
----- --------------- ------------- ------------------------------ ------------- -----------
  1     Group           type:integer  1. Group1                      1: 4 (40%)    10 (100.0%)
class:factor  2. Group2                      2: 3 (30%)               
3. Group3                      3: 3 (30%)               

2     Col1            type:double   avg (sd) = 8 (3.63)            4: 2 (25%)    8 (80.0%)  
class:numeric min &lt; med &lt; max = 4 &lt; 7.5 &lt; 15 7: 2 (25%)               
IQR (CV) = 2.5 (0.45)          8: 2 (25%)               
11: 1 (12.5%)            
15: 1 (12.5%)            

3     Col2            type:double   avg (sd) = 9.11 (4.17)         4: 2 (22.2%)  9 (90.0%)  
class:numeric min &lt; med &lt; max = 4 &lt; 8 &lt; 15   7: 2 (22.2%)             
IQR (CV) = 4 (0.46)            8: 1 (11.1%)             
11: 2 (22.2%)            
15: 2 (22.2%) 

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

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