Informe de PBI de la Premier League Fantasy Football League

Un usuario Pregunto ✅

DSM2304

Soy nuevo en esta comunidad y en el uso de PBI. He creado un informe para nuestro trabajo de la liga Fantasy Football (Soccer) para la temporada 20/21 de la Premier League. A continuación se muestran ejemplos de mi informe. Si bien estoy satisfecho con los resultados, encuentro que el lado de la generación de datos es un poco más complicado de lo que me gustaría.

Para cada semana de la competencia, tengo que crear 3 nuevas columnas en el archivo de Excel utilizado para el informe, puntos de las semanas, rango de las semanas en la liga y cambio de la semana anterior. Luego tengo que actualizar el informe cada semana y usar los nuevos datos en muchas de las visualizaciones, ¿hay alguna forma de simplificar las cosas para hacer uso de los datos más actualizados?

Para la visualización de puntos semanales por gerente, ¿cómo puedo hacer que se ordene por los datos de las semanas más recientes? En la actualidad, parece estar ordenando por los datos de las primeras semanas, ya que este es el primer campo de datos utilizado en la visualización.

FPL3.pngFPL2.pngFPL1.pngFPL4.png

MFelix

En respuesta a DSM2304

Hola @ DSM2304,

No tengo mucha experiencia con gráficos de dispersión, pero déjame echar un vistazo a una solución.

MFelix

En respuesta a DSM2304

Hola @ DSM2304,

Esto tiene que ver con el contexto de la medida, cambie sus Puntos en la semana a

Points in week =
CALCULATE (
    SUM ( Points[Points] );
    FILTER (
        ALLSELECTED ( Weeks[Week]; Weeks[Week_Value] );
        Weeks[Week] = MAX ( Weeks[Week] )
    )
)
    - CALCULATE (
        SUM ( Points[Points] );
        FILTER (
            ALLSELECTED ( Weeks[Week]; Weeks[Week_Value] );
            Weeks[Week]
                = MAX ( Weeks[Week] ) - 1
        )
    )

Tenga en cuenta que este cambio implica que si solo selecciona una semana en su cortadora, obtendrá el total de puntos para esa semana. Es mejor usar una cortadora que sea menor o igual. Haciendo eso, entonces también puede tener los puntos semanales relacionados con la cortadora.

Archivo PBIX adjunto.

DSM2304

Hola miguel

Gracias por su rápida respuesta a mi publicación, no pude ver cómo cargar un archivo en esta comunidad, así que adjunto una imagen del archivo de Excel que estoy usando con notas mostradas, espero que sea suficiente para explicar cómo estoy trabajando. Tengo mis datos en una tabla en una hoja de cálculo de Excel.

FPL5.png

MFelix

En respuesta a DSM2304

Hola @ DSM2304,

Aquí hay un pequeño cambio en su configuración, básicamente tengo 3 tablas:

  • Puntos
    • Equipo
    • Semana
    • Puntos (total acumulado por semana)
  • Equipos (detalles sobre la información de los equipos que he agregado y la identificación que se relaciona con los puntos)
    • Departamento
    • Gerente
    • Nombre
    • Sitio
    • Equipo
  • Semanas
    • Una tabla de dimensiones para filtrar y facilitar el cálculo sin los valores semanales

Como pueden ver, no tengo otras grandes transformaciones.

Luego agregó las siguientes medidas:

Puntos

Current points =
CALCULATE (
    SUM ( Points[Points] );
    FILTER ( Weeks; Weeks[Week] = MAX ( Weeks[Week] ) )
)
Points in week =
SUM ( Points[Points] )
    - CALCULATE (
        SUM ( Points[Points] );
        FILTER ( ALL ( Weeks[Week] ); Weeks[Week] = SELECTEDVALUE ( Weeks[Week] ) - 1 )
    )

Clasificaciones

Rank In Week = RANKX(ALLSELECTED(Teams[Name]);CALCULATE([Points in week]))

Total Rank = RANKX(ALLSELECTED(Teams[Name]);CALCULATE([Current points]))

Total Rank previous week =
RANKX (
    ALLSELECTED ( Teams[Name] );
    CALCULATE (
        [Current points];
        FILTER ( ALL ( Weeks[Week] ); Weeks[Week] = MAX ( Weeks[Week] ) - 1 )
    )
)

Rank Variation = [Total Rank previous week] - [Total Rank]

Títulos

Title = "Overal Points (Week " & MAX(Points[Week])&")"

Title week = "Total Points per Team (Week " & MAX(Points[Week]) &")"

Ahora solo configure sus visualizaciones:

Verifique el archivo PBIX adjunto.

Este es solo un ejemplo y se pueden proporcionar interacciones adicionales.

DSM2304

En respuesta a MFelix

Hola felix

Realmente aprecio que se haya tomado el tiempo para explicar las cosas y dar un ejemplo. Todo se ve bien y es mucho más elegante que mi enfoque original.

He echado un vistazo al archivo de ejemplo y tengo una pregunta sobre cómo crear el gráfico de dispersión. Actualmente, reemplazo el campo usado para el eje vertical una vez a la semana, usando los puntos de las semanas actuales; el eje horizontal usa los puntos totales para que eso no cambie. Tuve una prueba rápida pero no pude averiguar qué campo usar para el eje vertical. ¿Existe alguna forma de tener un campo que calcule los puntos de las últimas semanas?

FPL2.png

MFelix

En respuesta a DSM2304

Hola @ DSM2304,

No tengo mucha experiencia con gráficos de dispersión, pero déjame echar un vistazo a una solución.

DSM2304

En respuesta a MFelix

Hola miguel

He jugado con visualizaciones en el archivo de muestra que proporcionaste, para el gráfico de dispersión estoy cerca pero no del todo. Creo que lo que se necesita es un cálculo para determinar los puntos ganados para cada equipo durante la semana más reciente, esto se trazaría en el eje Y; en el ejemplo ilustrado, los puntos por semana que se usan en el eje Y son una cifra mucho más alta. que el total de puntos hasta la fecha en el eje X, los valores del Eje X son verdaderos. El resultado está muy cerca de lo que había logrado con un enfoque menos elegante y más laborioso.

En la actualidad, los valores del eje Y son puntos acumulativos en total en lugar de los puntos de la semana más reciente, que es lo que haría que el gráfico de dispersión sea exactamente lo que estoy esperando.

FPL6.png

MFelix

En respuesta a DSM2304

Hola @ DSM2304,

Esto tiene que ver con el contexto de la medida, cambie sus Puntos en la semana a

Points in week =
CALCULATE (
    SUM ( Points[Points] );
    FILTER (
        ALLSELECTED ( Weeks[Week]; Weeks[Week_Value] );
        Weeks[Week] = MAX ( Weeks[Week] )
    )
)
    - CALCULATE (
        SUM ( Points[Points] );
        FILTER (
            ALLSELECTED ( Weeks[Week]; Weeks[Week_Value] );
            Weeks[Week]
                = MAX ( Weeks[Week] ) - 1
        )
    )

Tenga en cuenta que este cambio implica que si solo selecciona una semana en su cortadora, obtendrá el total de puntos para esa semana. Es mejor usar una cortadora que sea menor o igual. Haciendo eso, entonces también puede tener los puntos semanales relacionados con la cortadora.

Archivo PBIX adjunto.

DSM2304

En respuesta a MFelix

Perfecto, muchas gracias por compartir tu conocimiento y experiencia.

MFelix

Hola @ DSM2304,

Creo que no es necesario tener más información que la información del equipo / jugador, la semana y los puntos de la semana.

Usando medidas o columnas calculadas, puede crear las clasificaciones y hacer las comparaciones con las semanas anteriores, y también hacer el cálculo total para YTD también con las clasificaciones y los valores.

Si puede proporcionar una muestra de datos y las tablas que tiene en su modelo. También puede proporcionar las columnas con los rangos y cambios de la semana anterior para que pueda comparar los cálculos que hago con el resultado final.

Puede utilizar un enlace onedrive, google drive, we transfer o similar para cargar sus archivos.

Si la información es confidencial, compártala a través de un mensaje privado.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *