[R] Calculating distances between points in a data frame?

Uwe Ligges ligges at statistik.uni-dortmund.de
Mon May 31 20:00:37 CEST 2004


Sander Oom wrote:

> Hi Gabor,
> 
> Thanks for your suggestion. However when installing the package 
> gregmisc, I get the following error:
> 
>  > local({a <- CRAN.packages()
> + install.packages(select.list(a[,1],,TRUE), .libPaths()[1], available=a)})
> trying URL `http://cran.r-project.org/bin/windows/contrib/1.9/PACKAGES'
> Content type `text/plain; charset=iso-8859-1' length 17940 bytes
> opened URL
> downloaded 17Kb
> 
> trying URL 
> `http://cran.r-project.org/bin/windows/contrib/1.9/gregmisc_1.11.0.zip'
> Error in download.file(url, destfile, method, mode = "wb") :
>         cannot open URL 
> `http://cran.r-project.org/bin/windows/contrib/1.9/gregmisc_1.11.0.zip'
> In addition: Warning message:
> cannot open: HTTP status was `404 Not Found'
>  >
> 
> I was quite surprised as well! I tried different mirrors, but to no avail.
> 
> Maybe tomorrow,
> 
> Sander.

There is a bug in the script that uploads binary packages to CRAN.

The PACKAGES file for R-1.9.x/R-2.0.x for Windows erroneously indicates 
that gregmisc_1.11.0.zip is available, but it isn't (at least the 
PACKAGES file will be fixed tomorrow).

gregmisc does not pass the checks (well, it even does not install) on 
Windows, see: CRAN/bin/windows/contrib/checkSummaryWin.html
There is a note on that page which points you to an outdated but still 
available Windows version: 
CRAN/bin/windows/contrib/1.9/last/gregmisc_0.10.2.zip

Uwe Ligges







> 
> At 18:44 2004/05/31, you wrote:
> 
>> Try using running from the gregmisc package with pad = TRUE:
>>
>>
>> require(gregmisc)
>> XY <- data.frame(num = seq(0,10), X = seq(0,30,3), Y = seq(0, 40, 4) )
>> DistXY <- function(idx) {
>>    i <- idx[2]
>>    with(XY, sqrt( (X[i]-X[i-1])^2 + (Y[i]-Y[i-1])^2 ) )
>> }
>> XY$Dist <- running( 1:nrow(XY), width=2, fun = DistXY, pad = TRUE )
>>
>>
>> Sander Oom <slist <at> oomvanlieshout.net> writes:
>>
>> :
>> : Dear list,
>> :
>> : I would like to calculate the distance between consecutive points in 
>> a data
>> : frame. Of course the first point in the data frame does not have a 
>> point of
>> : origin, and should get a value NA. I have tried two different loops, 
>> which
>> : both result in error:
>> :
>> :  > num <- seq(0,10,1)
>> :  > X <- seq(0,30,3)
>> :  > Y <- seq(0,40,4)
>> :  > XY <- data.frame(num, X, Y)
>> :  > attach(XY)
>> :  > summary(XY)
>> :        num             X              Y
>> :   Min.   : 0.0   Min.   : 0.0   Min.   : 0
>> :   1st Qu.: 2.5   1st Qu.: 7.5   1st Qu.:10
>> :   Median : 5.0   Median :15.0   Median :20
>> :   Mean   : 5.0   Mean   :15.0   Mean   :20
>> :   3rd Qu.: 7.5   3rd Qu.:22.5   3rd Qu.:30
>> :   Max.   :10.0   Max.   :30.0   Max.   :40
>> :  > plot(X,Y)
>> :  > rngNum <- range(num)
>> :  > for (i in rngNum){
>> : +     XY$DistXY[i] <- sqrt( ((X[i]-X[i-1])^2) + ((Y[i]-Y[i-1])^2) )
>> : + }
>> : Error in "$<-.data.frame"(`*tmp*`, "DistXY", value = sqrt(((X[i] - 
>> X[i -  :
>> :          replacement has 10 rows, data has 11
>> :  > for (i in rngNum){
>> : +     XY$DistXY2[i] <- ifelse(i=min(rngNum), NA, 
>> sqrt(((X[i]-X[i-1])^2) +
>> : ((Y[i]-Y[i-1])^2)) )
>> : + }
>> : Error in ifelse(i = min(rngNum), NA, sqrt(((X[i] - X[i - 1])^2) + 
>> ((Y[i] -  :
>> :          unused argument(s) (i ...)
>> :  > detach(XY)
>> :  >
>> :
>> : Any suggestions much appreciated,
>> :
>> : Sander Oom.
>> :
>> : --------------------------------------------------------------
>> : Dr. Sander P. Oom
>> : Animal, Plant and Environmental Sciences
>> : University of the Witwatersrand
>> : Private Bag 3
>> : Wits 2050
>> : South Africa
>> :
>> : Tel (work)      +27 (0)11 717 64 04
>> : Tel (home)      +27 (0)18 297 44 51
>> : Fax             +27 (0)18 299 24 64
>> :
>> : Email   sander <at> oomvanlieshout.net
>> : Web     www.oomvanlieshout.net/sander
>> :
>> : ______________________________________________
>> : R-help <at> stat.math.ethz.ch mailing list
>> : https://www.stat.math.ethz.ch/mailman/listinfo/r-help
>> : PLEASE do read the posting guide! 
>> http://www.R-project.org/posting-guide.html
>> :
>> :
>>
>> ______________________________________________
>> R-help at stat.math.ethz.ch mailing list
>> https://www.stat.math.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide! 
>> http://www.R-project.org/posting-guide.html
> 
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://www.stat.math.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html




More information about the R-help mailing list