楼主: 10xiaoy
937 1

[回归分析求助] 双边随机前沿求助 [推广有奖]

  • 1关注
  • 0粉丝

小学生

78%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
87 点
帖子
10
精华
0
在线时间
18 小时
注册时间
2023-8-30
最后登录
2025-1-16

楼主
10xiaoy 发表于 2024-6-11 23:22:13 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
各位uu,我的双边随机前沿,这个出不了结果
      version 9  // 这个命令必须加上
    SFA2tier lny  lnz1 lnz2 lnz3 lnz4 lnz5 ,sigmau(lnx) sigmaw(lnx) check search  ///不固定地区和时间
   
    version 9          // 这个命令必须加上
    ml max             // MLE 估计目标函数
    est store m0 // 保保存结果
提示“could not calculate numerical derivatives
missing values encountered”

但是将()中的lnx删除就可以

      version 9  // 这个命令必须加上
    SFA2tier lny  lnz1 lnz2 lnz3 lnz4 lnz5 ,sigmau() sigmaw() check search  ///不固定地区和时间
   
    version 9          // 这个命令必须加上
    ml max             // MLE 估计目标函数
    est store m0 // 保保存结果

这个问题怎么解决呀?有偿求解!



二维码

扫码加我 拉你入群

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

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

关键词:随机前沿 ENCOUNTERED derivatives Derivative Numerical

沙发
赵安豆 发表于 2024-6-12 17:56:27
你遇到的问题在于`SFA2tier`命令在尝试计算数值导数时遇到了缺失值,这通常是由于数据中的某些观察值无法用于模型的迭代优化过程。具体到你的案例中,问题可能来源于`sigmau()`和`sigmaw()`选项中的对数转换(`lnx`)。

当`lnx`被指定为`sigmau()`和`sigmaw()`的参数时,命令会尝试用每个观察值的对数值来估计随机前沿模型中的方差组件。然而,如果数据中有任何负值或零值,取自然对数(即使用`ln`函数)会导致未定义的结果或者缺失值。

因此,在你的具体例子中,即使移除了`lnx`选项后可以运行成功,这表明原本的命令可能是因为数据中的某些观察值在对数转换时产生问题导致的。为了避免这类错误:

1. 检查所有用于取自然对数的变量(`lnz1`, `lnz2`, ..., `lnz5`)是否包含非正数值。
2. 如果存在负值或零,考虑加一个足够小的正常数再进行对数转换。例如:将`lnx`替换为`ln(x + epsilon)`,其中`epsilon`是一个很小的正值(比如0.01),这可以避免对数函数在非正数值上产生未定义的结果。
3. 或者,在模型设定中重新考虑是否真的需要使用对数转换。如果仅是为了处理数据中的量纲问题或者线性化目的,你可能需要评估这种转换对于你的具体研究问题的必要性和适用性。

最后,确保数据集没有缺失值也是一个好习惯。在运行任何统计命令之前,通过`tabstat varlist, missing`检查变量列表中是否存在缺失观测是推荐的做法。
如果以上建议都不能解决问题,尝试详细查阅Stata文档或在线论坛中关于`sfa2tier`和`ml max`的使用案例和常见问题,可能会有更具体的指导帮助你定位并解决错误。

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-2-7 14:57