楼主: kwang1226
2135 4

[其他] 【求助】请问我这个code错误在哪儿?我搞不明白 [推广有奖]

  • 0关注
  • 0粉丝

小学生

0%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
89 点
帖子
4
精华
0
在线时间
3 小时
注册时间
2010-11-19
最后登录
2010-12-7

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
. program define mycox1_d0
  1.
.         version 10.0
  2.
.         args todo b lnf
  3.
.         local t "$ML_y1"        // $ML_y1 is -t
  4.
.         local d "$ML_y2"        // $ML_y2 is d
  5.
.         tempvar xb B A sumd last L
  6.
.         mleval 'xb' = 'b'
  7.
.         // data assumed already sorted by 'negt' and 'd'
  8.
.         local byby "by 'negt' 'd'"
  9.
.         local wxb "$ML_w*'xb'"
10.
.         quietly {
11.
.                 gen double 'B' = sum($ML_w*exp('xb'))
12.
.                 'byby': gen double 'A' = cond(_n==_N, sum('wxb'),.) if 'd'==1
13.
.                 'byby': gen 'sumd' = cond(_n==_N, sum($ML_w*'d'),.)
14.
.                 'byby': gen byte 'last' = (_n==_N & 'd' == 1)
15.
.                 gen double 'L' = 'A' - 'sumd'*ln('B') if 'last'
16.
.                 mlsum 'lnf' = 'L' if 'last', noweight
17.
.         }
18.
. end
然后导入data,就用stata自带的data做个测试,
sysuse cancer, clear
gen drug2 = drug==2
gen drug3 = drug==3
ml model d0 mycox_d0 ( studytime died = drug2 drug3 age, nocons)
ml maximize
跑不出来,提示我
invalid syntax
r(198);
然后我用
ml check

Test 1:  Calling mycox1_d0 to check if it computes log likelihood and
         does not alter coefficient vector...
         FAILED; mycox1_d0 returned error 198.

Here is a trace of its execution:
------------------------------------------------------------------------------
-> mycox1_d0 0 ML_b ML_f __000003 __000004 __000001
            - `begin'
            = capture noisily version 10: mycox1_d0 0 ML_b ML_f __000003 __000004 __000001
              -------------------------------------------------------------------------- begin mycox1_d0 ---
              - version 10.0
              - args todo b lnf
              - local t "$ML_y1" // $ML_y1 is -t
              = local t "studytime" // studytime is -t
invalid syntax
              ---------------------------------------------------------------------------- end mycox1_d0 ---
            - `end'
            = set trace off
------------------------------------------------------------------------------
Fix mycox1_d0.
r(198);

我看不懂问题在哪儿?希望知道的朋友指教。谢谢了。
二维码

扫码加我 拉你入群

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

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

关键词:code ODE COD 不明白 coefficient version already double local

沙发
sungmoo 发表于 2010-11-19 16:37:39 |只看作者 |坛友微信交流群
这是常见的错误吧?

macro的引用要用`'

使用道具

藤椅
kwang1226 发表于 2010-11-20 01:23:54 |只看作者 |坛友微信交流群
2# sungmoo
麻烦你能告诉我具体要改哪些么?我刚开始接触这些命令,还很不熟悉,谢谢了。

使用道具

板凳
kwang1226 发表于 2010-11-20 01:27:43 |只看作者 |坛友微信交流群
2# sungmoo
哦,我知道了,谢谢了,我再重新跑一下看看。

使用道具

报纸
kwang1226 发表于 2010-11-20 01:34:03 |只看作者 |坛友微信交流群
2# sungmoo
可以了,谢谢版主,好好学习天天向上。

使用道具

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

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

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

GMT+8, 2024-11-5 22:06