第 5 章 Use R Markdown to Author an Article and a Book
5.2 程式嵌入文本
5.2.2 圖表的標號
我們使用本週的副帶資料CPS1985.csv,其實這筆數據是來自套件AER,但是因為第二列的ID有不連續,所以本書將之移除,此處再使用。
## wage education experience age
## Min. : 1.000 Min. : 2.00 Min. : 0.00 Min. :18.0
## 1st Qu.: 5.250 1st Qu.:12.00 1st Qu.: 8.00 1st Qu.:28.0
## Median : 7.780 Median :12.00 Median :15.00 Median :35.0
## Mean : 9.032 Mean :13.03 Mean :17.78 Mean :36.8
## 3rd Qu.:11.250 3rd Qu.:15.00 3rd Qu.:26.00 3rd Qu.:44.0
## Max. :44.500 Max. :18.00 Max. :55.00 Max. :64.0
我們須要的敘述統計,不能用summary()
這個函數,要使用套件fBasics內的函數basicStats()
,如下:
## wage education experience age
## nobs 533.000000 533.000000 533.000000 533.000000
## NAs 0.000000 0.000000 0.000000 0.000000
## Minimum 1.000000 2.000000 0.000000 18.000000
## Maximum 44.500000 18.000000 55.000000 64.000000
## 1. Quartile 5.250000 12.000000 8.000000 28.000000
## 3. Quartile 11.250000 15.000000 26.000000 44.000000
## Mean 9.031707 13.026266 17.776735 36.795497
## Median 7.780000 12.000000 15.000000 35.000000
## Sum 4813.900000 6943.000000 9475.000000 19612.000000
## SE Mean 0.222676 0.113139 0.534801 0.506996
## LCL Mean 8.594274 12.804013 16.726155 35.799537
## UCL Mean 9.469140 13.248520 18.827316 37.791457
## Variance 26.428702 6.822617 152.444420 137.005092
## Stdev 5.140885 2.612014 12.346838 11.704917
## Skewness 1.685646 -0.205509 0.687582 0.549365
## Kurtosis 4.897286 0.826019 -0.383192 -0.582719
上面的顯示是所有的統計資訊,我們往往只須要少量幾個,例如 “Mean”, “Median”, “Stdev”, “Skewness”, 和”Kurtosis”。此時在markdown內,可以這樣輸出如表5.1:
var.names=c("wage","education","experience","age")
stat.names=c("Mean","Median","Stdev","Skewness","Kurtosis")
tbl1=format(fBasics::basicStats(dat[,var.names])[stat.names,],digits = 2)
knitr::kable(
as.data.frame(tbl1), caption = '4個變數的敘述統計!',
booktabs = TRUE)
wage | education | experience | age | |
---|---|---|---|---|
Mean | 9.0 | 13.03 | 17.78 | 36.80 |
Median | 7.8 | 12.00 | 15.00 | 35.00 |
Stdev | 5.1 | 2.61 | 12.35 | 11.70 |
Skewness | 1.7 | -0.21 | 0.69 | 0.55 |
Kurtosis | 4.9 | 0.83 | -0.38 | -0.58 |