Graph 从Stata中的虚拟变量绘制线性图

Graph 从Stata中的虚拟变量绘制线性图,graph,plot,binary,stata,fractions,Graph,Plot,Binary,Stata,Fractions,我想按性别绘制我感兴趣的主要变量中1和0的分数的线性图 我知道如何使用条形图,使用count或mean,但这些命令在双向图中似乎不起作用 有人能为我提供一个快速指南吗?OP在评论中报告了这一点: graph bar (mean) fertzer, over(sexhead2) by(wave) 此处fertzer是一个指标变量(虚拟,所谓),如果家庭使用化肥,则值为1,否则为0sexhead2也是家庭户主为男性或女性的指标,wave表示2011年或2012年 但尝试使用此语法获取线图失败: g

我想按性别绘制我感兴趣的主要变量中1和0的分数的线性图

我知道如何使用条形图,使用count或mean,但这些命令在双向图中似乎不起作用


有人能为我提供一个快速指南吗?

OP在评论中报告了这一点:

graph bar (mean) fertzer, over(sexhead2) by(wave)
此处
fertzer
是一个指标变量(虚拟,所谓),如果家庭使用化肥,则值为1,否则为0
sexhead2
也是家庭户主为男性或女性的指标,
wave
表示2011年或2012年

但尝试使用此语法获取线图失败:

graph twoway (mean) fertzer, over(sexhead2) by(wave) 
这是一个类似于这个问题的语法:

sysuse auto, clear 

gen himpg = mpg > 20 

egen mean = mean(himpg), by(foreign rep78) 

line mean rep78, by(foreign) ytitle(fraction with more than 20 miles/gallon) yla(, ang(h)) sort 

twoway connected mean rep78, by(foreign) ytitle(fraction with more than 20 miles/gallon) yla(, ang(h)) sort 

使用双向
two-way
,与
graph hbar
graph bar
graph dot
不同的是,在绘制图形之前,必须将均值创建为新变量。像
(mean)
这样的语法不随
双向提供

请显示无法获取详细注释的双向代码。但是,通常需要创建一个平均值,然后绘制它。1s的分数只是一个指标变量的平均值,0s的分数是它的补码。感谢您的及时回复。这是我用于条形图的代码,它可以工作:条形图(平均值)fertzer,超过(sexhead2)乘以(wave)。在这里,fertzer是家庭是否使用化肥的虚拟对象,sexhead2也是家庭户主是男性还是女性的虚拟对象,wave是2011年和2012年调查浪潮的年度虚拟对象。理想情况下,我希望在一个折线图中使用相同的图形,所以我尝试了用(wave)在(sexhead2)上绘制双向(平均值)fertzer,但是命令说它无法识别变量mean。确实如此。
twoway
的语法图清楚地表明,这种语法是不允许的。我将发布一个答案。你不应该在注释中嵌入“长”代码片段。这是不必要的阅读困难。您可以编辑您的原始帖子并将其包含在那里。这同样适用于答案注释部分中的其他代码。如果你想分享你对这个问题的解决方案,我相信你可以发布一个答案(是的,对你自己的问题)。因为我们使用的是“by”,我们有2011年和12年的并列图表。然而,我想在同一张图中绘制使用肥料的雄性和雌性的分数,并将我的x轴标记为年(波),这样雄性和雌性在同一张图中有不同的线。这就是我使用的:egen mean=mean(fertzer),by(wave sexhead2)line mean sexhead2,by(wave)ytitle(使用化肥的家庭比例)排序双向连接的mean sexhead2,by(wave)ytitle(使用化肥的家庭比例)排序,这给了meNick,我想我找到了我想要的。这里是我所拥有的:tw(如果sexhead2==1,则连接平均波)//(如果sexhead2==0,则连接平均波),ytitle(使用化肥的家庭比例)