[R-br] Extrair diagonais de Matriz ao selecionar um elemento.
Augusto Ribas
ribas.aca em gmail.com
Quarta Janeiro 23 10:21:42 BRST 2013
Bom dia a todos, estou com uma duvida aqui.
Eu tenho varias matrizes dessa forma.
> exemplo
A B C D
1 0 1 0 0
2 0 0 2 0
3 1 0 0 3
4 0 2 0 0
Aqui ela esta 4x4, mas ela pode ser de qualquer forma, não
necessariamente quadrada assim.
O maior numero que eu tenho ali dentro é 3.
Existe uma forma simples de obter a posição do 3?
Eu estava tentando o seguinte:
Obtinha o maior elemento
max(exemplo)
Depois olhava onde ele estava.
> which(exemplo==3)
[1] 15
Mas ele fala um número apenas, que ai tem que dividir o número de
colunas, tem alguma função que me retornaria a posição, qual linha e
qual coluna ele esta?
Tipo [3,4], e que seja independente se a matrix for diferente quanto
ao numero de linhas ou colunas?
A segunda duvida é, tem alguma forma simples de extrair a diagonal dos
números a partir do 3? Principalmente as posições dos elementos.
No exemplo eu gostaria do seguinte:
A diagonal do 3 assim:
[1,2],[2,3],[3,4].
Que ai eu poderia obter quais as colunas que estão nessa diagonal,
tipo B,C,D, e as linhas 1,2,3. Esse é o objetivo final, mas eu estou
apanhando para obter um jeito simples de extrair a posição do ultimo
elemento da diagonal ali na matriz, ou a posição dos elementos da
diagonal em si.
--
Grato
Augusto C. A. Ribas
Site Pessoal: http://recologia.wordpress.com/
Lattes: http://lattes.cnpq.br/7355685961127056
Mais detalhes sobre a lista de discussão R-br