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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Obtener los valores repetidos en una tabla, utilizando, si es posible, calculatedtable

Hola a todos.

Tengo la siguiente tabla (Tabla 1):

NombreFecha del pedido DíaMesTienda
Jhon2022/06/0116TELEVISIÓN
Jhon2022/06/0116TELEVISIÓN
Jhon2022/07/0117TELEVISIÓN
Kelly2022/06/0116Teléfono
Kelly2022/06/0156Teléfono
Fred2022/06/0116TELEVISIÓN
Fred2022/06/0116Teléfono
Marcar2022/06/0556TELEVISIÓN
Marcar2022/06/0556Xbox
Jes2022/08/12128TELEVISIÓ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í 😑.

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

@CLQ ,

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:

vyinliwmsft_0-1669887130563.png

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?

Syndicate_Admin
Administrator
Administrator

@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

Helpful resources

Announcements
July 2024 Power BI Update

Power BI Monthly Update - July 2024

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

July Newsletter

Fabric Community Update - July 2024

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

Top Solution Authors