Jannis -
One approach is as follows:
one = c(1,2,6)
two = c(0,0.5,1,2,3,8)
findit = function(x,vec){
+ y = vec - x
+ y[y<=0] = NA
+ if(all(is.na(y)))NA else which.min(y)
+ }
> sapply(two,findit,one)
[1] 1 1 1 2 3 NA
- Phil Spector
Statistical Computing Facility
Department of Statistics
UC Berkeley
spec...@stat.berkeley.edu
On Thu, 16 Dec 2010, Jannis wrote:
Dear list,
I hope I can define my problem in an understandable manner. I seek some
funktion that finds me the index of the value in a vector 1 that is the least
bigger then the value in another vector 2. And this for all values in vector
2.
For example:
vector 1 : c(1,2,6)
vector 2 : c(0,0.5,1,2,3,8)
the result should be as long as vector 2 and give the indices of the
corresponding elements in vector 1:
result: c(1,1,2,3,3,NA)
Any suggestions how to do this without doing complicated loops through vector
2?
Cheers
Jannis
______________________________________________
R-help@r-project.org 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.
______________________________________________
R-help@r-project.org 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.