在Stata中,我使用coefplot
包来尝试在同一个图上绘制多个回归中的一个系数(换句话说,将有多个系数,但每个系数来自不同的回归)。
以下是代码(与Plotting same coefficient over time相关),当每个回归中的系数具有相同的名称时,它会完成此:
ssc install coefplot
sysuse auto, clear
estimates clear
regress price mpg if foreign==0
est sto t1
regress price mpg if foreign==1
est sto t2
regress price mpg if rep78==5
est sto t3
coefplot t1 || t2 || t3, drop(_cons) vertical bycoefs yline(0)
这一切都很好,花花公子。但是,当每个回归的系数与不同的变量相关时,我怎么能完成同样的事情呢?例如:
estimates clear
regress price mpg if foreign==0
est sto t1
regress price trunk if foreign==1
est sto t2
regress price weight if rep78==5
est sto t3
coefplot t1 || t2 || t3, drop(_cons) vertical bycoefs yline(0)
当我只想要一个图时,这会生成三个单独的图。我需要做些什么才能做到这一点?我想要的是有一个图表来自mpg
(t1
),truck
(t2
)和weight
({{ 1}})所有绘制在同一个图上。最好还要知道如何在标记这些系数t3
和mpg, truck, weight
之间进行切换。
一种解决方案是使用矩阵,但我想尽可能避免沿着这条路走下去。
答案 0 :(得分:5)
注意:coefplot
是用户编写的命令。
以下示例:
sysuse auto, clear
estimates clear
regress price mpg if foreign==0
est sto t1
regress price trunk if foreign==1
est sto t2
regress price weight if rep78==5
est sto t3
coefplot (t1\t2\t3), drop(_cons) xline(0)
除了通常的help
之外,请查看命令作者Ben Jann的this document。