Removes empty rows/columns in an array-like object.
Usage
compact(x, ...)
compact_columns(x, ...)
compact_rows(x, ...)
# S4 method for class 'ANY'
compact(x, margin = 1, na.rm = FALSE, verbose = getOption("arkhe.verbose"))
# S4 method for class 'ANY'
compact_columns(x, na.rm = FALSE, verbose = getOption("arkhe.verbose"))
# S4 method for class 'ANY'
compact_rows(x, na.rm = FALSE, verbose = getOption("arkhe.verbose"))
Arguments
- x
An R object (should be a
matrix
or adata.frame
).- ...
Currently not used.
- margin
A length-one
numeric
vector giving the subscripts which the function will be applied over (1
indicates rows,2
indicates columns).- na.rm
A
logical
scalar: shouldNA
values be stripped before the computation proceeds?- verbose
A
logical
scalar: should R report extra information on progress?
Details
A row/column is empty if it contains only zeros (if of type numeric
)
or zero length character strings (if of type character
).
See also
Other data preparation tools:
append_column()
,
append_rownames()
,
assign()
,
count()
,
detect()
,
discard()
,
get()
,
keep()
,
seek()
Examples
## Create a data.frame
X <- data.frame(A = 0, B = 1:5, C = 6, D = "", F = letters[1:5])
X
#> A B C D F
#> 1 0 1 6 a
#> 2 0 2 6 b
#> 3 0 3 6 c
#> 4 0 4 6 d
#> 5 0 5 6 e
## Remove empty columns
compact(X, margin = 2)
#> B C F
#> 1 1 6 a
#> 2 2 6 b
#> 3 3 6 c
#> 4 4 6 d
#> 5 5 6 e