[R] Calculating Minimum Absolute Difference of Two Numeric Vectors

Jeff Newmiller jdnewm|| @end|ng |rom dcn@d@v|@@c@@u@
Tue Aug 18 10:35:03 CEST 2020


This looks more like a code challenge than a real problem, but anyway Rcpp seems unnecessary.

x <- (2:5)^2/3
y <- (1:6)+0.1
ad <- function( a, b ) {
  abs( a - b )
}
M <- outer( x, y, FUN=ad )
which( M==min(M), arr.ind = TRUE )

On August 18, 2020 12:00:09 AM PDT, Dario Strbenac <dstr7320 using uni.sydney.edu.au> wrote:
>Good day,
>
>What is a fast and efficient way to calculate the minimum absolute
>difference between two vectors of numbers? The two vectors have unequal
>length. I would also like to know the index of the first vector and the
>second vector which results in the minimum absolute difference. For
>example:
>
>x <- rpois(500, 100)
>y <- rpois(300, 30)
>
>Is there a much faster way than a nested for loop without resorting to
>Rcpp?
>
>--------------------------------------
>Dario Strbenac
>University of Sydney
>Camperdown NSW 2050
>Australia
>
>______________________________________________
>R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>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.

-- 
Sent from my phone. Please excuse my brevity.



More information about the R-help mailing list