rm(list=ls())
library(knitr)
opts_chunk$set(warning=FALSE, message =FALSE)
stargazer は簡単に作表するパッケージである. 基本的にこのチートシート をみれば大体どのようにカスタマイズすればよいかわかるだろう. 日本語での紹介は以下が参考になる.
- http://ill-identified.hatenablog.com/entry/2014/01/27/012124
- http://ill-identified.hatenablog.com/entry/2014/01/28/214814
実際に stargazer
を用いれば簡単に基本統計量を表示することができる.
library(stargazer)
stargazer(cars,type="html")
Statistic | N | Mean | St. Dev. | Min | Max |
speed | 50 | 15.400 | 5.288 | 4 | 25 |
dist | 50 | 42.980 | 25.769 | 2 | 120 |
また複数の回帰分析の比較表も簡単である.
data(cars)
fm0<-lm(dist~speed, data=cars)
fm1<-lm(dist~speed + I(speed^2), data=cars)
stargazer(fm0,fm1,type="html")
Dependent variable: | ||
dist | ||
(1) | (2) | |
speed | 3.932*** | 0.913 |
(0.416) | (2.034) | |
I(speed2) | 0.100 | |
(0.066) | ||
Constant | -17.579** | 2.470 |
(6.758) | (14.817) | |
Observations | 50 | 50 |
R2 | 0.651 | 0.667 |
Adjusted R2 | 0.644 | 0.653 |
Residual Std. Error | 15.380 (df = 48) | 15.176 (df = 47) |
F Statistic | 89.567*** (df = 1; 48) | 47.141*** (df = 2; 47) |
Note: | p<0.1; p<0.05; p<0.01 |
日本語にするために, 変数名は可能であっても, 統計量の名前の変更方法を私は知らない. さらに出力オプションが latex か html なので, docx 形式の出力はできない. マークダウン形式での出力が望ましいが stargazer
では不可能である.
ここでは基本統計表とモデルの比較表を日本語化してマークダウン形式で出力する方法を示す.
基本統計表
まず tidyverse
の助けを借りて, 次のようにデータフレームを作成する.
library(tidyverse)
tab <- gather(cars,key=variables, values) %>%
group_by(variables) %>%
summarize(観測数=n(),平均=mean(values),標準偏差=sd(values),
最小値=min(values),最大値=max(values)) %>%
dplyr::rename(変数=variables)
その上で pander
を用いて作成する.
library(pander)
pander(tab)
変数 | 観測数 | 平均 | 標準偏差 | 最小値 | 最大値 |
---|---|---|---|---|---|
dist | 50 | 42.98 | 25.77 | 2 | 120 |
speed | 50 | 15.4 | 5.288 | 4 | 25 |
モデル比較表
モデルの比較にはパッケージ memisc
の mtable
を使う.
library(memisc)
mtab <- mtable("Model 1"=fm0,"Model 2"=fm1,
summary.stats=c("sigma","R-squared","N")) %>%
relabel("(Intercept)"="定数項","speed"="速度","I(speed^2)"="速度自乗",
"sigma"="標準誤差","R-squared"="決定係数","N"="観測数")
pander(mtab)
Model 1 | Model 2 | |
---|---|---|
定数項 | -17.579*
(6.758) |
2.470
(14.817) |
速度 | 3.932***
(0.416) |
0.913
(2.034) |
速度自乗 | 0.100
(0.066) |
|
標準誤差 | 15.4 | 15.2 |
決定係数 | 0.7 | 0.7 |
観測数 | 50 | 50 |
.