[R] Need Help To Solve An Equation In R
David Winsemius
dwinsemius at comcast.net
Sat May 27 21:31:58 CEST 2017
> On May 27, 2017, at 9:16 AM, Neetu Shah <nshah.0452 at gmail.com> wrote:
>
> Dear Sir/Ma'am,
>
> I am trying to make a function to solve an equation that is given below:
> findH <- function(p_star, k){
> fun <- function(y){
> (pnorm(y+h))^(k-1)*dnorm(y)
> }
> lhs <- integrate(fun, -Inf, Inf)$value
> return(uniroot(lhs, lower = -10, upper = 10,
> tol = p_star)$root)
> }
> In lhs, I integrated a function with respect to y and there would be an
> unknown h that I need to find.
uniroot needs a function as its first argument. `integrate(fun, -Inf, Inf)$value` does not return a function. it will return a numeric value (if it succeeds).
I have no idea whether this makes any mathematical sense because you have not described the background for this effort and have not shown how you expect to call `findH`. Is `h` supposed to be some sort of non-centrality parameter with `k` representing degrees of freedom?
I tried this code that does run, although it fails gracefully at runtime:
findH <- function(p_star= 0.004, k=2){
fun <- function(y,h){
(pnorm(y+h))^(k-1)*dnorm(y)
}
lhs <- function(x) { integrate(fun, lower=-Inf, upper=Inf, h=x)$value }
return(uniroot(lhs, lower = -10, upper = 10, tol = p_star)$root)
}
#-------
> findH(k=6)
Error in uniroot(lhs, lower = -10, upper = 10, tol = p_star) :
f() values at end points not of opposite sign
> I need to equate this lhs to p_star value in order to find h.
> Which
> function should I use to solve this equation?
> Please guide me regarding this.
> Thank you.
>
> --
> With Regards,
> Neetu Shah,
> B.Tech.(CS),
> 3rd Year,
> IIIT Vadodara.
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.
David Winsemius
Alameda, CA, USA
More information about the R-help
mailing list