| integer-utils {S4Vectors} | R Documentation |
Some low-level utility functions to operate on ordinary integer vectors.
toListOfIntegerVectors(x, sep=",") ## more to come...
x |
A character vector where each element is a string containing
comma-separated integers in decimal representation.
Alternatively |
sep |
The separator represented as a single-letter string. |
toListOfIntegerVectors is a fast and memory-efficient
implementation of
lapply(strsplit(x, sep, fixed=TRUE), as.integer)
but, unlike the above code, it will raise an error if the input contains NAs or strings that don't represent integer values.
A list parallel to x where each list element is an integer
vector.
Hervé Pagès
The strsplit function in the base
package.
x <- c("1116,0,-19",
" +55291 , 2476,",
"19184,4269,5659,6470,6721,7469,14601",
"7778889, 426900, -4833,5659,6470,6721,7096",
"19184 , -99999")
y <- toListOfIntegerVectors(x)
y
## When it doesn't choke on an NA or string that doesn't represent
## an integer value, toListOfIntegerVectors() is equivalent to
## the function below but is faster and more memory-efficient:
toListOfIntegerVectors2 <- function(x, sep=",")
{
lapply(strsplit(x, sep, fixed=TRUE), as.integer)
}
y2 <- toListOfIntegerVectors2(x)
stopifnot(identical(y, y2))