"kakul modani" <[EMAIL PROTECTED]> wrote in
news:[EMAIL PROTECTED]:
> I am having the following error in my function
>
> function(theta,reqdIRR)
> {
> theta1<-theta[1]
> theta2<-theta[2]
> n<-length(reqdIRR)
> constant<- n*(theta1+theta2)
> sum1<-lapply(reqdIRR*exp(theta1),FUN = sum)
> sum2<-lapply(exp(theta2 - reqdIRR*exp(theta1)),FUN = sum)
> sum = sum1 + sum2
> log.fcn = constant - as.numeric(sum)
> result = - log.fcn
> return(result)
> }
>
> *error : neg.log.gumbel(1,reqdIRR)
> Error in sum1 + sum2 : non-numeric argument to binary operator
>>
>
> how can i rectify the error?Its really urgent...
sum1 and sum2 are lists and "+" is expecting a vector. Two choices
--- substituting:
sum = unlist(sum1)+ unlist(sum2)
--or--
change the lapply(...) to sapply(...)
which will return a numeric vector.
--
David Winsemius
______________________________________________
[email protected] 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.