Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola...
teniendo la siguiente información
Load * inline
[Persona,Pract,dpto,cant
27000000,330101,LA CAPITAL,1
28000000,320101,LA CAPITAL,1
28000000,320101,INTERIOR,1
29000000,330000,INTERIOR,1
28000000,340000,INTERIOR,1
];
solamente quiero mostrar aquellas personas que tienen la misma practica en distinto departamento, en el caso del ejemplo quiero mostrar en un gráfico la siguiente información:
Persona Practica LA CAPITAL INTERIOR
28000000 320101 1 1 --> suma de misma práctica en diferente dpto.
Utilizando la expresión if(Count(Distinct dpto )>1,sum(cant),0) logro determinar la persona que se hizo la misma práctica en distinto dpto pero no logro mostrar en que departamentos. Me está faltando condicionar la dimensión? o de que manera lo puedo solucionar?.
Gracias.
Se me ocurre una dimensión calculada con la función aggr para que sepas que tiene mas de un curso en diferente dpto.
Si no son muchos dptos puedes hacerlas en columnas con diferentes expresiones.
O puedes dejar la dimensión dpto y verlo por renglón
Se me ocurre una dimensión calculada con la función aggr para que sepas que tiene mas de un curso en diferente dpto.
Si no son muchos dptos puedes hacerlas en columnas con diferentes expresiones.
O puedes dejar la dimensión dpto y verlo por renglón
Otra solución sería en el script hacer un join con la misma tabla por el campo Persona y luego crear una flag evaluando Practica y Depto.
Sería algo así:
Ejemplo:
Load * inline
[Persona,Pract,dpto,cant
27000000,330101,LA CAPITAL,1
28000000,320101,LA CAPITAL,1
28000000,320101,INTERIOR,1
29000000,330000,INTERIOR,1
28000000,340000,INTERIOR,1
];
left join (Ejemplo)
LOAD
Persona,
Pract2,
dpto2,
cant2
Resident Ejemplo;
EjemploFinal:
LOAD
Persona,
Pract,
dpto,
cant,
if(Pract=Pract2 and dpto<>dpto2, 1, 0) as FlagPractica
Resident Ejemplo;
DROP Table Ejemplo;
De esta forma los registros que tengan la flag en 1 corresponden a personas que se hicieron la misma practica en dos deptos distintos. Luego queda jugar con las cantidades para ver como contar y obtener el resultado que necesitas.
Saludos!
Adrián,
a partir de tu respuesta logré resolverlo condicionando las dimensiones de la siguiente manera:
=aggr(if(COUNT(DISTINCT dpto)>1,Persona),Persona,Pract).
Muchas gracias.