Stataメモ dyndoc
分析結果を簡単に共有したい時に、スライドやワードにまとめるのが面倒という人むけのStataコマンド。
dyndocコマンドはテキストファイル(.mdなどのマークダウンファイルにも対応)を実行することでHTMLファイルに出力してくれる。
コマンドの前後を<<dd_do>>と<</dd_do>>で挟むことによってdyndocで読み込むことが可能になる。
- 参考サイト
https://www.stata.com/manuals/rptdynamictags.pdf
How to Create an HTML Webpage in Stata using Markdown
dyndoc example.txt, replace
このテキストをメモ帳にコピー&ペーストして、dydocコマンドを実行する。 ~~~ <<dd_do>> sysuse auto, clear des sum sum price if foreign == 0 scalar price1 = r(mean) sum price if foreign == 1 scalar price2 = r(mean) <</dd_do>> ~~~ 国産車の価格の平均値は$<<dd_display: price1>>で、輸入車の価格の平均値は$<<dd_display: price2>>です。 ~~~~ <<dd_do>> graph bar (mean) price (mean) weight, over(foreign) name(graph, replace) title("Price and Weight") graph export "example.png", as(png) name(graph) replace <</dd_do>> ~~~~ <<dd_graph: graphname(graph) saving(example.png) replace height(400)>>
出力されたHTMLを開くとこのようになる。
このテキストをメモ帳にコピー&ペーストして、dydocコマンドを実行する。
. sysuse auto, clear
(1978 automobile data)
. des
Contains data from C:\Program Files\Stata17\ado\base/a/auto.dta
Observations: 74 1978 automobile data
Variables: 12 13 Apr 2020 17:45
(_dta has notes)
-----------------------------------------------------------------------------------------------------------------------------------------------
Variable Storage Display Value
name type format label Variable label
-----------------------------------------------------------------------------------------------------------------------------------------------
make str18 %-18s Make and model
price int %8.0gc Price
mpg int %8.0g Mileage (mpg)
rep78 int %8.0g Repair record 1978
headroom float %6.1f Headroom (in.)
trunk int %8.0g Trunk space (cu. ft.)
weight int %8.0gc Weight (lbs.)
length int %8.0g Length (in.)
turn int %8.0g Turn circle (ft.)
displacement int %8.0g Displacement (cu. in.)
gear_ratio float %6.2f Gear ratio
foreign byte %8.0g origin Car origin
-----------------------------------------------------------------------------------------------------------------------------------------------
Sorted by: foreign
. sum
Variable | Obs Mean Std. dev. Min Max
-------------+---------------------------------------------------------
make | 0
price | 74 6165.257 2949.496 3291 15906
mpg | 74 21.2973 5.785503 12 41
rep78 | 69 3.405797 .9899323 1 5
headroom | 74 2.993243 .8459948 1.5 5
-------------+---------------------------------------------------------
trunk | 74 13.75676 4.277404 5 23
weight | 74 3019.459 777.1936 1760 4840
length | 74 187.9324 22.26634 142 233
turn | 74 39.64865 4.399354 31 51
displacement | 74 197.2973 91.83722 79 425
-------------+---------------------------------------------------------
gear_ratio | 74 3.014865 .4562871 2.19 3.89
foreign | 74 .2972973 .4601885 0 1
. sum price if foreign == 0
Variable | Obs Mean Std. dev. Min Max
-------------+---------------------------------------------------------
price | 52 6072.423 3097.104 3291 15906
. scalar price1 = r(mean)
. sum price if foreign == 1
Variable | Obs Mean Std. dev. Min Max
-------------+---------------------------------------------------------
price | 22 6384.682 2621.915 3748 12990
. scalar price2 = r(mean)
国産車の価格の平均値は$6072.4231で、輸入車の価格の平均値は$6384.6818です。
. graph bar (mean) price (mean) weight, over(foreign) name(graph, replace) title("Price and Weight")
. graph export "example.png", as(png) name(graph) replace
file example.png saved as PNG format