Skip to content
Prev 60967 / 63424 Next

simplify2array assumes non-NA dim() -- base or method bug?

Hello,

I don't think it's a bug in ncol.
nrow and ncol are not generic, they are defined simply as

nrow <- function(x) dim(x)[1L]
ncol <- function(x) dim(x)[2L]

Checking:

nrow
#function (x)
#dim(x)[1L]
#<bytecode: 0x000001c3e2863c78>
#<environment: namespace:base>

ncol
#function (x)
#dim(x)[2L]
#<bytecode: 0x000001c3e1f8c030>
#<environment: namespace:base>


Since dim(table(letters)) returns a length 1 vector, nrow returns that 
value and ncol's return is the expected behavior of subsetting past the 
vector length.

dim(table(letters))  # length 1
# [1] 26

nrow(table(letters))  # works as expected
# [1] 26

ncol(table(letters))  # works as expected
# [1] NA


Hope this helps,

Rui Barradas




?s 04:19 de 26/08/2022, Michael Chirico via R-devel escreveu: