A.8 Operações adicionais com matrizes
Há outras formas de se construir uma matriz além daquela usando a função matrix()
. Há também diveras operações matriciais que podem ser realizadas no . Aqui apresentam-se esse conteúdo complementar sobre matrizes.
A.8.1 Função dim()
Podemos converter um vetor atômico em uma arranjo de n
dimensões através do atributo da dimensão de um objeto. Este atributo pode ser alterado pela função dim()
. Para fazer isso, definimos o atributo dim
(de dimensão) com um vetor numérico com os tamanhos para cada dimensão. O R reorganizará os elementos do vetor de acordo com as dimensões.
v <- vetor <- 1:12
length(v)
attributes(v)
typeof(v)
# conversão de vetor para matriz
dim(v) <- c(3, 4) # 1a dimensão: linhas , 2a dimensão: colunas
# v é vector?
is.vector(v)
# v é matrix?
is.matrix(v)
# classe de vetor
class(v)
attributes(v)
v
# invertendo as dimensões
dim(v) <- c(4, 3)
v
O R usa o primeiro elemento de dim()
para o número de linhas e o segundo para o número de colunas. De forma geral, em operações que usam linhas e colunas, as linhas vem sempre em primeiro lugar.
Note como os valores de v
foram distribuídos na matriz com 3 linhas e 4 colunas. O R sempre preenche a matriz ao longo das colunas.
Para mais controle na forma como R reorganiza os dados em linhas e colunas, podemos utilizar a função matrix()
ou array()
. Elas fazem a mesma coisa que a dim()
porém com argumentos mais versáteis para estruturar uma matrix
.