Re: [R] fastest way to compute the squared Euclidean distance between two vectors in R

2008-02-01 Thread François Pinard
Jason Liao [EMAIL PROTECTED] writes:

 I have a program which needs to compute squared Euclidean distance
 between two vectors million of times, which the Rprof shows is the
 bottleneck. I wondered if there is any faster way than my own simple
 function

 distance2 = function(x1, x2)
 {
temp = x1-x2
sum(temp*temp)
 }

You might try:

  distance2 - function(x1, x2) crossprod(x1-x2)

And if you do not have to pass the distance2 function itself to some
other function, you might also spare the indirection trhough the
distance2 function and call crossprod directly (replacing the comma by
a minus sign :-).

-- 
François Pinard   http://pinard.progiciels-bpi.ca

__
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] fastest way to compute the squared Euclidean distance between two vectors in R

2008-01-31 Thread Jason Liao
I have a program which needs to compute squared Euclidean distance
between two vectors million of times, which the Rprof shows is the
bottleneck. I wondered if there is any faster way than my own simple
function

distance2 = function(x1, x2)
{
   temp = x1-x2
   sum(temp*temp)
}

I have searched the R-help archives and can not find anything except
when the arguments are matrices. Thanks for any lead.

Jason

Jason Liao, http://www.geocities.com/jg_liao
Associate Professor of Biostatistics
Drexel University School of Public Health
1505 Race Street, Mail Stop 1033
Bellet Building, 6th Floor
Philadelphia, PA   19102
phone 215-762-3934


  

Looking for last minute shopping deals?

__
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.