Fórmulas Matriciales

16/04/2005 - 01:08 por cuayo | Informe spam
Amigos:

tengo que solucionar el siguiente problema y creo que el camino es usando
una formula matricial en que debo combinar las funciones sumar.si y max.

matriz
p1 p2 p3 p4
1 t1 5 6 4 7
2 t2 4 8 3 6
3 t1 3 8 6 6
4 t2 5 6 7 7

Resultado
p1 p2 p3 p4
t1 8 14 14 15
t2 9 14 15 15

la idea es sumar por cada tipo t el máximo entre los periódo p anteriores.

por ejemplo

para el tipo t1 en el período p3, se deben sumar los máximos incluyendo
los períodos anteriores.

fila 1 el máximo hasta el periodo 3 es 6
fila 3 el máximo hasta el periodo 3 es 8
por lo que el resultado es 14.

Espero me puedan ayudar.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
16/04/2005 - 03:49 | Informe spam
hola, Claudio !

... el siguiente problema... creo que... es usando una formula matricial... funciones sumar.si y max.
matriz
p1 p2 p3 p4
1 t1 5 6 4 7
2 t2 4 8 3 6
3 t1 3 8 6 6
4 t2 5 6 7 7
Resultado
p1 p2 p3 p4
t1 8 14 14 15
t2 9 14 15 15
... sumar por cada tipo t el maximo entre los periodo p anteriores...



suponiendo que en la 'matriz' [segun el ejemplo] el 'arreglo' de los datos son los rangos:
-> 'B1:E1' -> los titulos 'p'
-> 'A2:A5' -> los titulos 't'
-> 'B2:E5' -> los datos
y que en la 'nueva matriz' [los resultados] tienes 'arreglados' los siguientes rangos:
-> 'A8:A9' -> los 'criterios' para cada tipo 't'
-> 'B8:E9' -> los maximos para cada periodo 'p'
te expongo las formulas para el caso del tipo 't1' [que serian en la fila 9, rango 'B8:E9']
[B8] =sumar.si($a$2:$a$5,$a8,b$2:b$5)
[C8] =max(b8,sumar.si($a$2:$a$5,$a8,c$2:c$5))
=> copias [C8] al resto de la fila [D8:E9]

saludos,
hector.
p.d. si use max() y sumar.si(), pero NO es 'matricial' :))
aunque... no se 'de donde' han 'aparecido' los 15's -?-
Respuesta Responder a este mensaje
#2 cuayo
16/04/2005 - 06:06 | Informe spam
Muchas gracias Héctor, por tu paciencia y buena voluntad. El problema que
te expongo es que necesito sumar los máximos parciales de cada muestra
observado hasta el período actual.

Te envío un ejemplo a tu correo, si no es mucha molestia.

Desde ya muy agradecido

Héctor Miguel wrote:

hola, Claudio !

> ... el siguiente problema... creo que... es usando una formula


matricial... funciones sumar.si y max.
> matriz
> p1 p2 p3 p4
> 1 t1 5 6 4 7
> 2 t2 4 8 3 6
> 3 t1 3 8 6 6
> 4 t2 5 6 7 7
> Resultado
> p1 p2 p3 p4
> t1 8 14 14 15
> t2 9 14 15 15
> ... sumar por cada tipo t el maximo entre los periodo p anteriores...

suponiendo que en la 'matriz' [segun el ejemplo] el 'arreglo' de los datos


son los rangos:
-> 'B1:E1' -> los titulos 'p'
-> 'A2:A5' -> los titulos 't'
-> 'B2:E5' -> los datos
y que en la 'nueva matriz' [los resultados] tienes 'arreglados' los


siguientes rangos:
-> 'A8:A9' -> los 'criterios' para cada tipo 't'
-> 'B8:E9' -> los maximos para cada periodo 'p'
te expongo las formulas para el caso del tipo 't1' [que serian en la fila 9,


rango 'B8:E9']
[B8] =sumar.si($a$2:$a$5,$a8,b$2:b$5)
[C8] =max(b8,sumar.si($a$2:$a$5,$a8,c$2:c$5))
=> copias [C8] al resto de la fila [D8:E9]

saludos,
hector.
p.d. si use max() y sumar.si(), pero NO es 'matricial' :))
aunque... no se 'de donde' han 'aparecido' los 15's -?-
Respuesta Responder a este mensaje
#3 Héctor Miguel
16/04/2005 - 07:27 | Informe spam
hola, claudio !

... necesito sumar los maximos parciales de cada muestra observado hasta el periodo actual.



cuass !!!... ->'sonido que produce un cuerpo al caer'<- [o sea... 'ya caigo' :D]
ya entendi 'de donde salen' los 15's :))
suponiendo el mismo 'arreglo' para la matriz 'original' y la matriz 'de los resultados'...
cambia la formula 'inicial' en la celda [B8] por alguna de las siguientes:
-> 'matricial': =suma(k.esimo.mayor(($a$2:$a$5=$a8)*$b$2:b$5,{1;2}))
-> 'normal': =sumaproducto(k.esimo.mayor(($a$2:$a$5=$a8)*$b$2:b$5,{1;2}))
despues la copias 'al resto' de las celdas en la matriz de los resultados ;)
-> la matricial... por columnas o por filas
-> la normal... 'como quieras' ;)

saludos,
hector.
Respuesta Responder a este mensaje
#4 cuayo
16/04/2005 - 16:36 | Informe spam
Héctor Miguel wrote:

Muchas gracias por tu atención, Héctor. Tal como tu dices, hay que sumar
los máximos de cada tipo de muestra, pero me refiero al mámimo por línea.
Si no es mucha molestia, revisa el archivo que te envío al e-mail.

Desde ya, muy agradecido por tu ayuda.

Atte

Claudio

hola, claudio !

> ... necesito sumar los maximos parciales de cada muestra observado hasta


el periodo actual.

cuass !!!... ->'sonido que produce un cuerpo al caer'<- [o sea... 'ya caigo'


:D]
ya entendi 'de donde salen' los 15's :))
suponiendo el mismo 'arreglo' para la matriz 'original' y la matriz 'de los


resultados'...
cambia la formula 'inicial' en la celda [B8] por alguna de las siguientes:
-> 'matricial': =suma(k.esimo.mayor(($a$2:$a$5=$a8)*$b$2:b$5,{1;2}))
-> 'normal': =sumaproducto(k.esimo.mayor(($a$2:$a$5=$a8)*$b$2:b$5,{1;2}))
despues la copias 'al resto' de las celdas en la matriz de los resultados ;)
-> la matricial... por columnas o por filas
-> la normal... 'como quieras' ;)

saludos,
hector.
Respuesta Responder a este mensaje
#5 Héctor Miguel
17/04/2005 - 01:20 | Informe spam
hola, Claudio !

... hay que sumar los máximos de cada tipo de muestra, pero... por linea.
... revisa el archivo que te envío al e-mail.



desde tu 'amenaza' en el correo anterior de que me enviabas un 'e-milio'... :D
[probablemente se ha 'estado regresando', porque...] no he recibido ninguno -?-
en tanto se corrige esta situacion [probablemente quitando 'NO...SPAM...PLS']
de la matriz de tu ejemplo 'se aprecian' DOS 'series de filas' por tipo... pregunta:
es 'correcta' esta apreciacion? o... pudiera haber mas de dos series de filas? -?

comentas?
saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida