Tuesday, January 03, 2006

st: RE: cloglog, loglog, etc

PLUM does -- in part -- what SAS does. It reverses the response 0/1 relationship. Stata and many other software packages parameterize the binary response of 1 as a success. SAS and PLUM do the reverse. Moreover, PLUM's nloglog reverses the sign of the standard loglog output, hence the -n- in nloglog. SAS, following other packages, uses the loglog link.

With respect to priority, I tend to follow GLIM, the software developed by the founders of GLM methodology. They used the same parameterization for cloglog as did Fisher when he initially derived it in 1922.

use lbw gen low0 = 1 if low ==0 replace low0 = 0 if low==1

SUMMARY glm low *, cloglog = gologit2b low *, nloglog (loglog with reversed sign) glm low0 *, cloglog = gologit2b low0 *, nloglog (loglog with reversed sign)

glm low *, loglog = gologit2b low *, cloglog glm low0 *, loglog = gologit2b low0 *, cloglog

Joe Hilbe

. glm low age smoke ptl, nolog fam(bin) link(cloglog)

Generalized linear models No. of obs = 189 Optimization : ML Residual df = 185 Scale parameter = 1 Deviance = 222.6159083 (1/df) Deviance = 1.203329 Pearson = 185.6292037 (1/df) Pearson = 1.003401

Variance function: V(u) = u*(1-u) [Bernoulli] Link function : g(u) = ln(-ln(1-u)) [Complementary log-log]

AIC = 1.22019 Log likelihood = -111.3079541 BIC = -747.1073

------------------------------------------------------------------------------ | OIM low | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | -.047111 .0274916 -1.71 0.087 -.1009935 .0067715 smoke | .4509498 .2700837 1.67 0.095 -.0784045 .9803041 ptl | .4689538 .191363 2.45 0.014 .0938892 .8440184 _cons | -.2137965 .6398918 -0.33 0.738 -1.467961 1.040368 ------------------------------------------------------------------------------

. glm low0 age smoke ptl, nolog fam(bin) link(cloglog)

Generalized linear models No. of obs = 189 Optimization : ML Residual df = 185 Scale parameter = 1 Deviance = 220.0134175 (1/df) Deviance = 1.189262 Pearson = 188.1663766 (1/df) Pearson = 1.017116

Variance function: V(u) = u*(1-u) [Bernoulli] Link function : g(u) = ln(-ln(1-u)) [Complementary log-log]

AIC = 1.20642 Log likelihood = -110.0067088 BIC = -749.7098

------------------------------------------------------------------------------ | OIM low0 | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | .0373414 .0190252 1.96 0.050 .0000526 .0746302 smoke | -.3452314 .1994667 -1.73 0.083 -.736179 .0457162 ptl | -.5769123 .2454426 -2.35 0.019 -1.057971 -.0958536 _cons | -.4593313 .453224 -1.01 0.311 -1.347634 .4289715 ------------------------------------------------------------------------------

. glm low age smoke ptl, nolog fam(bin) link(loglog)

Generalized linear models No. of obs = 189 Optimization : ML Residual df = 185 Scale parameter = 1 Deviance = 220.0134175 (1/df) Deviance = 1.189262 Pearson = 188.1663766 (1/df) Pearson = 1.017116

Variance function: V(u) = u*(1-u) [Bernoulli] Link function : g(u) = -ln(-ln(u)) [Log-log]

AIC = 1.20642 Log likelihood = -110.0067088 BIC = -749.7098

------------------------------------------------------------------------------ | OIM low | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | -.0373414 .0190252 -1.96 0.050 -.0746302 -.0000526 smoke | .3452314 .1994667 1.73 0.083 -.0457162 .736179 ptl | .5769123 .2454426 2.35 0.019 .0958536 1.057971 _cons | .4593313 .453224 1.01 0.311 -.4289715 1.347634 ------------------------------------------------------------------------------

glm low0 age smoke ptl, nolog fam(bin) link(loglog)

Generalized linear models No. of obs = 189 Optimization : ML Residual df = 185 Scale parameter = 1 Deviance = 222.6159083 (1/df) Deviance = 1.203329 Pearson = 185.6292037 (1/df) Pearson = 1.003401

Variance function: V(u) = u*(1-u) [Bernoulli] Link function : g(u) = -ln(-ln(u)) [Log-log]

AIC = 1.22019 Log likelihood = -111.3079541 BIC = -747.1073

------------------------------------------------------------------------------ | OIM low0 | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | .047111 .0274916 1.71 0.087 -.0067715 .1009935 smoke | -.4509498 .2700837 -1.67 0.095 -.9803041 .0784045 ptl | -.4689538 .191363 -2.45 0.014 -.8440184 -.0938892 _cons | .2137965 .6398918 0.33 0.738 -1.040368 1.467961 ------------------------------------------------------------------------------

. gologit2b low age smoke ptl, nolog link(cloglog)

Generalized Ordered Cloglog Estimates Number of obs = 189 LR chi2(3) = 14.66 Prob > chi2 = 0.0021 Log likelihood = -110.00671 Pseudo R2 = 0.0625

------------------------------------------------------------------------------ low | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | -.0373414 .0190252 -1.96 0.050 -.0746302 -.0000526 smoke | .3452314 .1994667 1.73 0.083 -.0457162 .736179 ptl | .5769123 .2454426 2.35 0.019 .0958536 1.057971 _cons | .4593313 .453224 1.01 0.311 -.4289715 1.347634 ------------------------------------------------------------------------------

. gologit2b low age smoke ptl, nolog link(nloglog)

Generalized Ordered Nloglog Estimates Number of obs = 189 LR chi2(3) = 12.06 Prob > chi2 = 0.0072 Log likelihood = -111.30795 Pseudo R2 = 0.0514

------------------------------------------------------------------------------ low | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | -.047111 .0274916 -1.71 0.087 -.1009935 .0067716 smoke | .4509498 .2700837 1.67 0.095 -.0784045 .9803041 ptl | .4689538 .191363 2.45 0.014 .0938892 .8440184 _cons | -.2137968 .6398918 -0.33 0.738 -1.467962 1.040368 ------------------------------------------------------------------------------

. . gologit2b low0 age smoke ptl, nolog link(cloglog)

Generalized Ordered Cloglog Estimates Number of obs = 189 LR chi2(3) = 12.06 Prob > chi2 = 0.0072 Log likelihood = -111.30795 Pseudo R2 = 0.0514

------------------------------------------------------------------------------ low0 | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | .047111 .0274916 1.71 0.087 -.0067716 .1009935 smoke | -.4509498 .2700837 -1.67 0.095 -.9803041 .0784045 ptl | -.4689538 .191363 -2.45 0.014 -.8440183 -.0938892 _cons | .2137967 .6398917 0.33 0.738 -1.040368 1.467961 ------------------------------------------------------------------------------

. gologit2b low0 age smoke ptl, nolog link(nloglog)

Generalized Ordered Nloglog Estimates Number of obs = 189 LR chi2(3) = 14.66 Prob > chi2 = 0.0021 Log likelihood = -110.00671 Pseudo R2 = 0.0625

------------------------------------------------------------------------------ low0 | Coef. Std. Err. z P>|z| [95% Conf. Interval] -------------+---------------------------------------------------------------- age | .0373414 .0190252 1.96 0.050 .0000526 .0746302 smoke | -.3452314 .1994667 -1.73 0.083 -.736179 .0457162 ptl | -.5769123 .2454426 -2.35 0.019 -1.057971 -.0958536 _cons | -.4593313 .453224 -1.01 0.311 -1.347634 .4289715 ------------------------------------------------------------------------------

.

One last thing - here are examples of how to clone what spss does in PLUM, including its test of parallel lines. i.e. this gives you ordered logit, ordered probit, etc. I can send you the corresponding SPSS output if you want.

webuse nhanes2f, clear

* Logit link (default) gologit2c health female black age, pl lrf link(l) store(logit_pl) quietly gologit2c health female black age, npl lrf link(l) store(logit_npl) * Clone SPSS's test of parallel lines lrtest logit_pl logit_npl

* Probit link gologit2c health female black age, pl lrf link(p) store(probit_pl) quietly gologit2c health female black age, npl lrf link(p) store(probit_npl) * Clone SPSS's test of parallel lines lrtest probit_pl probit_npl

* SPSS's cloglog, which Stata calls loglog gologit2c health female black age, pl lrf link(c) store(cloglog_pl) quietly gologit2c health female black age, npl lrf link(c) store(cloglog_npl) lrtest cloglog_pl cloglog_npl

* SPSS's nloglog, which Stata calls cloglog gologit2c health female black age, pl lrf link(n) store(nloglog_pl) quietly gologit2c health female black age, npl lrf link(n) store(nloglog_npl) lrtest nloglog_pl nloglog_npl

------------------------------------------- Richard Williams, Notre Dame Dept of Sociology OFFICE: (574)631-6668, (574)631-6463 FAX: (574)288-4373 HOME: (574)289-5227 EMAIL: Richard.A.Williams.5@ND.Edu WWW (personal): http://www.nd.edu/~rwilliam WWW (department): http://www.nd.edu/~soc

* * For searches and help try: * http://www.stata.com/support/faqs/res/findit.html * http://www.stata.com/support/statalist/faq * http://www.ats.ucla.edu/stat/stata/


Tag:


Links to this post:

Create a Link



<< Home

This page is powered by Blogger. Isn't yours?