Vandergledison
Hola tios,
tengo una tabla de búsqueda a continuación relacionada con la tabla de datos de ventas netas:
Proyecto No. | Nombre del producto |
1 | A |
2 | B |
3 | C |
4 | D |
5 | mi |
6 | F |
7 | GRAMO |
8 | H |
9 | I |
10 | J |
Datos de ventas netas:
No de proyecto Año Ventas netas
1 | 2020 | 2,63 |
1 | 2021 | 4.5 |
1 | 2022 | 5.27 |
1 | 2023 | 6.16 |
1 | 2024 | 6,77 |
1 | 2025 | 6,77 |
1 | 2026 | 6,77 |
1 | 2027 | 6,77 |
1 | 2028 | 6,77 |
1 | 2029 | 6,77 |
2 | 2020 | 1,49 |
2 | 2021 | 3,56 |
2 | 2022 | 6.14 |
2 | 2023 | 6,37 |
2 | 2024 | 6,62 |
2 | 2025 | 6,78 |
2 | 2026 | 6,95 |
2 | 2027 | 7.12 |
2 | 2028 | 7.3 |
3 | 2023 | 6 |
3 | 2024 | 10,8 |
3 | 2025 | 10,8 |
3 | 2026 | 10,8 |
3 | 2027 | 10,8 |
3 | 2028 | 10,8 |
3 | 2029 | 10,8 |
3 | 2030 | 10,8 |
3 | 2031 | 10,8 |
3 | 2032 | 10,8 |
4 | 2021 | 0,45 |
4 | 2022 | 1,35 |
4 | 2023 | 2,25 |
4 | 2024 | 2,32 |
4 | 2025 | 2,39 |
4 | 2026 | 2,46 |
4 | 2027 | 2.53 |
4 | 2028 | 2,61 |
4 | 2029 | 2,69 |
4 | 2030 | 2,77 |
5 | 2022 | 0,45 |
5 | 2023 | 1.12 |
5 | 2024 | 2,25 |
5 | 2025 | 2,32 |
5 | 2026 | 2,39 |
5 | 2027 | 2,46 |
5 | 2028 | 2.53 |
5 | 2029 | 2,61 |
5 | 2030 | 2,69 |
5 | 2031 | 2,77 |
6 | 2023 | 0 |
6 | 2024 | 0 |
6 | 2025 | 1 |
6 | 2026 | 1 |
6 | 2027 | 1 |
6 | 2028 | 1 |
6 | 2029 | 1 |
6 | 2030 | 1 |
6 | 2031 | 1 |
6 | 2032 | 1 |
7 | 2020 | 0,64 |
7 | 2021 | 1,35 |
7 | 2022 | 1,64 |
7 | 2023 | 2,06 |
7 | 2024 | 2,76 |
7 | 2025 | 2,89 |
7 | 2026 | 3,02 |
7 | 2027 | 3,16 |
7 | 2028 | 3.32 |
7 | 2029 | 3,48 |
8 | 2020 | 1,26 |
8 | 2021 | 2,7 |
8 | 2022 | 2,76 |
8 | 2023 | 2,81 |
8 | 2024 | 2,87 |
8 | 2025 | 2,93 |
8 | 2026 | 2,99 |
8 | 2027 | 3,05 |
8 | 2028 | 3.11 |
8 | 2029 | 3,17 |
9 | 2021 | -2,4 |
9 | 2022 | 3.9 |
9 | 2023 | 6,35 |
9 | 2024 | 7.51 |
9 | 2025 | 10.22 |
9 | 2026 | 11,92 |
9 | 2027 | 15.22 |
9 | 2028 | 14,4 |
9 | 2029 | 13,61 |
9 | 2030 | 12,77 |
10 | 2020 | 6.58 |
10 | 2021 | 7.58 |
10 | 2022 | 7.1 |
10 | 2023 | 7.1 |
10 | 2024 | 7.1 |
10 | 2025 | 7.1 |
10 | 2026 | 7.1 |
10 | 2027 | 7.1 |
Me gustaría construir una tabla como la de abajo. La columna de Ventas Netas muestra las Ventas Totales del Producto A con respecto a todos sus años de ventas (datos largos arriba).
Usé la siguiente medida para obtener el percentil 0.8:
Proyecto No. | Nombre del producto | Las ventas netas | Ventas netas percentil 0.8 |
1 | A | 59,18 | 6,77 |
2 | B | 52,33 | 7.018 |
3 | C | 103,2 | 10,8 |
4 | D | 21,82 | 2.626 |
5 | mi | 21,59 | 2.626 |
6 | F | 8 | 1 |
7 | GRAMO | 24,32 | 3.192 |
8 | H | 27,65 | 3.062 |
9 | I | 93,5 | 13.768 |
10 | J | 56,76 | 7.1 |
El problema es que me gustaría tener el percentil de las filas visibles de esta Tabla basado en el total que se muestra en la columna de Ventas netas. ¿Algunas ideas? muchas gracias
Datos de Excel
Archivo pbix
zaza
En respuesta a Vandergledison
Erm … el filtro de spam marcó mi mensaje como spam, intentándolo de nuevo, ¡espero que funcione!
Crea una TABLA calculada:
Table =
SUMMARIZE (
'data for power BI porcentile',
'data for power BI porcentile'[Project No.],
"Net Sales", SUM ( 'data for power BI porcentile'[Net Sales] )
)
Luego agregue una columna calculada:
Net Sales % =
DIVIDE (
'Table'[Net Sales],
CALCULATE (
SUM ( 'Table'[Net Sales] ),
ALL ( 'Table' )
),
0
)
Finalmente crea la medida:
80th Percentile =
IF (
ISBLANK ( MAX( 'Project Nr'[Project No.] ) ),
BLANK(),
CALCULATE (
PERCENTILE.INC ( 'Table'[Net Sales %], 0.8 ),
ALL ( 'Table' )
)
)
Conéctelo en la vista de relación para obtener el nombre del producto y listo:
Archivo aquí: .pbix
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Perdón por haberme perdido explicar NetSales1 =
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Encuentre el pbix adjunto.
https://we.tl/t-gP09fMN6WE
Esto ayuda a filtrar y clasificar sus productos.
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Aquí tienes. Espero que este sea su requisito.
Encuentre el archivo pbix adjunto.
https://we.tl/t-SZhdC34XRf
Tu no necesita la tabla recién calculada. Hay una función en DAX para el cálculo de% de las expresiones.
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
harshnathani
En respuesta a Vandergledison
Estimado @Vandergledison,
La idea no es confundirte. Estamos aquí para ayudarte.
Tu requisito era
1. Calcule el% ile basado en Ventas Totales (o% de Venta) para todos los proyectos.
2. Según el% ile calculado, deseaba clasificarlos, es decir, si el% ile es el que deseaba. rango 5 (superior a 80p), 4 (superior a 60p), 3 (superior a 40p), 2 (superior a 20p) y 1 para el resto.
3. También quería que la fórmula calcule los nuevos% archivos de forma dinámica, es decir, si se seleccionan 50 proyectos, solo debería calcular los% archivos de esos 50 productos y luego clasificarlos según los mismos criterios.
Espero que mi comprensión sea correcta, ya que su requisito ha cambiado cada vez que proporcionamos una solución.
1. Confusión en PERCENTILE.EXC y PERCENTILEX.EXC
Anteriormente estábamos calculando% iles en función de una tabla de resumen que tenía una fila para Percentile.EXC. Esto mismo se puede calcular usando PercentilEX.EX donde puede pasar una medida en lugar de una Columna. Vea lo que hace la fórmula.
PERCENTILE.EXC
Devuelve el percentil k-ésimo (exclusivo) de valores en una columna.
Sintaxis
DESCRIPCIÓN DE LOS ATRIBUTOS DE LOS PARÁMETROS
Columna |
Una columna que contiene los valores. |
|
K |
Valor percentil deseado en el intervalo [1/(n+1),1-1/(n+1)], donde n es un número de puntos de datos válidos. |
Valores devueltos ESCALAR Un solo variante valor.
PERCENTILEX.EXC
Sintaxis
DESCRIPCIÓN DE LOS ATRIBUTOS DE LOS PARÁMETROS
Tabla ITERADOR |
Tabla sobre la que se evaluará la Expresión. |
|
Expresión CONTEXTO DE FILA |
Expresión a evaluar para cada fila de la tabla. |
|
K |
Valor percentil deseado en el intervalo [1/(n+1),1-1/(n+1)], donde n es un número de puntos de datos válidos. |
Valores devueltos ESCALAR Un solo variante valor.
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Encuentre 2 archivos adjuntos.
v4 está usando relacionados y según su agrupación.
https://we.tl/t-hHaqM7OiLN
v2 está creando clústeres basados en las ventas totales.
https://we.tl/t-MMXNCYyM7M
Espero que resuelva el problema.
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
zaza
Puede haber una mejor manera de hacer esto, pero esto debería funcionar:
Measure =
VAR __totals =
CALCULATE (
SUM ( 'data for power BI porcentile'[Net Sales] ),
ALL ( 'Project Nr' )
)
RETURN
DIVIDE ( SUM ( 'data for power BI porcentile'[Net Sales] ), __totals, 0 )
Vandergledison
En respuesta a zaza
Hola,
El valor percentil que tiene por producto se refiere a los 5 o más años que se cuentan para cada producto. lo que necesito es el percentil basado en las ventas netas totales como se presenta en la tabla visual.
Gracias
zaza
En respuesta a Vandergledison
Erm … el filtro de spam marcó mi mensaje como spam, intentándolo de nuevo, ¡espero que funcione!
Crea una TABLA calculada:
Table =
SUMMARIZE (
'data for power BI porcentile',
'data for power BI porcentile'[Project No.],
"Net Sales", SUM ( 'data for power BI porcentile'[Net Sales] )
)
Luego agregue una columna calculada:
Net Sales % =
DIVIDE (
'Table'[Net Sales],
CALCULATE (
SUM ( 'Table'[Net Sales] ),
ALL ( 'Table' )
),
0
)
Finalmente crea la medida:
80th Percentile =
IF (
ISBLANK ( MAX( 'Project Nr'[Project No.] ) ),
BLANK(),
CALCULATE (
PERCENTILE.INC ( 'Table'[Net Sales %], 0.8 ),
ALL ( 'Table' )
)
)
Conéctelo en la vista de relación para obtener el nombre del producto y listo:
Archivo aquí: .pbix
Vandergledison
En respuesta a zaza
Muchas gracias por analizar cada DAX.
funcionó al 100%
solo para que yo entienda los principios. ¿Por qué tengo que crear una tabla y no medidas individuales asociadas a las tablas ya dadas?
otra cosa, ya tengo en mi tabla de datos original las Ventas Netas para cada producto. si simplemente agrego la columna de Ventas netas al lado de cada Producto nr. Tendría automáticamente la columna Suma de esta columna de ventas netas para cada producto. ¿Por qué tengo que crear uno nuevo («Ventas netas») en la nueva tabla ?. Mi mayor problema en este momento es que cuando creo una medida, a veces me permite llamar a otras medidas, y otras veces encuentro las columnas que ya tengo disponibles.
Ahora, estoy tratando de entender lo que hizo y hacer lo mismo con otras medidas.
Estoy intentando ahora crear una nueva medida usando «si». Quiero usar la tabla de percentiles y asignar un rango al% de ventas netas, como «si el% de ventas netas es mayor que el percentil 80%, el rango es 5». sin embargo, cuando creo una nueva medida o incluso continúo el DAX en su tabla, cuando agrego «si», abre todas las medidas que puedo seleccionar y no las columnas que necesito. Todavía no entiendo por qué no me muestra todas las columnas o medidas posibles para elegir.
muchas gracias
Vandergledison
zaza
En respuesta a Vandergledison
@Vandergledison
La razón por la que tenemos que crear una tabla separada es porque la función PERCENTIL solo toma como referencia una columna. Por lo tanto, debe tener la columna exacta de valores que desea almacenar primero en algún lugar. Puede haber una forma de hacer esto solo en una medida, pero tendría que hacerlo sin usar la función PERCENTILE.
Para responder a su segunda pregunta, en su tabla original tiene más filas múltiples de ventas netas para cada categoría. En la tabla creada solo tienes una fila para cada uno y eso es lo que queremos.
Responder a su tercera pregunta es más fundamental y así es como funcionan las medidas y las columnas calculadas. Es posible que desee ver algunos videos más detallados sobre esto, pero en esencia es esto:
No puedes decir «SI esta columna es mayor al 50%, entonces dame SÍ». ¿Qué es la columna? ¿Cómo puede una columna ser mayor al 50%? Necesita decir SI la SUMA o PROMEDIO de esta columna es mayor al 50%, entonces déme SÍ.
Entonces, esencialmente, debe envolver sus columnas en una de las funciones de agregación MIN / MAX / SUM / AVG, etc.
measure =
IF (
AVG ( 'Table[Column] ) > 0.5,
"YES",
"NO"
)
Vandergledison
En respuesta a zaza
Hola,
Me di cuenta de que el cálculo del percentil no cambia cuando aplico un filtro al proyecto Nr.
el percentil del 80% debe cambiar de acuerdo con el% de ventas netas que se muestra en la tabla, pero se mantienen
constante, siendo calculado de todos los proyectos. Debería cambiar a medida que las ventas netas y el% NEt de ventas son cambiando.
Gracias.
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Le sugiero que mire el video a continuación para Percentiles.
¿Por qué su valor no cambia?
A continuación se muestra una imagen que muestra los diferentes percentiles para el% total. Esto funciona perfectamente en una tarjeta visual. Pero, tan pronto como lo arrastre a la tabla, obtendrá un error. Esto se explica en el video de arriba.
El contexto de fila actual cuando se arrastra a la tabla es Proyecto No. Ahora solo hay un valor de% total para A y, por lo tanto, cualquier valor por debajo o por encima de esto no cambiará y le dará el mismo valor.
Es necesario pensar en términos de contexto de fila y no de celdas en Power BI.
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
Vandergledison
En respuesta a harshnathani
gracias Harsh,
¿Sería tan amable de enviarme el archivo pbix? cuando uso la tarjeta para mostrar el percentil del 80%, obtengo números de diferencia …
muchas gracias
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison
Busque el archivo pbix.
https://we.tl/t-erx0mbD03j
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
Vandergledison
En respuesta a harshnathani
Gracias duras,
Todavía necesito profundizar en el video y estudiar todas las medidas.
solo una pregunta rápida, al final tendré un Filtro donde seleccionaré los proyectos que quiero visualizar.
¿Necesito crear una relación con la tabla medida o no es necesario? Me di cuenta de que si no tengo la relación, no se filtrará. sin embargo, pensé que la tabla de medidas calcula los valores en función de mi tabla de datos principal, por lo tanto, esa tabla tiene una relación con los proyectos Nr. tabla y pensé que se filtraría de todos modos.
Gracias
Vandergledison
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Encuentre el pbix adjunto.
https://we.tl/t-gP09fMN6WE
Esto ayuda a filtrar y clasificar sus productos.
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
Vandergledison
En respuesta a harshnathani
Duro, has dado en el clavo.
ahora solo tendré que profundizar y comprender las medidas que ha escrito.
gracias de nuevo por el apoyo
VG
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Siempre es un placer ayudarte.
Y en el proceso, también aclaré algunos de mis conceptos y encontré algunas cosas interesantes en Power BI.
Como ejemplo al declarar variables var __.80 le dará un error, mientras que var __80 no lo hará.
Gracias por su paciencia.
Saludos,
Áspero Nathani
Vandergledison
En respuesta a harshnathani
Amigo mío, acabo de notar que si selecciono solo algunos de los productos en el filtro, la clasificación no cambiará.
la clasificación de cada producto debe cambiar cuando cambia el filtro. si se seleccionan todos, funcionará, pero si solo se seleccionan 5 proyectos, por ejemplo, la clasificación es la misma y se mantiene igual independientemente de lo que muestre el filtro …
¿alguna idea?
Gracias
harshnathani
En respuesta a Vandergledison
Hola,
¿Puede compartir cuáles son los criterios para la clasificación?
En su publicación anterior, mencionó que desea clasificar 5 en caso de que se encuentre entre el percentil .80 y el percentil 60.
Por favor, comparta todo el caso comercial para que pueda ayudar a resolver el problema.
Saludos,
Duro
Vandergledison
En respuesta a harshnathani
Hola,
Me gustaría clasificar 5 (más de 80p), 4 (más de 60p), 3 (más de 40p), 2 (más de 20p) y 1 para el resto.
La idea es que si tengo 100 productos, tendría una clasificación determinada, al cambiar el filtro a 50 productos (por ejemplo), debería mostrar la nueva clasificación basada solo en estos 50 proyectos seleccionados.
Espero que sea más claro ahora.
el enlace con el archivo a continuación
muchas gracias
Informe de priorización
harshnathani
En respuesta a Vandergledison
Hola @Vandergledison,
Aquí tienes. Espero que este sea su requisito.
Encuentre el archivo pbix adjunto.
https://we.tl/t-SZhdC34XRf
No necesita la tabla recién calculada. Hay una función en DAX para el cálculo de% de las expresiones.
Saludos,
Áspero Nathani
¿Respondí tu pregunta? ¡Marque mi publicación como una solución! Apreciar con un Kudos !!
Vandergledison
En respuesta a harshnathani
Hola Harsh,
que quieres decir con «Hay una función en DAX para el cálculo de% de las expresiones.«? Pensé que teníamos que crear una tabla porque el DAx requería columnas … hmm, estoy más confundido ahora.
Mira, exporté los datos de la primera tabla visual con algún proyecto seleccionado y calculé el percentilxc en Excel y no encaja.
Seguiré comprobando.
muchas gracias
harshnathani
En respuesta a Vandergledison
Estimado @Vandergledison,
La idea no es confundirte. Estamos aquí para ayudarte.
Tu requisito era
1. Calcule el% ile basado en Ventas Totales (o% de Venta) para todos los proyectos.
2. Según el% ile calculado, deseaba clasificarlos, es decir, si el% ile es el que deseaba. rango 5 (superior a 80p), 4 (superior a 60p), 3 (superior a 40p), 2 (superior a 20p) y 1 para el resto.
3. También quería que la fórmula calcule los nuevos% archivos de forma dinámica, es decir, si se seleccionan 50 proyectos, solo debería calcular los% archivos de esos 50 productos y luego clasificarlos según los mismos criterios.
Espero que mi comprensión sea correcta, ya que su requisito ha cambiado cada vez que proporcionamos una solución.
1. Confusión en PERCENTILE.EXC y PERCENTILEX.EXC
Anteriormente estábamos calculando% iles en función de una tabla de resumen que tenía una fila para Percentile.EXC. Esto mismo se puede calcular usando PercentilEX.EX donde puede pasar una medida en lugar de una Columna. Vea lo que hace la fórmula.
PERCENTILE.EXC
Devuelve el percentil k-ésimo (exclusivo) de valores en una columna.
Sintaxis
DESCRIPCIÓN DE LOS ATRIBUTOS DE LOS PARÁMETROS
Columna |
Una columna que contiene los valores. |
|
K |
Valor percentil deseado en el intervalo [1/(n+1),1-1/(n+1)], donde n es un número de puntos de datos válidos. |
Valores devueltos ESCALAR Un solo variante valor.
PERCENTILEX.EXC
Sintaxis
DESCRIPCIÓN DE LOS ATRIBUTOS DE LOS PARÁMETROS
Tabla ITERADOR |
Tabla sobre la que se evaluará la Expresión. |
|
Expresión CONTEXTO DE FILA |
Expresión a evaluar para cada fila de la tabla. |
|
K |
Valor percentil deseado en el intervalo [1/(n+1),1-1/(n+1)], donde n es un número de puntos de datos válidos. |
Regreso valores ESCALAR Un solo variante valor.
Vandergledison
En respuesta a harshnathani
Duro, solo una pregunta rápida:
en los 2 compases a continuación, ¿hizo el primero para responder al filtro (proyecto No)?
Estoy un poco confundido aquí, solo quiero entender la mecánica.
Gracias