全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
23726 6
2014-11-20
请教各位大侠,如何根据一个变量把观测值分组变名字。搜索了版块里相关的帖子,都没有我这种情况的。所以发帖希望各位前辈可以帮忙。情况比较难描述,请看下图。现在的情况如图:
id year policy
au20000010c 2005 us gaap
au20000010c 2005 IFRS
au20000010c 2006 us gaap
au20000010c 2006 IFRS
au20000010c 2007 IFRS
au20000010c2008 IFRS
想根据policy分组 但是新的组的id有一点变动,如图:
id year policy
  au20000010c 2005 us gaap
  au20000010c 2006 us gaap
au20000010u 2005 IFRS
au20000010u 2006 IFRS
au20000010u 2007 IFRS
au20000010u 2008 IFRS
实在非常感谢!补充一下
我现在用sort id policy year 可以做出第二个图的分组。 但是不知道如何改这个名字。
二维码

扫码加我 拉你入群

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

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

全部回复
2014-11-20 09:12:53
复制代码
二维码

扫码加我 拉你入群

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

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

2014-11-20 22:52:27
ywh19860616 发表于 2014-11-20 09:12
能那么快得到您的帮助,非常感谢!!!!!我用了您的代码,并稍加改变: relpace id=subinstr (id,"c","u",1) if policy=="IFRS" 就对了。
但是我仔细看了下我的数据后发现我有个地方弄错了。应该是“如果policy为IFRS,则id保留不变,而对于用 us gaap的id末尾从c变为u"所以我把我代码改成 relpace id=subinstr (id,"c","u",1) if policy!="IFRS". 但是这样的话别的id的c也变成了u.
我的主旨是对于一个id同时拥有2个policy的,分组并改变名字。而不影响只有一个policy的id名字。
不知道您是否能理解我的意思,对我自己的失误我很抱歉。
二维码

扫码加我 拉你入群

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

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

2014-11-21 08:47:44
复制代码


如果不是这个结果,请把你需要的结果给出来。
二维码

扫码加我 拉你入群

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

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

2014-11-21 19:09:59
ywh19860616 发表于 2014-11-21 08:47
如果不是这个结果,请把你需要的结果给出来。
得长感谢您这么迅速的回复,我一开始也是按照您这个方式做的 但是这个命令会导致所有用us gaap的公司都变成id尾数为U 如图
id year policy
au20000010u 2005 us gaap
au20000010u 2006 us gaap
au20000010c 2005IFRS
  au20000010c 2006 IFRS
  au20000010c 2007 IFRS
  au20000010c2008 IFRS
au20000012u 2007us gaap
au20000012u 2007us gaap
au20000012u 2007 us gaap
我的目的是:对于相同的id, 如果他有两个policy的话,把用us gaap的那个id末尾变为u.但是对于只用us gaap 的id,不改变他的id. 因为有些用us gaap的id的末尾也可能为c.如果用您的这个公式或者我先前的那个公式,都会使使用单一us gaap的公司id也发生变化。又如同上图的”au20000012u".
我希望得到的结果是
id year policy
au20000010u 2005 us gaap
au20000010u 2006 us gaap
au20000010c 2005IFRS
  au20000010c 2006 IFRS
  au20000010c 2007 IFRS
  au20000010c2008 IFRS
au20000012c 2007us gaap
au20000012c 2007us gaap
au20000012c 2007 us gaap
对于同时拥有两个policy的id改变其用us gaap的id尾数,而拥有单一policy的id不改变其尾数。
不知道这样您是否能明白? 实在非常感谢
二维码

扫码加我 拉你入群

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

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

2014-11-21 22:36:11
还是没有理解你的意思,比如现在原始数据为

id  year  policy
au20000010c  2005  us gaap
au20000010c  2005  IFRS
au20000010c  2006  us gaap
au20000010c  2006  IFRS
au20000010c  2007  IFRS
au20000010c  2008  IFRS

这时候的结果是什么?你能具体列出来吗?上一个帖子中你给出的结果
au20000012c 2007 us gaap  
au20000012c 2007 us gaap  
au20000012c 2007  us gaap  

为什么这不是属于同一个id有多个us gaap?
还有,需要用id和year同时识别吗?还是只用id?
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群