
Hello R-list, 

How can I row wise solve a function for which the input variables are written in a matrix or a vector and have the calculated output added to the matrix or written in a vector? 

To specify my case in particular I continue: I would like R to calculate for me a value for ‘t’ which is function of input parameters A and B, which are comprised in a matrix called ‘ddt’ and some other constants. q,p,u,v in this example.

The equation (q*(1-exp(u*B*t))+( p*(1-exp(v*B*t)-A)

A and B may sometimes be ‘missing values’ (NA (not a number)) because there isn’t always a result for each time step.


The matrix ddt looks like this
	Datetime	B	A	t
[772,]  12/12/2005 15:27:12  NA         NA            NA          
[773,]  12/12/2005 16:27:12  5000000    1.24480000    NA          
[774,]  12/12/2005 17:27:12  NA         NA            NA          
[775,]  13/12/2005 13:27:12  7012500    2.64038000    NA          
[776,]  13/12/2005 14:27:12  NA         NA            NA          
[777,]  13/12/2005 15:31:28  NA         NA            NA   

I’ve tried to calculate t as followed
Af<-function(i,t){ (q*(1-exp(u*ddt[i,2]*t))+( p*(1-exp(v*ddt[i,2]*t)- ddt[i,3])

Because input B is listed in the second column and input A is listed in the third column of the matrix ddt. The fourth column in ddt is meant for the row wise output values of ‘t’. 

To calculate ‘t’ I've tried
output<-function(i){uniroot(Af,c(0,9999),i=i)}

Uniroot has been used on single input values for A and B and gives good results and I would like to automate this. Therefore I tried to use mapply 
t<-mapply(output,i=i)

This seems not work and therefore I’m asking the list: “how can I calculate in R the row wise value for ‘t’?”

Do you have a quick solution for it?


Kind regards, 
Gunter Eerdekens


--
---------------------------------------------------------------------
Gunter.Eerdekens@ua.ac.be
----------------------------------------------------------------------



	[[alternative HTML version deleted]]

