从指标变量(Stata)计算教育组的失业率

Computing Unemployment rates by education group from an indicator variable (Stata)

我有以下变量指示观察是工作还是失业,其中 0 表示工作,1 表示失业。

dataex unemp
input float unemp
0
0
0
0
1
.
1

当我列出变量时:

Unemploymen |
 t |              Freq.     
------------+--------------
 Employed   |    80      
 Unemployed |    20   
 Total LF        100    

我基本上想除以 20/100,以获得 20% 的总失业率变量。我现在已经手动完成了这项工作,但我认为最好将其自动化,因为我还想计算不同教育群体和地理区域的失业率。

gen unemployment_broad = .
replace unemployment_broad = (20/100)*100

教育变量如下,其中1“低于基本”, 2“基本”, 3“次要”, 4 "高等教育",

有没有办法计算每个教育组的失业率?

input float educ
2
4
4
4
2
4
1
3
3
3

使用Cyber​​nike的解决方案,我尝试创建一个变量来显示教育失业率,如下所示,但出现错误:

gen unemp_educ = .
replace unemp_educ = bysort educ: summarize unemp

我基本上想通过教育形象化失业。像这样:

graph hbar (mean)  Unemployment, over(education) 

这是因为我还打算按人口统计群体、性别等复制相同的等式。

您的 unemployment 变量编码为 0/1。因此,您可以通过取平均值来获得失业比例。您可以使用 summarize 命令或使用 collapse 命令来执行此操作。这两个都可以由 education 组执行。

clear
input unemp educ
0 2
0 4
0 4
0 4
1 2
0 3
1 3
1 1
1 3
end

bysort educ: summarize unemp

collapse (mean) unemp, by(educ)

list

     +-----------------+
     | educ      unemp |
     |-----------------|
  1. |    1          1 |
  2. |    2         .5 |
  3. |    3   .6666667 |
  4. |    4          0 |
     +-----------------+

作为对您编辑的回应,您还可以使用以下方法将平均值保存到原始数据集:

bysort educ: egen unemp_mean = mean(unemp)

您绘制数据的代码似乎工作正常。