[R] help
(Ted Harding)
Ted.Harding at manchester.ac.uk
Tue Jul 28 16:39:30 CEST 2009
On 28-Jul-09 08:28:22, Inchallah Yarab wrote:
> How I can vary the parameters for a function?
>
> I have a function with 5 parameters I want to turn the function for a
> range of numbers for one of these parameters!! i want to have in the
> end the value of the function in the different cas of one of the
> paramter (the others paramters are fixes!!) thank you for your help
It depends on the internals of the function. In R, most functions
(including what you write yourself, if written in the right way)
allow you to give a vector of numbers to a numerical parameter.
The calculations are then "vectorised" in a single pass, and the
results for each value are returned as a vector.
For example, the pnorm() function for several different standard
deviations:
SD = c(1,1.5,2,2.5,3)
cbind(SD,pnorm(q=0.5, mean=0, sd=SD))
# [1,] 1.0 0.6914625
# [2,] 1.5 0.6305587
# [3,] 2.0 0.5987063
# [4,] 2.5 0.5792597
# [5,] 3.0 0.5661838
Likewise, if your function is
my.fun <- function(par1,par2,par3,par4,par5){
(par1 + par2*par3 + (par3^2)*(par4 + par5))
}
then you could have
par1 <- 1.1 ; par2 <- 1.2 ; par4 <- 1.4; par5 <- 1.5
par3 <- SD # (as above)
cbind(SD,my.fun(par1,par2,par3,par4,par5))
# SD
# [1,] 1.0 5.200
# [2,] 1.5 9.425
# [3,] 2.0 15.100
# [4,] 2.5 22.225
# [5,] 3.0 30.800
Hoping this helps!
Ted.
--------------------------------------------------------------------
E-Mail: (Ted Harding) <Ted.Harding at manchester.ac.uk>
Fax-to-email: +44 (0)870 094 0861
Date: 28-Jul-09 Time: 15:39:27
------------------------------ XFMail ------------------------------
More information about the R-help
mailing list