楼主: xzm1945
4722 0

[问答] 如果回归前需要做box-cox转换,出模型预测是,是不是还得转换回去? [推广有奖]

  • 0关注
  • 0粉丝

本科生

56%

还不是VIP/贵宾

-

威望
0
论坛币
1 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
918 点
帖子
55
精华
0
在线时间
99 小时
注册时间
2009-5-6
最后登录
2024-10-30

楼主
xzm1945 发表于 2022-3-4 10:31:27 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我再网上看到一个spss的box-cox的代码,但是不太懂
SET LENGTH=NONE.
SET MXLOOP = 100000000.
MATRIX.
GET W/VARIABLES=all/FILE='E:\Program Files\IBM\SPSS\Statistics\21\testdata\income.sav'/missing=omit.
COMPUTE NC=NCOL(W).
COMPUTE NR=NROW(W).
COMPUTE Y=MAKE(NR,1,0).
COMPUTE XX=MAKE(NR,NC,1).
COMPUTE YLAM=MAKE(NR,1,1).
COMPUTE BOXCOX=MAKE(61,2,0).
COMPUTE YTEMP=0.
LOOP II=1 TO NR.
COMPUTE Y(II,1)=W(II,1).
LOOP JJ=1 TO NC-1.
COMPUTE XX(II,JJ+1)=W(II,JJ+1).
END LOOP.
COMPUTE YTEMP=YTEMP+LN(Y(II)).
END LOOP.
LOOP TEMP=1 TO 61.
COMPUTE LAMBDA=-3.1+TEMP*0.1.
DO IF LAMBDA=0.
COMPUTE YLAM(:)=LN(Y(:)).
ELSE.
COMPUTE YLAM(:)=(Y(:)&**LAMBDA-1)/LAMBDA.
END IF.
COMPUTE BETA=INV(T(XX)*XX)*T(XX)*YLAM.
COMPUTE MSE=T(YLAM-XX*BETA)*(YLAM-XX*BETA)/NR.
COMPUTE IDGLIKE=-1*NR/2*LN(MSE)+(LAMB-DA-1)*YTEMP.
COMPUTE BoXCOX(TEMP,1)=LAMBDA.
COMPUTE BOXCOX(TEMP,2)=LOGLIKE.
END LOOP.
SAVE BOXCOX/OUTFILE=*.
END MATRIX.
RENAME VARIABLES COL1=LAMBDA COL2=LOGLlKE.


这个代码都什么意思,呢,,我用的时候需要改哪些呢?


在回归前,用box-cox将因变量转为正态后,实际预测是,是不是还得转回去呢?
如果需要转回去,转回去的代码又怎么写呢?
二维码

扫码加我 拉你入群

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

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

关键词:模型预测 Cox box Statistics Variables

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-13 10:48