Operators acting on bit() or bitwhich() objects to extract or replace parts.

# S3 method for class 'bit'
x[[i]]

# S3 method for class 'bit'
x[[i]] <- value

# S3 method for class 'bit'
x[i]

# S3 method for class 'bit'
x[i] <- value

# S3 method for class 'bitwhich'
x[[i]]

# S3 method for class 'bitwhich'
x[[i]] <- value

# S3 method for class 'bitwhich'
x[i]

# S3 method for class 'bitwhich'
x[i] <- value

Arguments

x

a bit() or bitwhich() object

i

preferrably a positive integer subscript or a ri(), see text

value

new logical or integer values

Value

The extractors [[ and [ return a logical scalar or vector. The replacment functions return an object of class(x).

Details

The typical usecase for '[' and '[<-' is subscripting with positive integers, negative integers are allowed but slower, as logical subscripts only scalars are allowed. The subscript can be given as a bitwhich() object. Also ri() can be used as subscript.

Extracting from bit() and bitwhich() is faster than from logical() if positive subscripts are used. Unteger subscripts make sense. Negative subscripts are converted to positive ones, beware the RAM consumption.

See also

Author

Jens Oehlschlägel

Examples


  x <- as.bit(c(FALSE, NA, TRUE))
  x[] <- c(FALSE, NA, TRUE)
  x[1:2]
#> [1] FALSE FALSE
#> attr(,"vmode")
#> [1] "boolean"
  x[-3]
#> [1] FALSE FALSE
#> attr(,"vmode")
#> [1] "boolean"
  x[ri(1, 2)]
#> [1] FALSE FALSE
#> attr(,"vmode")
#> [1] "boolean"
  x[as.bitwhich(c(TRUE, TRUE, FALSE))]
#> [1] FALSE FALSE
#> attr(,"vmode")
#> [1] "boolean"
  x[[1]]
#> [1] FALSE
#> attr(,"vmode")
#> [1] "boolean"
  x[] <- TRUE
  x[1:2] <- FALSE
  x[[1]] <- TRUE