¿Calcular una variable y luego usar ese número como una constante para aplicar a otras filas?

Un usuario Pregunto ✅

Sin casta

Entonces tengo una estructura de datos así:

Nombre | Número

Group1 | 150

Rep1 | 25

Rep2 | 30

Group2 | 126

Rep3 | 40

Rep4 | 20

Estoy tratando de dividir el valor del grupo 1 entre las repeticiones dentro de ese grupo en una medida para obtener

Rep1 | 90

Rep2 | 105

Rep3 | 103

Rep4 | 83

Intenté hacer esto usando una variable en una medida como esta:

Measure = 
var group1total = CALCULATE(VALUES([Number]),[Name]="Group1")
var numberofreps = CALCULATE(COUNTROWS([Name]),Group="Group1")

Return Calculate([Number]+group1total/numberofreps)

Cuando pongo esto en una tabla, calcula el valor que quiero, pero solo en la fila del Grupo1

¿Hay alguna forma de calcular una variable como «group1total / numberofreps» y luego tratar ese número como un contante? para que no se le apliquen filtros en las imágenes?

Hola @Casteless,

Puede intentar utilizar la siguiente fórmula para obtener el valor promedio del grupo actual.

1. Agregue una columna para almacenar el grupo del representante actual y combine estas tablas.

Table = UNION(ADDCOLUMNS(Table1,"Group",if([Name]<>"Group1","Group1",BLANK())),ADDCOLUMNS(Table2,"Group",if([Name]<>"Group2","Group2",BLANK())))

2. Escribe una medida para calcular el promedio del grupo actual.

avg of current group = 
var currGroup= if(LASTNONBLANK(Table[Group],[Group]) <> BLANK(),LASTNONBLANK(Table[Group],[Group]),LASTNONBLANK(Table[Name],[Name]))
var total= LOOKUPVALUE(Table[Number],Table[Name],currGroup)
var countOfRep= COUNTROWS(FILTER(ALL(Table),Table[Group]=currGroup))
return
total/countOfRep

Saludos,

Xiaoxin Sheng

Hola @Casteless,

Puede intentar utilizar la siguiente fórmula para obtener el valor promedio del grupo actual.

1. Agregue una columna para almacenar el grupo del representante actual y combine estas tablas.

Table = UNION(ADDCOLUMNS(Table1,"Group",if([Name]<>"Group1","Group1",BLANK())),ADDCOLUMNS(Table2,"Group",if([Name]<>"Group2","Group2",BLANK())))

2. Escribe una medida para calcular el promedio del grupo actual.

avg of current group = 
var currGroup= if(LASTNONBLANK(Table[Group],[Group]) <> BLANK(),LASTNONBLANK(Table[Group],[Group]),LASTNONBLANK(Table[Name],[Name]))
var total= LOOKUPVALUE(Table[Number],Table[Name],currGroup)
var countOfRep= COUNTROWS(FILTER(ALL(Table),Table[Group]=currGroup))
return
total/countOfRep

Saludos,

Xiaoxin Sheng

¿Están estos datos en 1 tabla o 2?

Sin casta

En respuesta a MattAllington

Es en dos

uno define representantes / grupos por grupo

Grupo1: Rep1, Rep2, Grupo1

Grupo2: Rep3, Rep4, Grupo2

el segundo enumera los grupos y representantes -juntos-

Nombre / Numero

Grupo 1/##

Rep1 / ##

Rep2 / ##

Grupo 2/##

Rep3 / ##

Rep4 / ##

Lo hice funcionar creando otro conjunto de tablas, pero preferiría no tener que hacer eso para cada métrica que uso con esta configuración de datos, así que si hay una manera de hacerlo en una medida, sería increíble .

salud,

Baskar

En respuesta a Sin casta

¿Puede compartir alguna estructura de tabla de muestra? nos ayudará a despejar

Deja un comentario

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