楼主: tryingbing
2876 3

急问stata高手!如何仅复制部分变量 [推广有奖]

  • 0关注
  • 0粉丝

本科生

23%

还不是VIP/贵宾

-

威望
0
论坛币
2 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2708 点
帖子
48
精华
0
在线时间
88 小时
注册时间
2009-12-2
最后登录
2014-3-14

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我的数据构造如下(具体数据是个人自编,只是为了形象的说明数据构造):
                     FirmName       IDnumber          ISIN            v1                v2               v3
  obs1             IBD                12345               123           0.5               0.7             public
  obs2                                                                             0.2               0.1             public
  obs3                                                                           0.01              0.04           public
  obs4             BCL                67891               234           0.6              0.8             private
  obs5                                                                             0.042           0.1            private
...

想通过stata把数据结构变成这样:

                   FirmName       IDnumber          ISIN            v1                v2               v3
  obs1             IBD                12345               123           0.5               0.7             public
  obs2             IBD                12345               123           0.2               0.1             public
  obs3             IBD                12345               123          0.01              0.04           public
  obs4             BCL                67891               234           0.6              0.8             private
  obs5             BCL                67891               234          0.042           0.1            private
...

如何实现?

PS:每一个firm 可以有n个不同的观测值,这n个观测值都属于同一个firm(即同一组)。但每组仅有第一个观测值含有firm的相关信息。 为了告诉stata它们属于同一组,我想将firmname复制给每一组的其他obs。不知如何实现?
或者在不复制的情况下,如何标记同组信息?

希望两种方法都告诉我。
万谢万谢!!!!

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Stata tata Private Public Number private public 如何

沙发
tryingbing 发表于 2012-7-14 12:35:19 |只看作者 |坛友微信交流群
有人知道吗?麻烦指导一下!

使用道具

藤椅
hplcdadong 发表于 2012-7-14 14:29:12 |只看作者 |坛友微信交流群
Assume FirmName is string variable; IDnumber and ISIN are numeric variables. Try the following:

replace  FirmName= FirmName[_n-1] if  length(FirmName)==0
replace  IDnumber=IDnumber[_n-1] if IDnumber>=.
replace  ISIN=ISIN[_n-1] if ISIN>=.

使用道具

板凳
tryingbing 发表于 2012-7-17 13:57:05 |只看作者 |坛友微信交流群
hplcdadong 发表于 2012-7-14 14:29
Assume FirmName is string variable; IDnumber and ISIN are numeric variables. Try the following:

...
It works!
非常感谢!

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-7 09:39