clone physically duplicates ffdf objects

# S3 method for class 'ffdf'
clone(x, nrow=NULL, ...)

Arguments

x

an ffdf

nrow

optionally the desired number of rows in the new object. Currently this works only together with initdata=NULL

...

further arguments passed to clone (usually not usefull)

Details

Creates a deep copy of an ffdf object by cloning all physical components including the row.names

Value

An object of type ffdf

Author

Jens Oehlschlägel

See also

Examples

  x <- as.ffdf(data.frame(a=1:26, b=letters, stringsAsFactors = TRUE))

  message("Here we change the content of both x and y by reference")
#> Here we change the content of both x and y by reference
  y <- x
  x$a[1] <- -1
  y$a[1]
#> [1] -1

  message("Here we change the content only of x because y is a deep copy")
#> Here we change the content only of x because y is a deep copy
  y <- clone(x)
  x$a[2] <- -2
  y$a[2]
#> [1] 2
  rm(x, y); gc()
#>           used (Mb) gc trigger  (Mb) max used  (Mb)
#> Ncells 1135685 60.7    1994352 106.6  1994352 106.6
#> Vcells 2105344 16.1    8388608  64.0  3981144  30.4