what is diffrence between NROW and nrow in r? [duplicate]

if we already have nrow and ncol in r, then why there is NROW and NCOL is there. is there any difference between them or they are just an alias?

mx <- matrix(1:12,3,4)
nrow(mx)
NROW(mx)
ncol(mx)
NCOL(mx)
1

1 Answer

in R you always can check the code of functions, typing their names without the parenthesis. Doing this, you can see the differences between NCOL and ncol:

NCOL # function (x) # if (length(d <- dim(x)) > 1L) d[2L] else 1L # <bytecode: 0x560bca6cb290> # <environment: namespace:base>
ncol # function (x) # dim(x)[2L] # <bytecode: 0x560bc9691cd0> # <environment: namespace:base>

ncol will always return the second dimension of the argument, while NCOL will check if the argument only has one dimension, in which case it will return 1.

You Might Also Like