[R] Join data by minimum distance
Roy Mendelssohn
Roy.Mendelssohn at noaa.gov
Fri Sep 12 21:19:22 CEST 2008
Hi Monica:
On Sep 12, 2008, at 11:59 AM, Monica Pisica wrote:
>
> I am wondering if there is a function which will do a join between 2
> data.frames by minimum distance, as it is done in ArcGIS for
> example. For people who are not familiar with ArcGIS here it is an
> explanation:
>
> Suppose you have a data.frame with x, y, coordinates called track,
> and a second data frame with different x, y coordinates and some
> other attributes called classif. The track data.frame has a
> different number of rows than classif. I want to join the rows from
> classif to track in such a way that for each row in track I add only
> the row from classif that has coordinates closest to the coordinates
> in the track row (and hence minimum distance in between the 2 rows),
> and also add a new column which will record this minimum distance.
> Even if the coordinates in the 2 data.frames have same name, the
> values are not identical between the data.frames, so a merge by
> column is not what I am after.
>
> I did an R Site Search but nothing related to this particular type
> of join emerged.
>
Have you looked at the package "field". It has distance functions.
You would then have to do a little programming to find the minimum
distance and add the columns.
HTH,
-Roy M.
**********************
"The contents of this message do not reflect any position of the U.S.
Government or NOAA."
**********************
Roy Mendelssohn
Supervisory Operations Research Analyst
NOAA/NMFS
Environmental Research Division
Southwest Fisheries Science Center
1352 Lighthouse Avenue
Pacific Grove, CA 93950-2097
e-mail: Roy.Mendelssohn at noaa.gov (Note new e-mail address)
voice: (831)-648-9029
fax: (831)-648-8440
www: http://www.pfeg.noaa.gov/
"Old age and treachery will overcome youth and skill."
"From those who have been given much, much will be expected"
More information about the R-help
mailing list