我有一个数据集,允许链接朋友(即观察对等组),从而可以观察到个人朋友的特征 . 我所拥有的是一个8位数的标识符,id,每个id的朋友id(最多10个朋友),然后是许多特征变量 .
我想带个人并创建一个变量,这些变量是每个朋友的外国出生地位 .
如果外国出生,我已经有一个每个人的指标为1 . 以下是一个小例子,仅供一位朋友使用 . 注意, MF1
表示男性朋友1,然后 MF1id
是男性朋友1的身份证号码 . 受访者最多可列出5位男性朋友和5位女性朋友 .
所以,我需要Stata查看 MF1id
然后将其匹配到id列,然后查看f_born以查找匹配的id,最后输入 f_born
的值,然后返回到 MF1f_born
下的原始id .
编辑:我在解释数据结构方面表现不佳 . 我有一个横截面,所以每个唯一身份1观察 . 第1行是第一个8位数的id号,其中所有变量都在该行之后 . 重复的id号位于为每个人列出的朋友ID(例如mf1id)和id列之间 . 我希望这更清楚一点 .
2 回答
凯文克劳写了
vlookup
,这使得这种事情很容易:因此,Dimitriy对vlookup的建议是完美的,除非它对我不起作用 . 在用我的数据集尝试vlookup之后,Dimitriy用于他的示例的UCLA数据和我创建的玩具数据集vlookup总是在程序试图将临时文件保存到我的临时文件夹时失败 . 下面是vlookup的程序 . 注意它设置tempfile文件,操作数据,然后保存文件 .
出于某种原因,Stata在save`文件'中给了我一个错误,“无效文件”,替换点 . 我有一个受限制的数据集,需要将我的所有Stata临时文件指向一个非常特定的文件夹,该文件夹中有一个擦除程序经常扫描它 . 我不知道为什么这会产生问题,但也许是,我真的不知道 . 无论如何,我调整了vlookup程序,它似乎做了我现在需要的 .
好吧,这解决了我的问题 . 感谢所有回复的人,没有你,我不会想到这一点 .