[R] Error in vector("double", length) : vector size specified is too large....VLDs

Peter Dalgaard p.dalgaard at biostat.ku.dk
Thu Sep 15 21:08:02 CEST 2005

"Tom Colson" <tom_colson at ncsu.edu> writes:

> > rm(data1)
> > variog.1.b <- variog(raw.data)
> variog: computing omnidirectional variogram
> Error in vector("double", length) : vector size specified is too large
> Turns out I was wrong re: # of rows...it's 304,000
> Same problem. Version is 2.1.1, hardware is Dual Xeon 3.6 4 GB RAM, XP Pro
> 64 Bit. Can reproduce the problem with 64Bit R 2.1.1 running on Fedora 4,
> same hardware. 

Variograms involve the differences between all pairs of points which
can become a rather large number of values. 304000*303999/2 in your
case, about 344GB by my reckoning. And the distances between them
makes for a similar quantity.

Now, some algorithms may be smarter than to keep all values in memory,
but you haven't even told us where you got the variog() from. It
doesn't seem to be in the standard packages, although we do have
variogram() and Variogram() in spatial and nlme.

   O__  ---- Peter Dalgaard             Øster Farimagsgade 5, Entr.B
  c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
 (*) \(*) -- University of Copenhagen   Denmark          Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk)                  FAX: (+45) 35327907

More information about the R-help mailing list