楼主: xts1xts
3280 18

[其他] STATA求助:如何查找被处罚的交叉任职的董事? [推广有奖]

11
vagrantwoo 发表于 2011-6-16 11:37:56 |只看作者 |坛友微信交流群
use 被处理董事,clear
rename var name
use 董事数据,clear
joinby name using 被处理董事

结果如下:

dm     year          name        position
4        2009        王克昕        董事长
6        2009        方东红        副总经理,董事会秘书
9        2009        陈平           执行董事,营运总裁

使用道具

12
ywh19860616 发表于 2011-6-16 11:50:58 |只看作者 |坛友微信交流群
还可以同时打开2个数据文件啊
一份耕耘,一份收获。

使用道具

13
xts1xts 发表于 2011-6-16 13:07:14 |只看作者 |坛友微信交流群
12# ywh19860616
确实可以同时打开两个,不过我想知道某个被处理的董事是否在其他上市公司担任董事,如果是,那么公司的代码是什么?

使用道具

14
xts1xts 发表于 2011-6-16 13:14:43 |只看作者 |坛友微信交流群
11# vagrantwoo [/b
谢谢~我想知道这么做能达到什么效果呢?我确实有按照你的指令操作了一遍,但是好像和我的预期有点差异。
我想要的结果是:统计违规的董事在其他公司的任职情况,以及他任职的其他公司的代码。

使用道具

15
蓝色 发表于 2011-6-16 14:06:53 |只看作者 |坛友微信交流群
你给的例子的数据里面 每个个人的任职信息

使用道具

16
sungmoo 发表于 2011-6-16 14:21:46 |只看作者 |坛友微信交流群
xts1xts 发表于 2011-6-16 13:14 我想要的结果是:统计违规的董事在其他公司的任职情况,以及他任职的其他公司的代码
*就你给出的数据库而言,以下可以少3行(也许更好理解一些):

use 被处理董事, clear
ren var6 name
g g=1
append using 董事数据
bys name: egen p=min(g)                 /*生成被罚标识,被罚者p=1*/
egen m=group(name dm) if p==1    /*对被罚者按其姓名及其所在公司分组*/
bys name: egen sd=sd(m) if p==1   /*考察每个被罚者对应的组号是否唯一。若唯一,组号的标准差为零或缺失*/
drop if sd==0|sd==.                          /*若被罚者只在一个公司,则其对应的组号是唯一的*/

使用道具

17
sungmoo 发表于 2011-6-16 14:24:45 |只看作者 |坛友微信交流群
xts1xts 发表于 2011-6-16 13:07 确实可以同时打开两个
合并数据库,并不意味着“同时打开两个”。

使用道具

18
xts1xts 发表于 2011-6-16 14:55:09 |只看作者 |坛友微信交流群
17# sungmoo
可以解释一下吗?我不太明白。。

使用道具

19
xts1xts 发表于 2011-6-16 14:57:12 |只看作者 |坛友微信交流群
16# sungmoo
sungmoo,你终于来了~

我按照你说的做了一下,基本解决了我的问题!可以再请教一下,你给的代码的最后几行怎么理解吗?
从:bys name dm: g n=_n
        bys name: egen m=max(n)
        drop if c==m开始!

使用道具

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

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

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

GMT+8, 2024-6-19 11:40