[R] search algorithm

Ita.Cirovic-Donev@hypo-alpe-adria.com Ita.Cirovic-Donev at hypo-alpe-adria.com
Mon Feb 13 16:47:11 CET 2006





thanks a lot for the help. I tried some stuff and now it works.

____________________
Ita Cirovic-Donev
Risk Controlling

HYPO ALPE-ADRIA-BANK D.D.
Amruseva 6, HR-10000 Zagreb
Phone:      +385 1 4899 269
Fax:  +385 1 6063 344
E-Mail:     ita.cirovic-donev at hypo-alpe-adria.com
Web:  www.hypo-alpe-adria.hr



                                                                           
             Don MacQueen                                                  
             <macq at llnl.gov>                                               
                                                                        To 
             13.02.2006 16:38             Ita.Cirovic-Donev at hypo-alpe-adri 
                                          a.com, r-help at stat.math.ethz.ch  
                                                                        cc 
                                                                           
                                                                   Subject 
                                          Re: [R] search algorithm         
                                                                           
                                                                           
                                                                Importance 
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




There is a function in the Hmisc package that will help.

Example:

>  require(Hmisc)
>  x <- sort(runif(10))
>  x
  [1] 0.1225542 0.1620869 0.2197772 0.3187375 0.5498879 0.5644445
0.5812717 0.7380532 0.8187384 0.9063713
>  whichClosest(x,.41)
[1] 4
>  x[4]
[1] 0.3187375

Or for your matrix (yourmat), this should work (but I haven't tested it)

    yourmat[ whichClosest(yourmat[,'X'] , -0.6523) , 'Y']

-Don

At 1:30 PM +0100 2/13/06, Ita.Cirovic-Donev at hypo-alpe-adria.com wrote:
>Hi!
>
>I have a problem of finding a specific value in a column. For example, I
>have a matrix with say 2 columns
>
>            X                       Y
>1    -2.0341602   9.036689e-05
>2    -1.4287230   1.807338e-04
>3    -1.1194402   2.711007e-04
>4    -1.0327582   3.614676e-04
>5    -0.8130556   4.518344e-04
>6    -0.7138212   5.422013e-04
>7    -0.6634425   6.325682e-04
>8    -0.6512083   7.229351e-04
>9    -0.6176286   8.133020e-04
>10  -0.5897241    9.036689e-04
>
>Now if I have some value of x=-0.6523. I need to find a value in the X
>column  that is the closest to my value of x then read off the row number
>and then take the corresponding value in column Y. What I am not sure is
>how to do the first search where I would search by decimal places and take
>the smallest absolute distance between the numbers. For example if he
finds
>the first value which is correct in this case - and then 0 and then 6 and
>then 5 but now there is no 2 for that specific decimal place so he would
>calculate the distance between the one before and the one after and see
>which one is smaller. For that which is smaller would be the final X
value.
>Can someone please give me a hint on how to proceed. Thanks.
>
>______________________________________________
>R-help at 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


--
--------------------------------------
Don MacQueen
Environmental Protection Department
Lawrence Livermore National Laboratory
Livermore, CA, USA




More information about the R-help mailing list