Como nomear linhas da matriz e colunas em R

o rbind ()

em função de R convenientemente adiciona os nomes dos vectores para as linhas da matriz. Você nomeia os valores em um vetor, e você pode fazer algo muito semelhante com linhas e colunas em uma matriz.

Para isso, você tem as funções rownames () e COLNAMES (). Adivinhar qual faz o quê? Ambas as funções trabalham muito parecido com o nomes () funcionar você usa ao nomear valores vetoriais.

Mudando os nomes de linha e coluna

O Matrix baskets.team já tem alguns nomes de linha. Seria melhor se os nomes das linhas que acabou de ler # 147-Avó# 148- e # 147-Geraldine# 148-. Você pode facilmente mudar estes nomes de linha como esta:

> rownames (baskets.team) lt; - c (# 147-Granny # 148-, # 147 Geraldine # 148-)

Você pode olhar para a matriz para verificar se este fez o que deveria fazer, ou você pode dar uma olhada no próprio nomes de linha como esta:

> rownames (baskets.team) [1] # 147 Granny # 148- # 147 Geraldine # 148-

o COLNAMES () função funciona exatamente da mesma. Você pode, por exemplo, adicionar o número do jogo como um nome de coluna usando o seguinte código:

> COLNAMES (baskets.team) lt; - c (# 147-1st # 148-, # 147-2nd # 148-, # 147-3th # 148-, # 147-4th # 148-, # 147-5th # 148-, # 147-6th # 148-)

Isso lhe dá a seguinte matriz:

> Baskets.team1st 2 3th 4 5 6thGranny 12 4 5 6 9 3Geraldine 5 4 2 4 12 9

Isto é quase como você quer, mas o terceiro nome da coluna contém um erro de escrita irritante. Não há problema, R permite que você facilmente corrigir esse erro. Assim como o com nomes () função, você pode usar índices para extrair ou para alterar uma linha ou coluna nome específico. Você pode corrigir o erro nos nomes das colunas como esta:

> COLNAMES (baskets.team) [3] lt; - # 147-3rd # 148-

Se você quiser se livrar de nomes de coluna ou nomes de linha, a única coisa que você precisa fazer é definir o seu valor para NULO. Isso também funciona para nomes de vetores, por sinal. Você pode tentar isso por si mesmo em uma cópia da matriz baskets.team como isso:

> baskets.copy lt; - baskets.team> COLNAMES (baskets.copy) lt; - NULL> baskets.copy [, 1] [, 2] [, 3] [, 4] [, 5] [, 6] Granny 12 4 5 6 9 3Geraldine 5 4 2 4 12 9

R armazena os nomes de linha e coluna em um atributo chamado dimnames. Use o dimnames () função para extrair ou definir esses valores.

O uso de nomes como índices

Estes nomes de linha e coluna podem ser usados ​​apenas como você usar nomes para valores em um vetor. Você pode usar estes nomes em vez de o número de índice para selecionar os valores a partir de um vector. Isto funciona para matrizes, bem como, usando os nomes de linha e coluna.

Digamos que você queira selecionar o segundo eo quinto jogo para ambas as senhoras, tente:

> Baskets.team [, c (# 147-2nd # 148-, # 147-5th # 148 -)] segundo 5thGranny 4 9Geraldine 4 12

Exatamente como antes, você obtém todas as linhas se você não especificar quais os que você quiser. Alternativamente, você pode extrair todos os resultados para Granny como este:

> Baskets.team [# 147 Granny # 148-], 1º 2º 3º 4º 5º 6th12 4 5 6 9 3

Isso é o resultado, na verdade, mas o nome da linha é ido agora. R tenta simplificar a matriz em um vetor, se isso é possível. Neste caso, uma única linha é retornada assim, por padrão, esse resultado é transformado em um vetor.

Se uma matriz de uma linha é simplificado para um vetor, os nomes das colunas são usadas como nomes para os valores. Se uma matriz de uma coluna é simplificada a um vector, os nomes de linha são utilizados como nomes para o vector. Se você quiser manter todos os nomes, você deve definir o argumento solta para FALSO para evitar a conversão a um vector.

menu