全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
3303 12
2020-07-12
小白一枚,请问各位大佬:
            我在计算TFP时,已经将重复值duplicates drop 过了, 为什么程序还报错repeated time values within panel?
             以下是我的命令和报错:


    forvalues i = 13/37{  
    use tfp_computing_adj.dta
        duplicates drop year firmid company,force
    keep industry2 year firmid company ln_Yadd lnL lnM lnK
    keep if industry2 == `i'
    levpet ln_Yadd, free(lnL) proxy(lnM) capital(lnK) i(firmid) t(year) reps(5)
    predict tfp_lp,omega
    gen tfp_lp1 = ln(tfp_lp)
    drop tfp_lp
    rename tfp_lp1 tfp_lp
    save tfp_lp`i'
  }


附件列表
下载.png

原图尺寸 46.72 KB

命令和报错

命令和报错

二维码

扫码加我 拉你入群

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

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

全部回复
2020-7-13 05:06:49
想问一下你的firmid和company变量的含义是什么?你注意到没有黄色字体那里的两行,显示没有重复值,是不是作为唯一指示的变量过多,使得前面的duplicates drop 没起到作用,所以还是有重复值。或者是别的什么问题,这只是我的猜测。
循环里面推荐使用:
forvalues i= 13/37{
preserve
...
restore
}
这样可以把use和接下来的两行放到循环外面,建议一下。
二维码

扫码加我 拉你入群

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

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

2020-7-13 13:14:36
DΘstinyじò 发表于 2020-7-13 05:06
想问一下你的firmid和company变量的含义是什么?你注意到没有黄色字体那里的两行,显示没有重复值,是不是作 ...
谢谢你的建议!
firmid   是企业代码
company 是企业名称
因为在循环之前已经duplicates drop 过了,在运行这个循环的时候出现错误,显示有重复值,所以我又把duplicates drop 加到循环里面来,结果还是出错。
二维码

扫码加我 拉你入群

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

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

2020-7-13 16:50:48
乐天8156 发表于 2020-7-13 13:14
谢谢你的建议!
firmid   是企业代码
company 是企业名称
用dataex贴出示例数据看看。
二维码

扫码加我 拉你入群

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

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

2020-7-13 23:03:43
乐天8156 发表于 2020-7-13 13:14
谢谢你的建议!
firmid   是企业代码
company 是企业名称
今天遇到一种情况就是firmid企业代码有缺失值或者有多个为空或者为0情况,而company 企业名称是完整的,duplicates drop year firmid company,不会删除重复值,企业名称不同,是唯一的。但是后面回归的时候i(firmid) t(year)因为之前说的缺失等情况可能会导致没有唯一ID标识,出现这样的错误提示。只是分享一个可能的情况,不一定是这样。
二维码

扫码加我 拉你入群

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

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

2020-7-14 08:43:54
DΘstinyじò 发表于 2020-7-13 23:03
今天遇到一种情况就是firmid企业代码有缺失值或者有多个为空或者为0情况,而company 企业名称是完整的,d ...
非常感谢,我去试试看看单个剔除缺失值后再drop行不行
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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