add: Incrementing an ff or ram object

Description Usage Arguments Value Note Author(s) See Also Examples

View source: R/generics.R

Description

Yet another assignment interface in order to allow to formulate x[index,...,add=TRUE]<-value in a way which works transparently, not only for ff, but also for ram objects: add(x, value, index, ...).

Usage

1
2
3
4
5
add(x, ...)
## S3 method for class 'ff'
add(x, value, ...)
## Default S3 method:
add(x, value, ...)

Arguments

x

an ff or ram object

value

the amount to increment, possibly recylcled

...

further arguments – especially index information – passed to [<- or [<-.ff

Value

invisible()

Note

Note that add.default changes the object in its parent frame and thus violates R's usual functional programming logic. Duplicated index positions should be avoided, because ff and ram objects behave differently:

1
2
3
4
5
  add.ff(x, 1, c(3,3))
  # will increment x at position 3 TWICE by 1, while
  add.default(x, 1, c(3,3))
  # will increment x at position 3 just ONCE by 1
  

Author(s)

Jens Oehlschl<c3><a4>gel

See Also

swap, [.ff, LimWarn

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
   message("incrementing parts of a vector")
   x <- ff(0, length=12)
   y <- rep(0, 12)
   add(x, 1, 1:6)
   add(y, 1, 1:6)
   x
   y

   message("incrementing parts of a matrix")
   x <- ff(0, dim=3:4)
   y <- array(0, dim=3:4)
   add(x, 1, 1:2, 1:2)
   add(y, 1, 1:2, 1:2)
   x
   y

   message("BEWARE that ff and ram methods differ in treatment of duplicated index positions")
   add(x, 1, c(3,3))
   add(y, 1, c(3,3))
   x
   y

   rm(x); gc()

kindlychung/ff documentation built on May 20, 2019, 9:58 a.m.