# --------------------------------
# How to transpose a Matrix in R
# --------------------------------
# Create a Matrix
z <- matrix(1:20, nrow=5, ncol=4)
print(z)
# Transpose a Matrix using a built-in function
print(t(z))
# Transpose a Matrix using a user define function
matrixtrans <- function(x) {
if (!is.matrix(x)) {
warning("argument is not a matrix: returning NA")
return(NA_real_)
}
y <- matrix(1, nrow=ncol(x), ncol=nrow(x))
for (i in 1:nrow(x)) {
for (j in 1:ncol(x)) {
y[j,i] <- x[i,j]
}
}
return(y)
}
tz <- matrixtrans(z)
print(tz)