[R] help with writing function

From: Oarabile Molaodi <oarabile_at_stams.strath.ac.uk>
Date: Tue 13 Dec 2005 - 22:59:51 EST


I'm trying to write a function that takes a vector of length n and then takes the first value of the vector i.e j=1 and forms a new vector of length n (i.e replicate the first value n times). This function will then calculate the absoulte difference of the original vector and the new vector and store the results omitting the difference between the value and itself. This function should be able to repeat the procedure for each of the j's i.e j=2 to n. The results should all be stored together. Below is what I've tried so far but it seems to work only for j=1 .

Your help will be highly appreciated.
IED<-function(risk){
 n<-length(risk)
 i<-c(1:n)
Diff<-numeric()
for(j in 1:n){
relrisk<-risk

relrisk[i]<-relrisk[j]
Difference<-abs(risk-relrisk)
Difference<-Difference[-c(1:j)]
Difference<-append(Diff,Difference)

return(Difference)
}
}

Oarabile



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Wed Dec 14 00:06:05 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:41:35 EST