Thank you Andrew for the nice suggestion. I found out the mistake I made in the 
code. Here is the complete function with the problem of optimization.

trun.mean<- function(x)     
{

mu=x[1];
sigma=x[2];
thre=x[3];

f <- function(x) (1/(sigma*sqrt(2*pi)))*exp(-(x-mu)^2/(2*sigma^2));

pdf.fun <- function(x) x*f(x);

sd.fun <- function(x) x^2*f(x);  

a=integrate(pdf.fun,thre,upper=Inf)$value;

a1=integrate(f,thre,upper=Inf)$value;

st=integrate(sd.fun,thre,upper=Inf)$value;

mut <- a/a1;

sdt <- sqrt(st/a1-(a/a1)^2)

(mut-mu)^2+(sdt-sd)^2

}

I need to minimize trun.mean ( ), so I tried

> trun.mean(c(100,20,13))

[1] 399200454


> optim(c(200,100,112),trun.mean);

Error in integrate(f, thre, upper = Inf) : 
        roundoff error is detected in the extrapolation table


Thanks!

Jenny

-----Original Message-----
From:Andrew Robinson ,   [EMAIL PROTECTED]
Sent: 2006-11-09,  15:14:58
To: Jenny Stadt
CC:[email protected]
Subject: Re: [R] optimize function with integral form ?
Hi Jenny,

whenever a function that calls a function complains about the function
it is calling, it helps to try to run that function yourself.  So, I
declared your function trun.mean as below and tried to call it:

> trun.mean(c(200,100,113))
Error in integrate(f, thre, upper = Inf) : 
        object "thre" not found

This might help you identify the current, and possibly future, errors.

Cheers

Andrew


On Thu, Nov 09, 2006 at 02:32:18PM -0700, Jenny Stadt wrote:
> Hi all,
> 
> Does anybody have the experience of using optim to estimate variables with 
> integral forms?
> 
> here the code:
> 
> 
> trun.mean <- function(x)      # t is the threshold
> {
> 
> mu=x[1];
> 
> sigma=x[2];
> 
> t=x[3];
> 
> f  <- function(x) (1/(sigma*sqrt(2*pi)))*exp(-(x-mu)^2/(2*sigma^2));
> 
> pdf.fun  <- function(x) x*f(x);
> 
> integrate(f,thre,upper=Inf)$value/integrate(pdf.fun,thre,upper=Inf)$value ;  
> }
> 
> when I run :  
> 
>  > optim(c(200,100,113),trun.mean)
> 
> Error in optim(c(2, 3, 3), trun.mean) : function cannot be evaluated at 
> initial parameters
> 
> 
> 
> I need your help, thanks!
> 
> Jen.
> 
>  [[alternative HTML version deleted]]
> 
> ______________________________________________
> [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.

-- 
Andrew Robinson  
Department of Mathematics and Statistics            Tel: +61-3-8344-9763
University of Melbourne, VIC 3010 Australia         Fax: +61-3-8344-4599
http://www.ms.unimelb.edu.au/~andrewpr
http://blogs.mbs.edu/fishing-in-the-bay/ 

        [[alternative HTML version deleted]]

______________________________________________
[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.

Reply via email to