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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Extraer valores de fin de año de una regresión lineal.

Querida comunidad,

Calculo una regresión lineal de una medida ( CumulativePATT_ID ) utilizando los valores de un cierto número de meses anteriores de una tabla de calendario 'CALENDAR'[Year_Month] (Year_Month = date('CALENDAR'[Date]),MONTH('CALENDAR'[Date]),1)))

LoicIDCC_1-1626117392327.png

Quiero crear una nueva tabla por año, que extraiga el valor de fin de año de la regresión (con la misma pendiente e intersección).

¿Cómo lo hago?

¡gracias!

LoicIDCC_0-1626117375077.png

Regresión por año y mes = VAR conocido = FILTRO ( SELECTCOLUMNS ( FILTER(ALL('CALENDAR'[Year_Month]),'CALENDAR'[Year_Month]<=TODAY()), "Known[X]", 'CALENDAR'[Year_Month], "Known[Y]", [CumulativePATT_ID] ), AND ( NOT ( ISBLANK ( Known[X] ) ), NOT ( ISBLANK ( Known[Y] ) ) ) ) VAR Count_Items = COUNTROWS ( Known ) VAR Sum_X = SUMX ( Known, Known[X] ) VAR Sum_X2 = SUMX ( Known, Known[X] ^ 2 ) VAR Sum_Y = SUMX ( Known , Known[Y] ) VAR Sum_XY = SUMX ( Known, Known[X] * Known[Y] ) VAR Average_X = AVERAGEX ( Known, Known[X] ) VAR Average_Y = AVERAGEX ( Known, Known[Y] ) VAR Slope = DIVIDE ( Count_Items * Sum_XY - Sum_X * Sum_Y, Count_Items * Sum_X2 - Sum_X ^ 2 ) VAR Intercept = Average_Y - Slope * Average_X RETURN SUMX ( DISTINCT ( 'CALENDAR'[Year_Month]) , Interceptar + Pendiente * 'CALENDARIO'[Year_Month] )

1 ACCEPTED SOLUTION

No @LoicIDCC,

Pruebe la siguiente fórmula:

Table = 
ADDCOLUMNS(
    CROSSJOIN(
        DISTINCT('CALENDAR'[Date].[Year]),
        DISTINCT(Data[Category])
    ),
    "Running Total", CALCULATE(
            DISTINCTCOUNT(Data[Unique_ID]),
            FILTER(
                ALL('Data'),
                Data[Category] = EARLIER([Category])
                && 'Data'[Date] <= DATE( EARLIER([Year]), 12, 31 )
            )
        )
)

vkkfmsft_0-1626334906719.png

Si el problema sigue sin resolverse, proporcione información detallada del error o el resultado esperado que espera. Hágamelo saber de inmediato, esperando su respuesta.

Saludos
Winniz

Si esta publicación ayuda, entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

@LoicIDCC Correcto, así que como parte de su regresión lineal conoce la pendiente (m) y la intersección y, ¿correcto? Así que simplemente conecte eso de nuevo en la fórmula para la pendiente. x2 es el número de meses después de su intersección y o cualquier valor y con el que desee comenzar. y2 es su desconocido, pero todo lo demás debe saberse en esa fórmula, ¿correcto?

Syndicate_Admin
Administrator
Administrator

@LoicIDCC Tengo un ejemplo de esto en mi libro, DAX Cookbook. Es la receta 8 en el capítulo 12. Puede obtener el PBIX aquí: gdeckler/DAXCookbook (github.com)

Pero, si conoce la pendiente y la intersección en y, entonces la fórmula es m = (y2 - y1) / (x2 - x1) por lo que querrá resolver esa ecuación para y2, o y2 = m(x2 - x1) + y1. Si usa y1 como su intersección y, x1 sería 0 por lo que y2 = m * x2 + y1.

Lo siento, pero todavía no entiendo.

Aquí está mi archivo con algunos datos ficticios.: Enlace de informe

Necesito el segundo gráfico por año, con el valor EOY para cada año.

No @LoicIDCC,

Pruebe la siguiente fórmula:

Table = 
ADDCOLUMNS(
    CROSSJOIN(
        DISTINCT('CALENDAR'[Date].[Year]),
        DISTINCT(Data[Category])
    ),
    "Running Total", CALCULATE(
            DISTINCTCOUNT(Data[Unique_ID]),
            FILTER(
                ALL('Data'),
                Data[Category] = EARLIER([Category])
                && 'Data'[Date] <= DATE( EARLIER([Year]), 12, 31 )
            )
        )
)

vkkfmsft_0-1626334906719.png

Si el problema sigue sin resolverse, proporcione información detallada del error o el resultado esperado que espera. Hágamelo saber de inmediato, esperando su respuesta.

Saludos
Winniz

Si esta publicación ayuda, entonces por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Gracias por su ejemplo, pero no tengo un problema con la regresión lineal en sí.

Mi regresión lineal se calcula por mes.

Quiero crear una medida por año, es decir, una tabla filtrada de la regresión lineal por mes, con el valor al final de cada año.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

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