1 / 11

RECONSTRUCTING

RECONSTRUCTING. By Gilbert MacKenzie The Centre for Medical Statistics. Introduction. A growing concern in the academic statistical community is that the package is dated, in terms of three key areas: Technical Content Inconsistencies Programme Structure

walda
Download Presentation

RECONSTRUCTING

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RECONSTRUCTING By Gilbert MacKenzie The Centre for Medical Statistics

  2. Introduction • A growing concern in the academic statistical community is that the package is dated, in terms of three key areas: • Technical Content • Inconsistencies • Programme Structure • These are of course inter-related.

  3. Technical Content • Weak mainly in relation Complex Modelling: • Linear Mixed Models • Generalised Linear Models ! • Generalised Linear Mixed Models • NB: Websiterefers toCNLR

  4. CNLR Fitting the Generalised Time Dependent Logistic Survival Model (MacKenzie, 1996, JRSS D, 45, 1, 21-34; SIM, 1997, 16, 1831-1843.) GTDL: TDL: RR:

  5. CNLR - Typical Programme model program b0 = 0.05 alpha = 0.01. compute const = 1. compute fi = 0. compute lambda = exp(fi). compute term0 = b0*const. compute term1 = term0 + alpha*surtim. compute pi = exp(term1)/(1+exp(term1)). compute qi = 1-pi. compute wi = (1+exp(term0)). compute pred = ( ( 1+exp(term1)) / ( 1+exp(term0)) )**(-lambda/alpha) . compute loss = -1*(di*fi+di*ln(pi)+(lambda/alpha)*(ln(qi)+ln(wi)) ). cnlr di /pred = pred /loss=loss/save=pred/bootstrap. First time CNLR is used for survival analysis - this is the method but, watch out the bootstrap does not respect the censoring distribution

  6. Programme Structure • There are constraints on the storage and control structures. • Single Data Object • Few Statistical Objects • Programme States restrict command order • Black Boxes Model Program, Macro, Matrix, etc

  7. Single Data Object • Constrains… • Storage for Statistical Objects – vectors matrices, lists • Thinking about appropriate programme structures • Thinking about output ! • One partial solution – is a statistical object file

  8. Programme States & Black Boxes • Phases: Initial Input  Transformation  Procedure • Command Order? • loop #j =1 to n • frequencies vec(a(#j)) to vec (b(#j)) • end loop • But cannot currently mix procedures & loops !! • Black Boxes? • Macro - No Support for Vectors & Matrices • Matrix - No Procedures - write your own?

  9. Matrix • For • Clear Control Structures • Supports Vector & Matrix Structures • Good Matrix Language • Against • No SPSS Procedures ! • No Scientific Library ! • Poor Error Reporting & Output !

  10. Matrix Development Input Data File call eigen (A, B, C) call crosstabs ( data=mydata, vars= a by b by c,…, table = mytable) call glm (data =mytable, link = log, dist= poisson, model = a+b+c, fit = myfit) call extract (data=myfit, vec=$residuals) call histogram (vec, …) Output Statistical Object

  11. Conclusions • Obvious need to • Improve the Technical Content of SPSS • Create a Consistent Programming Environment • Support Object Orientated Language • Encourage a Technical Development Group

More Related