Peter Dunn
2005-Aug-12 04:14 UTC
[R] Help converting a function from S-Plus to R: family$weight
Hi all I am converting an S-Plus function into R. The S-Plus code uses some of the glm families, and family objects. The family objects in S-Plus and R have many different features, for example: In R: > names(Gamma()) [1] "family" "link" "linkfun" "linkinv" "variance" [6] "dev.resids" "aic" "mu.eta" "initialize" "validmu" [11] "valideta" In S-Plus: > names(Gamma()) [1] "family" "names" "link" "inverse" "deriv" [6] "initialize" "variance" "deviance" "weight" > My question concerns the variable weight in the S-Plus function. I'm not sure what it is. (I have searched the S-Plus mailing list archive, and my "S-Plus for linux 6.1" documentation.) For almost all family objects, the weight variable is the same as variance, just weighted (and the former as a function; the later as an expression): > Gamma()$variance function(mu) mu^2 > Gamma()$weight expression(w * mu^2.) > The same applies for most families. So I thought I could determine what this weight variable was. But alas--not the inverse,gaussian: > inverse.gaussian()$variance function(mu) mu^3 > inverse.gaussian()$weight expression(w/((sqrt(family$variance(mu)) * family$deriv(mu))^2.)) So: - can anyone tell me what this expression weight represents? - why is the inverse.gaussian family different than all others? Thanks in advance. P. My S-Plus version: > version Version 6.2.1 for Linux 2.4.18 : 2003 My R version: > version _ platform i386-pc-linux-gnu arch i386 os linux-gnu system i386, linux-gnu status major 2 minor 1.0 year 2005 month 04 day 18 language R > -- Dr Peter Dunn | Senior Lecturer in Statistics Faculty of Sciences, University of Southern Queensland Web: http://www.sci.usq.edu.au/staff/dunn Email: dunn <at> usq.edu.au CRICOS: QLD 00244B | NSW 02225M | VIC 02387D | WA 02521C
Prof Brian Ripley
2005-Aug-13 09:07 UTC
[R] Help converting a function from S-Plus to R: family$weight
I think a question about the S family() functions is best determined by reading the S(-PLUS) documentation. The weights component computes the working weights for the IWLS, unsurprisingly (and as stated by ?family.object). R has mu.eta to do that, the crucial line in R's glm.fit being w <- sqrt((weights[good] * mu.eta.val[good]^2)/variance(mu)[good]) But you don't need to port S-only features to R. You do need to worry about R-only features. On Fri, 12 Aug 2005, Peter Dunn wrote:> Hi all > > I am converting an S-Plus function into R. The S-Plus code > uses some of the glm families, and family objects. > > The family objects in S-Plus and R have many different > features, for example: > > In R: > > names(Gamma()) > [1] "family" "link" "linkfun" "linkinv" "variance" > [6] "dev.resids" "aic" "mu.eta" "initialize" "validmu" > [11] "valideta" > > In S-Plus: > > names(Gamma()) > [1] "family" "names" "link" "inverse" "deriv" > [6] "initialize" "variance" "deviance" "weight" > > > > > My question concerns the variable weight in the S-Plus function. > I'm not sure what it is. (I have searched the S-Plus mailing list > archive, and my "S-Plus for linux 6.1" documentation.) For almost all > family objects, the weight variable is the same as variance, > just weighted (and the former as a function; the later as an > expression): > > > Gamma()$variance > function(mu) > mu^2 > > Gamma()$weight > expression(w * mu^2.) > > > > The same applies for most families. So I thought I could determine > what this weight variable was. > > But alas--not the inverse,gaussian: > > > inverse.gaussian()$variance > function(mu) > mu^3 > > inverse.gaussian()$weight > expression(w/((sqrt(family$variance(mu)) * family$deriv(mu))^2.)) > > > So: > - can anyone tell me what this expression weight represents? > - why is the inverse.gaussian family different than all others? > > Thanks in advance. > > P. > > My S-Plus version: > > > version > Version 6.2.1 for Linux 2.4.18 : 2003 > > My R version: > > > version > _ > platform i386-pc-linux-gnu > arch i386 > os linux-gnu > system i386, linux-gnu > status > major 2 > minor 1.0 > year 2005 > month 04 > day 18 > language R > > > > > -- > Dr Peter Dunn | Senior Lecturer in Statistics > Faculty of Sciences, University of Southern Queensland > Web: http://www.sci.usq.edu.au/staff/dunn > Email: dunn <at> usq.edu.au > CRICOS: QLD 00244B | NSW 02225M | VIC 02387D | WA 02521C > > ______________________________________________ > R-help at stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html >-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
Possibly Parallel Threads
- R/S-Plus equivalent to Genstat "predict": predictions over "averages" of covariates
- Sweave: pass scale parameter to includegraphics?
- NaN when using dffits, stemming from lm.influence call
- The best way to end up with WMF files
- Creating libraries: Cannot make help