Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
Natalipc36
Regular Visitor

Ayuda en construccion de indicadores

Tengo 4 archivos con la misma información pero en 4 periodos diferentes (marzo, junio, septiembre y diciembre) lo consolide un uno solo y necesito crear 3 indicadores, a través de la variable M

.

 

  1. Si M solo aparece en el mes de diciembre se llama “Nuevo”
  2. Si M se encuentra en todos los meses se llama “Permanente”
  3. Si M Se encuentra en el mes de diciembre y uno de los otros meses (marzo, junio ó septiembre) se llama “Intermitente.

Gracias, alguien que me oriente por favor

2 ACCEPTED SOLUTIONS

Ya lo puede hacer, muchas gracias por tu ayuda, estuvo excelente

View solution in original post

@Natalipc36
Me alegro! Si tienes alguna otra duda, aquí estamos para echar una mano.
Por cierto, podrías por favor marcar la publicación relevante como solución para facilitar a otros que buscan algo parecido? (Has marcado tu última respuesta como solución al problema en cuestión)




Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






View solution in original post

11 REPLIES 11
PaulDBrown
Community Champion
Community Champion

@Natalipc36 

Si te he entendido bien, puedes probar lo siguiente:

1) Calcula el número de meses en los que está presente cada variable:

Meses presente = DISTINCTCOUNT('Tabla Datos'[Mes])

2) Calcula si cada variable tiene presencia en diciembre:

Diciembre = IF(MAX('Tabla Datos'[Mes])= 12; 1;0)

3) Calcula el total de meses en los datos

Num Meses = CALCULATE(DISTINCTCOUNT('Tabla Datos'[Mes]); ALL('Tabla Datos'))

 

Ahora puedes hacer una claúsula "IF" para distinguir según la clasificación que quieres hacer:

Clasificación = IF([Meses presente] = 1 && [Diciembre] = 1; "Nuevo"; 
                    IF([Meses presente] = 2 && [Diciembre] =1; "Intermitente"; 
                        IF([Meses presente] = [Num Meses]; "Permanente")))

 

Y obtendrás este resultado:

 

Clas Variables.JPG

 

Si te interesa el archivo PBI, lo puedes descargar de este enlace:

Achivo PBI





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Natalipc36
Regular Visitor

cedulaMes
2345678Dicembre
247888Septiembre
344566Junio
2256777Marzo
247888Junio
666899Marzo
666899Dicembre

 

Yo quiero construir un filtro, si la cedula solo sale en el mes de Diciembre es "Nuevo", si la cédula se repite en los meses de Marzo, Junio y Septiembre es permanente, y por último si la cédula está en diciembre y solo en alguno de estos meses (marzo, junio o septiembre) es Intermitente.  Me podria orientar por favor?

@Natalipc36 

Disculpa ya que creo que no vi tu última publicación cuando puse mi propuesta de solución. La he adaptado para los datos en la tabla que has puesto, incluyendo una cédula extra (111111111) para que se vea una opción "permanente".

 

Aquí tienes como queda, incluyendo un filtro para que puedes ver sólo un tipo de cédula 

Clas Variables 1.JPG

 

Y si te interesa el archivo, aquí tienes el enlace:
Archivo PBIX 





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Buen dia, disculpa no no abre el archivo porque no tengo la última versión de Power bi y no lo quiero descargar ya que sino debo modificar varios informes, sera que me lo puedes enviar en la versión anterior, Gracias 

@Natalipc36 

 

No tengo la versión anterior instalada! Seguro que si instalas la versión nueva te afectaría a los informes ya hechos? (en teoría no es así: los archivos antiguos son compatibles a las nuevas versiones de PBI; no así a la inversa...)

Bueno, por si acaso, te detallo el proceso que he seguido tanto para los cálculos como para crear la tabla para el filtro (he retocado lo que he puesto antes para que el filtro permita selección multiple; la anterior sólo permitíe selección de un valor de Cédula).

Primero las medidas para los cáclulos (si ves que pone "Texto" en alguna nombre de medida no hagas caso - es para diferenciar de las medidas que hice originalmente):

 

1) Cálcular el número total de meses en el modelo:

 

Num Meses (texto) = CALCULATE(DISTINCTCOUNT('Datos Natalipc36'[Mes]); ALL('Datos Natalipc36'))

 

 

 2) Cálcular el número de meses en los que cada Cédula tiene presencia:

 

Meses con presencia = DISTINCTCOUNT('Datos Natalipc36'[Mes])

 

 

3) Cálcular si una Cédula tiene presencia en el mes de diciembre:

 

Está en Diciembre = CALCULATE(DISTINCTCOUNT('Datos Natalipc36'[Cedula]); 
    FILTER('Datos Natalipc36';
        'Datos Natalipc36'[Mes] = "Diciembre"))

 

 

4) Clasificar las cédulas en función de los criterios que estableciste originalmente:

 

Clasificación (Mes texto) = IF([Meses con presencia] = 1 && [Está en Diciembre] = 1; "Nuevo"; 
                    IF([Meses con presencia] = 2 && [Está en Diciembre] =1; "Intermitente"; 
                        IF([Meses con presencia] = [Num Meses (texto)]; "Permanente"; "Otros")))

 

 

Ahora, para poder tener un filtro que te permita seleccionar por tipo de Cédula, hace falta crear esta tabla (con la opción "New Table" del menú):

 

Tabla Filtro = ADDCOLUMNS(VALUES('Datos Natalipc36'[Cedula]); 
             "Clas. Cédula"; [Clasificación (Mes texto)]; 
                 "Indice"; SWITCH(TRUE();
                 [Clasificación (Mes texto)] = "Nuevo"; 1;
                 [Clasificación (Mes texto)] = "Permanente"; 2;
                 [Clasificación (Mes texto)] = "Intermitente"; 3;
                  4))

 

(La columna que creo de "Índice" sirve para dar un orden a los valores del filtro: cambia los números en la función de SWITCH a tu gusto).
La tabla que hemos creado queda así:

Tabla Filtro.JPG

 

Esta tabla ya te da los resultados que buscas para la clasificación:

tabla filtro vis.JPG

 Las columnas "Meses con presencia" y "Está en Diciembre" las he incluido en la tabla para que puedas comprobar que las medidas funcionan. No es necesario que las incluyas en tu tabla final si no quieres: funcionará igual con o sin.

 

Incluso puedes unir esta tabla con la tabla de datos principal por si tienes que realizar otro tipo de cálculos. 

2020-01-10.png

 

Creo que no me he saltado ningún paso.

Te dejo de nuevo el enlace por si al final descargas la última versión de Desktop:

Archivo PBIX 





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Gracias, me ha funcionado casi todo excepto la Tabla Filtro que me da la sifuiente advertencia:

 "La expresión hace referencia a varias columnas. No se pueden convertir varias columnas a un valor escalar"

Ya lo puede hacer, muchas gracias por tu ayuda, estuvo excelente

@Natalipc36
Me alegro! Si tienes alguna otra duda, aquí estamos para echar una mano.
Por cierto, podrías por favor marcar la publicación relevante como solución para facilitar a otros que buscan algo parecido? (Has marcado tu última respuesta como solución al problema en cuestión)




Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






@Natalipc36 

 

Me temo que sin ver la estructura de las tablas etc no puedo ser de ayuda. Puedes de alguna forma compartir el archivo PBIX (OneDrive, Google Drive, Dropbox...) cambiando datos que sean confidenciales?

 

Si creas una tabla usando el campo de Cedula de tu tabla de datos y la medida [Clasificación (Mes texto)] te da error?

tabla basica.JPG

 

Puedes ponernos la medida entera (la de [Clasificación (Mes texto)) para ver si hay algún error?





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






v-alq-msft
Community Support
Community Support

Hi, @Natalipc36 

 

Based on your description, I creaeted data to reproduce your scenario.

d1.png

 

You can create a calculated column and a measure as follows.

 

calculated column: 

Month = MONTH('Table'[Date])

measure: 

metrics = 

var t = SUMMARIZE('Table','Table'[Month],"Appear",IF(CALCULATE(COUNTROWS('Table'),'Table'[IsAppear]=1)>0,TRUE(),FALSE()))

return 

IF(

    COUNTROWS(FILTER(t,[Appear]=TRUE()))=1 && COUNTROWS(FILTER(t,[Appear]=TRUE() && [Month]<>12))=0,

    "Nuevo",

    IF(

        COUNTROWS(FILTER(t,[Appear]=TRUE()))=12,

        "Permanente",

        "Intermitente"

    )

)

 

 

 

Result:
d2.png

 

Best Regard

Allan

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

fhill
Resident Rockstar
Resident Rockstar

¿Ya ha combinado los 4 archivos en PowerBI? ¿Puede publicar una muestra de los datos sin procesar y una muestra de lo que M está buscando?  <Using Google Translate>




Did I answer your question, or help you along the way?
Please give Kudos or Mark as a Solution!


https://www.linkedin.com/in/forrest-hill-04480730/

Proud to give back to the community!
Thank You!




Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

Find out what's new and trending in the Fabric community.

July PBI25 Carousel

Power BI Monthly Update - July 2025

Check out the July 2025 Power BI update to learn about new features.