楼主: zxduck1234
5761 1

[问答] spss能进行box-cox函数转换吗? [推广有奖]

  • 0关注
  • 0粉丝

高中生

45%

还不是VIP/贵宾

-

威望
0
论坛币
133 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
253 点
帖子
27
精华
0
在线时间
0 小时
注册时间
2008-6-18
最后登录
2008-9-23

楼主
zxduck1234 发表于 2008-6-23 10:32:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
我的数据是这样的,一个因变量,16个自变量,他们之间可能是非线性的,如何用spss进行非线性分析(不要自己输模型,因为我不知道是什么模型),或者用spss能进行box-cox函数转换吗?急急急,请高手指点,在线等!
二维码

扫码加我 拉你入群

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

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

关键词:SPSS Cox box PSS 一个因变量 SPSS 函数

回帖推荐

crystal8832 发表于2楼  查看完整内容

SPSS macro for Box-Cox transformations box-cox syntax for spss 時間數列利用R跑BOX COX In statistics, the Box-Cox transformation of the response variable Y is used to make the linear model more appropriate to the data. It can be used to attempt to impose linearity, reduce skewness or stabilize the residual variance. The Box-Cox transformation is defined as: However, the Box-Cox transformation ...

本帖被以下文库推荐

沙发
crystal8832 学生认证  发表于 2015-1-7 10:24:03
SPSS macro for Box-Cox transformations
box-cox syntax for spss 時間數列利用R跑BOX COX
In statistics, the Box-Cox transformation of the response variable Y is used to make the linear model more appropriate to the data. It can be used to attempt to impose linearity, reduce skewness or stabilize the residual variance. The Box-Cox transformation is defined as:

However, the Box-Cox transformation is not yet supported in SPSS. I write a macro to compute log-likelihood for different lambda. If you have any better way, please let me know.


*
* Box-Cox Transformation
*
SET LENGTH=NONE.
SET MXLOOP = 100000000.
MATRIX.
GET X/VARIABLES=x/MISSING=OMIT.
GET Y/VARIABLE=y /MISSING=OMIT.
COMPUTE NR =NROW(X).
COMPUTE NC =NCOL(X).
COMPUTE PI=4*ARTAN(1).
COMPUTE XX=MAKE(NR,NC+1,1).
COMPUTE YLAM=MAKE(NR,1,1).
COMPUTE BOXCOX=MAKE(61,2,0).
COMPUTE YTEMP=0.
LOOP I=1 TO NR.
COMPUTE XX(I,1)=1.
COMPUTE XX(I,2)=X(I).
COMPUTE YTEMP=YTEMP+LN(Y(I)).
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 LOGLIKE=-1*NR/2*LN(2*PI)-NR/2*LN(MSE)-1/2+(LAMBDA-1)*YTEMP.
COMPUTE BOXCOX(TEMP,1)= LAMBDA.
COMPUTE BOXCOX(TEMP,2)= LOGLIKE.
END LOOP.
SAVE BOXCOX /OUTFILE=*.
END MATRIX.
RENAME VARIABLES COL1= LAMBDA COL2= LOGLIKE.
GRAPH
/SCATTERPLOT(BIVAR)=LAMBDA WITH LOGLIKE /MISSING=LISTWISE
/TITLE= 'Log-Likelihood versus lambda'.



標籤: SPSS, Statistical Analysis

反應:   

2 意見:
匿名提到...
Hey, could you please let me know how to use your Box-Cox transformation SPSS syntax? What are the y, x1 and x2? Thanks a lot.

Please reply to maernest@polyu.edu.hk at your earliest possible.

2008年2月19日 上午 12:23  
My Blog 提到...
tep 1. Open your sav file

Step 2. File-→New-→Syntax

Step 3. Copy the code into syntax window

Step 4. From the SPSS Syntax editor menu → Run→All

Dependent variable: Y

Independent variable: X1, X2, X3, ...., Xp

If you have any problem, let me know!

Good luck!
已有 1 人评分经验 论坛币 收起 理由
bakoll + 3 + 3 精彩帖子

总评分: 经验 + 3  论坛币 + 3   查看全部评分

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-24 12:28