[R] How to correct my error message

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Tue Oct 27 20:48:22 CET 2020


On 27/10/2020 3:06 p.m., varin sacha via R-help wrote:
> Dear R-experts,
> 
> Here below my R code. The warning message is not a problem to me but there is an error message more problematic. I understand the error message but I don't know if it is possible to correct the error and if yes, how to correct it.
> 
> Many thanks.
> 
> 
> n <- 60
> b <- runif(n, 0, 5)
> a <- runif(n, 0, 5)
> z <- rnorm(n*0.95,2,3) + rnorm(n*0.05,2,9)
> y_model <- 0.1 * b - 0.5 * z - a + 10
> y_obs <- y_model +c( rnorm(n*0.95, 0, 0.1), rnorm(n*0.05, 0, 0.5) )
> df<-data.frame(b,a,z,y_obs)
> 

I suspect you intended to concatenate the two parts of z, i.e.

  z <- c(rnorm(n*0.95,2,3), rnorm(n*0.05,2,9))

You shouldn't ignore the warning.

By the way, it's not true for every n that my expression for z will 
always give something of length n.  It would be safer to do the 
calculation as

  m <- round(n*0.95)
  z <- c(rnorm(m,2,3), rnorm(n-m,2,9)

Duncan Murdoch



More information about the R-help mailing list