王笑权
不知有哪位朋友在读《医学综合评价方法及其应用》这本书,第五页有公式(1-2)
ak=a0(1+x)Y*。通过在SAS中编辑程序可见其拟合不了原始数据,如;
data db;
input n a@@;
j=dif(a);/*下一期与上一期差值*/
sumj+j;/*累计差值*/
x=exp(1/n*log(a/(a-sumj)))*100;/*平均发展速度*/
ak=(a-sumj)*exp(n*log((1+x)/100)); /*由平均发展速度逆推得来各期实际值*/
cards;
1 1 2 2 3 4 4 8 5 16 6 32 7 64
;
proc print;
run;
输出的ak不等于a。
Obs n a j sumj x ak
1 1 1 . 0 100.000 1.0100
2 2 2 1 1 141.421 2.0284
3 3 4 2 3 158.740 4.0761
4 4 8 4 7 168.179 8.1920
5 5 16 8 15 174.110 16.4648
6 6 32 16 31 178.180 33.0928
7 7 64 32 63 181.145 66.5145
如果把上述的语句改动一点
ak=(a-sumj)*exp(n*log((x)/100));
便得
Obs n a j sumj x ak
1 1 1 . 0 100.000 1
2 2 2 1 1 141.421 2
3 3 4 2 3 158.740 4
4 4 8 4 7 168.179 8
5 5 16 8 15 174.110 16
6 6 32 16 31 178.180 32
7 7 64 32 63 181.145 64
可见ak=a,能反向求得原始数据;故本人认为,教材中的这个公式有问题。诸位懂行的请指点一下,我的理解可对?
注:y*是指数