[R] Troubles plotting lrm output in Design Library

Patrizio Frederic frederic.patrizio at gmail.com
Thu May 29 16:19:42 CEST 2008


dear Harrell,
thank you for quick reply and suggestions. I still have the problem:

library(Design)
x   = rnorm(100)
y   = runif(100)<(exp(x)/(1+exp(x)))
y   = 0*y+1*y
d   = datadist(x,y)
options(datadist="d")
fit = lrm(y~x)
# works fine, but
plot(fit) #produce the error message

Error in value.chk(at, ix, xseq, if (plot.type == "curves") 100 else 40,  :
  variable x does not have limits defined by datadist

The installed Design (ver. 2.1.1) package was downloaded and installed
via utils:::menuInstallPkgs() function
(Package Hmisc version 3.4-3) on a windows xp machine.
Thank in advance.

Patrizio Frederic

version

platform       i386-pc-mingw32
arch           i386
os             mingw32
system         i386, mingw32
status
major          2
minor          7.0
year           2008
month          04
day            22
svn rev        45424
language       R
version.string R version 2.7.0 (2008-04-22)

2008/5/29 Frank E Harrell Jr <f.harrell at vanderbilt.edu>:
> Patrizio Frederic wrote:
>>
>> Dear R-helpers,
>> I'm having a problem in using plot.design in Design Library. Tho
>> following example code produce the error:
>>
>>> n <- 1000    # define sample size
>>> set.seed(17) # so can reproduce the results
>>> age            <- rnorm(n, 50, 10)
>>> blood.pressure <- rnorm(n, 120, 15)
>>> cholesterol    <- rnorm(n, 200, 25)
>>> sex            <- factor(sample(c('female','male'), n,TRUE))
>>> label(age)            <- 'Age'      # label is in Hmisc
>>> label(cholesterol)    <- 'Total Cholesterol'
>>> label(blood.pressure) <- 'Systolic Blood Pressure'
>>> label(sex)            <- 'Sex'
>>> units(cholesterol)    <- 'mg/dl'   # uses units.default in Hmisc
>>> units(blood.pressure) <- 'mmHg'
>>>
>>> # Specify population model for log odds that Y=1
>>> L <- .4*(sex=='male') + .045*(age-50) +
>>
>> +   (log(cholesterol - 10)-5.2)*(-2*(sex=='female') + 2*(sex=='male'))
>>>
>>> # Simulate binary y to have Prob(y=1) = 1/[1+exp(-L)]
>>> y <- ifelse(runif(n) < plogis(L), 1, 0)
>>>
>>> ddist <- datadist(age, blood.pressure, cholesterol, sex)
>>> options(datadist='ddist')
>>>
>>> fit <- lrm(y ~ blood.pressure + sex * (age + rcs(cholesterol,4)),
>>
>> +                x=TRUE, y=TRUE)
>>>
>>> par(mfrow=c(2,2))
>>> plot(fit)                # Plot effects of all 4 predictors
>>
>> Error in value.chk(at, ix, xseq, if (plot.type == "curves") 100 else 40,
>>  :
>>  variable blood.pressure does not have limits defined by datadist
>>
>> I guess somthing goes wrong with function datadist
>>
>>> version
>>
>>              _
>> platform       i386-pc-mingw32
>> arch           i386
>> os             mingw32
>> system         i386, mingw32
>> status
>> major          2
>> minor          7.0
>> year           2008
>> month          04
>> day            22
>> svn rev        45424
>> language       R
>> version.string R version 2.7.0 (2008-04-22)
>>
>> thank you in advance,
>>
>> Patrizio Frederic
>
> This is the example run by example(plot.Design) which works for me, using
> the version of Design from CRAN.  You don't need to include code that is
> already in an example in a help file, and if you do please make the code
> copy and paste-able instead of putting something at the start of each line.
>
> Frank
>
>
> Frank
>
>>
>> -------------------------------------------------
>> | Patrizio Frederic
>> | Research associate in Statistics,
>> | Department of Economics,
>> | University of Modena and Reggio Emilia,
>> | Via Berengario 51,
>> | 41100 Modena, Italy
>> |
>> | tel:  +39 059 205 6727
>> | fax:  +39 059 205 6947
>> | mail: patrizio.frederic at unimore.it
>> +-------------------------------------------------
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
>
> --
> Frank E Harrell Jr   Professor and Chair           School of Medicine
>                     Department of Biostatistics   Vanderbilt University
>



More information about the R-help mailing list