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

Don't miss out! 2025 Microsoft Fabric Community Conference, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount. Prices go up February 11th. Register now.

Reply
Syndicate_Admin
Administrator
Administrator

Valores del mes anterior y actual, pero con un mes seleccionado en la segmentación de datos

Hola

¿Pueden decirme cómo calcular con valores tanto del mes actual como del anterior, mientras se selecciona un solo mes en una segmentación de datos?

Quiero calcular el consumo de energía de mi cliente, para lo cual necesito su posición de kwh del mes anterior y actual.

Mi medida funciona restando el último valor del mes actual del último valor del mes anterior como:

Posición en Kwh el 31/nov/2022 = 1200

Kwh posición el 31/oct/2022 = 1000

El valor de devolución para el mes 11 es de 200kwh.

Esta medida se integra en otra con resumir, por lo que puedo sumar todos los valores, para devolver un TOTAL como:

Medida =

Var _1 = RESUMIR(POWER_DATA,CLIENT_ID,MES,"uso",[usage_measure])

Devolución

Sumx(_1,[uso])

El problema comienza cuando solo selecciono un mes en una segmentación de datos, porque entonces mi medida devolverá un valor en blanco, ya que no puede calcular con los valores anteriores del mes.

Mi primera medida:

usage_measure =

Donde current_month_last =

Calculate(maxx(filter(power_data, client_id = selectedvalue(client_id) && month =selectedvalue(month),kwh_value),

'Power_data[rango]' = 1)

Donde previous_month_last =

Calculate(maxx(filter(power_data, client_id = selectedvalue(client_id) && month =selectedvalue(month)-1,kwh_value),

'Power_data[rango]' = 1)

Devolución

current_momth_last - previous_month_last

Por favor, ayúdame con mi proyecto.

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

Hola

Mi solución de trabajo fue hacer una nueva tabla con groupby, usando una tabla de resumen variable.
Utilicé la tabla como base para hacer que los cálculos en la matriz fueran visuales.

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

Hola

Mi solución de trabajo fue hacer una nueva tabla con groupby, usando una tabla de resumen variable.
Utilicé la tabla como base para hacer que los cálculos en la matriz fueran visuales.

Syndicate_Admin
Administrator
Administrator

@holodan95 ,

Por favor, pruebe los pasos a continuación:

1. Crear una medida con la siguiente fórmula DAX

Usage_measure =
VAR cur_month =
    SELECTEDVALUE ( 'Power_data'[Month_of_entry] )
VAR cur_id =
    SELECTEDVALUE ( 'Power_data'[Client_ID] )
VAR tmp =
    FILTER (
        ALL ( 'Power_data' ),
        'Power_data'[Month_of_entry] = cur_month
            && 'Power_data'[Client_ID] = cur_id
    )
VAR tmp1 =
    FILTER (
        ALL ( 'Power_data' ),
        'Power_data'[Month_of_entry] = cur_month - 1
            && 'Power_data'[Client_ID] = cur_id
    )
VAR cur_max_date =
    MAXX ( tmp, [Day_of_entry] )
VAR pre_max_date =
    MAXX ( tmp1, [Day_of_entry] )
VAR val_cur_month =
    CALCULATE (
        MAX ( 'Power_data'[KWH entry] ),
        'Power_data'[Month_of_entry] = cur_month,
        'Power_data'[Day_of_entry] = cur_max_date,
        'Power_data'[Client_ID] = cur_id
    )
VAR val_pre_month =
    CALCULATE (
        MAX ( 'Power_data'[KWH entry] ),
        'Power_data'[Month_of_entry] = cur_month - 1,
        'Power_data'[Day_of_entry] = pre_max_date,
        'Power_data'[Client_ID] = cur_id
    )
VAR val = val_cur_month - val_pre_month
RETURN
    val

2. Agregue una segmentación de datos con 'Power_data'[Month_of_entry], agregue una tabla visual con 'Power_data'[Client_ID] y mida

vbinbinyumsft_0-1672212724547.png

Consulte el archivo .pbix adjunto.

Saludos
Apoyo de la comunidad Team_Binbin Yu
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Syndicate_Admin
Administrator
Administrator

Hola

Comparta datos en un formato que se puede pegar en un archivo de MS Excel.

Hola

A continuación encontrará una muestra de datos:


Client_IDDay_of_entryMonth_of_entryEntrada KWHRank_monthRank_day meses
CL12022.11.0511011
CL12022.11.101120412
CL12022.11.151132513
CL12022.11.201148814
CL12022.11.251170815
CL12022.11.301199216
CL12022.12.0512114421
CL12022.12.1012130822
CL12022.12.3112143423
CL22022.11.0111011
CL22022.11.091127412
CL22022.11.171169313
CL22022.11.2511112414
CL22022.12.0312148521
CL22022.12.1112193322
CL22022.12.1912229323
CL22022.12.2712270624
CL22023.01.041292931
CL22023.01.121334732

Hola

Puede descargar mi archivo PBI desde aquí.

Espero que esto ayude.

Untitled.png

Hola

Gracias, pero solo puedo trabajar con mi medida, ya que los datos de muestra que di son muy simples, libres de entradas defectuosas y factores con los que necesito calcular.

En algunos casos tengo que ignorar el último valor, y calcular con el que es anterior a eso, etc.

¿Hay alguna manera de adaptar mi medida o simplificarla de una manera, para que haga lo mismo que la tuya?
Intentaré adaptar algunos de sus DAX como el mes anterior y lo sacaré. Pero a primera vista, es demasiado simple trabajar con mi conjunto de datos.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Prices go up Feb. 11th.

Jan25PBI_Carousel

Power BI Monthly Update - January 2025

Check out the January 2025 Power BI update to learn about new features in Reporting, Modeling, and Data Connectivity.

Jan NL Carousel

Fabric Community Update - January 2025

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

Top Solution Authors