On Jul 21, 2009, at 11:28 AM, Dieter Menne wrote:
MarcioRibeiro wrote:
I have a problem in identifying a value between two vectors...
Suppose vector A is...
0.0000 0.0909 0.0909 0.1818 0.2727 0.3636 0.4545 0.6363 0.0000 0.0000
0.0000 0.0000
And vector B is...
3 5 7 18 43 85 91 98 100 130 230 487
I would like to identify the value of vector B that vector A is
bigger
than 0.5, this means that I want to identify the 9-th value of
vector B,
that is 98.
I know how to do that if I had the both vectors as a matrix, but I
want to
do this procedure with two vectors...
Not much of a difference...
a=c(0.0000,0.0909,0.0909,0.1818,0.2727,0.3636,0.545,0.6363,
0.0000,0.0000,0.0000,0.0000)
b= c(3,5,7,18,43,85,91,98,100,130,230,487)
b[min(which(a>0.5))] #but fails ungraciously if there is no solution
Or, more simply:
R> a <- c(0.0000, 0.0909, 0.0909, 0.1818, 0.2727, 0.3636, 0.4545,
0.6363, 0.0000, 0.0000, 0.0000, 0.000)
R> b <- c(3, 5, 7, 18, 43, 85, 91, 98, 100, 130, 230, 487)
R> b[a > .5]
[1] 98
Won't fail ungraciously if there is no solution:
R> b[a > .8]
numeric(0)
Is that what you're after?
-steve
--
Steve Lianoglou
Graduate Student: Physiology, Biophysics and Systems Biology
Weill Medical College of Cornell University
Contact Info: http://cbio.mskcc.org/~lianos/contact
______________________________________________
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.