Estimado Javier,

Gracias por tu mensaje.

No, lo unico que requiero es la lista de números (i1, 2, 3, 1, 2, 3, 4, 5,
1, 2).

Saludos cordiales,
Jorge.-



2015-10-28 14:35 GMT-05:00 Javier Rubén Marcuzzi <
javier.ruben.marcu...@gmail.com>:

> Estimado Jorge I Velez
>
>
>
> No comprendo un punto, dices que deseas construir sub matrices y extraer
> elementos de sub matrices, en el ejemplo en output no hay sub matrices
> (tres matrices como resultado) sino una cadena de números. ¿Cómo necesitas
> el resultado?, ¿Cómo se ve en el ejemplo?, ¿Cómo matrices de matrices?
>
>
>
> Ejemplo
>
> 123
>
> 12345
>
> 12
>
>
>
> O en una forma
>
> 1231234512
>
>
>
> ¿Hay que dejar algo (índice) como para que accedas a algo reconocido o
> especificado, ej, segundo valor de la segunda sub matriz (2,2), ¿o con
> tener la lista de números le es útil?
>
>
>
> Javier Rubén Marcuzzi
> Técnico en Industrias Lácteas
> Veterinario
>
>
>
>
>
>
> *De: *Jorge I Velez
> *Enviado: *miércoles, 28 de octubre de 2015 12:15
> *Para: *R-help-es
> *Asunto: *[R-es] Extraer elementos diagonales de submatrices
>
>
>
>
>
> Buenos dias a todos,
>
>
>
> Quisiera extraer algunas entradas de una matrix "m" teniendo en cuenta
> algunas restricciones.  El siguiente ejemplo ilustra la situacion:
>
>
>
> ## input
>
> m <- structure(c(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
>
> 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3,
>
> 3, 0, 0, 0, 0, 0, 4, 4, 4, 4, 4, 0, 0, 0, 0,
>
> 0, 0, 0, 5, 5, 5), .Dim = c(10L, 5L))
>
> m
>
>
>
> ## output
>
> output <- c(1:3, 1:5, 1:2)
>
> output
>
>
>
> Si el numero de filas es r y el numero de columnas k, la idea es construir
> submatrices de dimension k x k y extraer los elementos diagonales NO
> ceros.  Ahora, en caso de encontrar un cero, debe desplazarse a la
> siguiente fila, y construir una nueva matriz k x k.  Graficamente esto
> seria:
>
>
>
> [image: Inline image 2]
>
>
>
> Observe que en este caso, r = 10 y k = 5.  En la primera submatriz, la
> diagonal tiene los valores 1, 2, 3, 0, 0, de los cuales SOLO deben
> seleccionarse 1, 2 y 3 (en lila).  El primer cero se encuentra en la
> posicion [1, 4], asi que la siguiente submatriz debe construirse COMENZANDO
> en la fila 4, columna 1.
>
>
>
> A partir de esta segunda submatriz se obtienen los elements 1, 2, 3, 4 y
> 5, que corresponden a su diagonal (en azul celeste).  La posicion del
> ultimo elemento de esta diagonal es [8, 5], asi que la siguiente submatriz
> debe comenzar en la fila 9.  A partir de esta submatriz se obtienen los
> valores 1 y 2 (en naranja).  El resultado final de todo este proceso es el
> vector
>
>
>
> # [1] 1 2 3 1 2 3 4 5 1 2
>
>
>
> Agradezco a todos el tiempo que les tomo leer este mensaje, y por supuesto
> por cualquier sugerencia que me permita obtener este vector.
>
>
>
> Saludos cordiales,
>
> Jorge Velez.-
>
>
>
>
>
>
>

        [[alternative HTML version deleted]]

_______________________________________________
R-help-es mailing list
R-help-es@r-project.org
https://stat.ethz.ch/mailman/listinfo/r-help-es

Responder a