Hola a todos.
Tengo la siguiente tabla (Tabla 1):
Nombre | Fecha del pedido | Día | Mes | Tienda |
Jhon | 2022/06/01 | 1 | 6 | TELEVISIÓN |
Jhon | 2022/06/01 | 1 | 6 | TELEVISIÓN |
Jhon | 2022/07/01 | 1 | 7 | TELEVISIÓN |
Kelly | 2022/06/01 | 1 | 6 | Teléfono |
Kelly | 2022/06/01 | 5 | 6 | Teléfono |
Fred | 2022/06/01 | 1 | 6 | TELEVISIÓN |
Fred | 2022/06/01 | 1 | 6 | Teléfono |
Marcar | 2022/06/05 | 5 | 6 | TELEVISIÓN |
Marcar | 2022/06/05 | 5 | 6 | Xbox |
Jes | 2022/08/12 | 12 | 8 | TELEVISIÓN |
Entonces, en una variable usando calculatedtable, busco los valores (Nombres) a guardar, que he comprado dos o más veces en Store=TV o Xbox, en el mes seis. El resultado esperado, tomando el cuadro anterior, sería:
Jhon |
Marcar |
Lo que intenté, creando otra tabla y tratando de "simular" los valores que traería dicha variable, fue:
CALCULATEDTABLE(VALUES(Table1[Name]),
NOT(Table1[Store]) = "Phone",
Table1[Month]=6,
FILTER(ALL(Table1), CALCULATE(COUNTROWS(Table1), ALL(Table1), VALUES(Table1[Name]))>=2)
Pero sin resultado (me siguió trayendo todos los valores del mes 6, independientemente del número de ocurrencias de "Nombre"). Si alguien sabe cómo hacerlo, se lo agradecería 🙂
PD: para aquellos que quieran saber el contexto de esto:
Mi idea es, por ejemplo, en variable1, obtener todos los nombres que se repitieron dos o más veces en el mes seis.
Luego, en variable2, obtenga todos los valores que aparecen en el mes 7, independientemente del número de veces que aparezcan.
El siguiente paso es, utilizando INTERCEPT, obtener el número de usuarios que aparecen en variable2 que han aparecido en variable1.
Obviamente tengo que crear más filas para hacer esto, pero primero quiero que el primer paso funcione, que es el que no está funcionando para mí 😑.
Puedes probar este método:
Result =
VAR _table =
FILTER (
'Table',
AND ( 'Table'[Month] = 6, 'Table'[Store] = "TV" || 'Table'[Store] = "Xbox" )
)
VAR _table1 =
GROUPBY ( _table, [Name], "num", COUNTX ( CURRENTGROUP (), [Name] ) )
RETURN
SUMMARIZE ( FILTER ( _table1, [num] > 1 ), [Name] )
El resultado es:
Espero que esto te ayude.
Aquí está mi archivo PBIX.
Saludos
Equipo de apoyo comunitario _Yinliw
Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
¡Gracias, sus obras! Una última pregunta: en __table1:
¿Qué haces exactamente? ¿Cuenta todas las filas que currentgroup() devuelve del conjunto groupby? Para entonces, en el siguiente paso, ¿puedo filtrarlo por la cantidad que quiero? ¿O me equivoco?
@CLQ Probar:
Table =
VAR __Table = GROUBY(FILTER('Table',[Store] <> "Phone" && [Month] = 6),[Name],"__Count",COUNTX(CURRENTGROUP(),[Order Date]))
VAR __Result = FILTER(__Table,[__Count] > 1)
RETURN
__Result