identical_byname: Compare two matrices "by name" for exact equality

View source: R/Binary.R

identical_bynameR Documentation

Compare two matrices "by name" for exact equality


If operands are matrices, they are completed and sorted relative to one another prior to comparison.


identical_byname(..., .summarise = FALSE)



Operands to be compared.


Tells whether the operation should be accomplished across lists (FALSE) or down lists (TRUE).


Comparisons are made by identical(a, b) so that variations among numbers within the computational precision will return FALSE.

If fuzzy comparison is needed, use equal_byname, which compares using isTRUE(all.equal(a, b)).


TRUE iff all information is identical, including row and column types and row and column names and entries in the matrices.


a <- matrix(1:4, nrow = 2)
b <- matrix(1:4, nrow = 2)
identical_byname(a, b)
identical_byname(a, b + 1e-100)
a <- a %>% setrowtype("Industries") %>% setcoltype("Commodities")
identical_byname(a, b) # FALSE because a has row and column types, but b does not.
b <- b %>% setrowtype("Industries") %>% setcoltype("Commodities")
identical_byname(a, b)
dimnames(a) <- list(c("i1", "i2"), c("c1", "c2"))
dimnames(b) <- list(c("c1", "c2"), c("i1", "i2"))
identical_byname(a, b) # FALSE, because row and column names are not equal
dimnames(b) <- dimnames(a)
identical_byname(a, b)

matsbyname documentation built on April 2, 2022, 1:06 a.m.