我可以在 Stata 中使用哪个函数来复制定量变量?
Which function I can use in Stata to replicate a quantitative variable?
我正在使用一个国家/地区的人进行的抽样调查。每个人都有一个 ID,代表 he/she 所属的家。我正在做一个概率模型来分析户主教育对贫困的影响,但我需要将户主的教育水平复制到所有家庭成员。
我如何在 Stata 中创建一个变量,将户主的教育水平复制到所有家庭成员,如果他们共享相同的家庭 ID?enter image description here?
我需要做一些类似图片的事情。我需要 "schooling of the head of household" 变量。
您的数据示例很有帮助,但仍然不明确,因为 headers 列并非所有合法的 Stata 变量名称,并且不清楚变量是字符串还是带有值标签的数字或数字。有关数据示例的详细建议,请参阅 Stata 标签 wiki。
此示例适用于数值变量。
* Example generated by -dataex-. To install: ssc install dataex
clear
input byte id float(relationship schooling)
1 1 4
1 2 4
1 3 2
2 1 5
2 2 4
3 1 5
3 3 1
end
bysort id : egen wanted = mean(cond(relationship == 1, schooling, .))
list, sepby(id)
+-----------------------------------+
| id relati~p school~g wanted |
|-----------------------------------|
1. | 1 1 4 4 |
2. | 1 2 4 4 |
3. | 1 3 2 4 |
|-----------------------------------|
4. | 2 1 5 5 |
5. | 2 2 4 5 |
|-----------------------------------|
6. | 3 1 5 5 |
7. | 3 3 1 5 |
+-----------------------------------+
如果最多只有一个人是户主,egen
命令的其他一些函数也可以得到相同的结果,包括 min()
、max()
和total()
。如果两个或两个以上的人被记录为户主,那么平均数确实会被记录下来,它可能不是一个整数。
有关解释和讨论,请参阅 this paper 的第 9 节。
我正在使用一个国家/地区的人进行的抽样调查。每个人都有一个 ID,代表 he/she 所属的家。我正在做一个概率模型来分析户主教育对贫困的影响,但我需要将户主的教育水平复制到所有家庭成员。
我如何在 Stata 中创建一个变量,将户主的教育水平复制到所有家庭成员,如果他们共享相同的家庭 ID?enter image description here?
我需要做一些类似图片的事情。我需要 "schooling of the head of household" 变量。
您的数据示例很有帮助,但仍然不明确,因为 headers 列并非所有合法的 Stata 变量名称,并且不清楚变量是字符串还是带有值标签的数字或数字。有关数据示例的详细建议,请参阅 Stata 标签 wiki。
此示例适用于数值变量。
* Example generated by -dataex-. To install: ssc install dataex
clear
input byte id float(relationship schooling)
1 1 4
1 2 4
1 3 2
2 1 5
2 2 4
3 1 5
3 3 1
end
bysort id : egen wanted = mean(cond(relationship == 1, schooling, .))
list, sepby(id)
+-----------------------------------+
| id relati~p school~g wanted |
|-----------------------------------|
1. | 1 1 4 4 |
2. | 1 2 4 4 |
3. | 1 3 2 4 |
|-----------------------------------|
4. | 2 1 5 5 |
5. | 2 2 4 5 |
|-----------------------------------|
6. | 3 1 5 5 |
7. | 3 3 1 5 |
+-----------------------------------+
如果最多只有一个人是户主,egen
命令的其他一些函数也可以得到相同的结果,包括 min()
、max()
和total()
。如果两个或两个以上的人被记录为户主,那么平均数确实会被记录下来,它可能不是一个整数。
有关解释和讨论,请参阅 this paper 的第 9 节。