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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Syndicate_Admin
Administrator
Administrator

Ayuda con el análisis de cohortes - Por semana

Me pregunto si alguien puede ayudar con este problema - He estado tratando de resolverlo durante días sin progreso. Tengo una tabla de datos similar a esta:

Fecha de servicioFin de semanaID de clienteServicio
1/1/20211/3/2021123Guardería
1/8/20211/10/2021123Embarque
1/14/20211/17/2021123Guardería
1/1/20211/3/2021124Guardería
1/15/20211/17/2021124Guardería
1/1/20211/3/2021125Embarque
1/1/20211/3/2021126Embarque
1/8/20211/10/2021126Guardería
1/13/20211/17/2021126Guardería
1/2/20211/3/2021127Embarque
1/5/20211/10/2021127Guardería
1/1/20211/3/2021128Embarque
1/6/20211/10/2021128Embarque
1/2/20211/3/2021129Guardería
1/8/20211/10/2021130Guardería
1/15/20211/17/2021130Guardería
1/1/20211/3/2021131Guardería
1/9/20311/10/2021131Guardería
1/15/20211/17/2021131Guardería

Básicamente, estoy buscando hacer un análisis de cohortes por semana, mostrando el número total de usuarios que visitaron durante la semana terminando 1/3/21, y cuántos de esos usuarios regresaron la semana siguiente, la semana siguiente, etc.

Hay muchos ejemplos útiles para hacer esto por mes, pero quiero crear esto por semana. ¿Alguna sugerencia?

1 ACCEPTED SOLUTION

No @jackj,

Vea la medida a continuación, debe hacer el truco

Purchase Customer Next week = 
    var prior_cust_ids = CALCULATETABLE(VALUES(Cohort[Customer ID]), TOPN(1, FILTER(all('Cohort'), 'Cohort'[Customer ID] in FILTER(all(Cohort[Customer ID]), 
            'Cohort'[Week Ending]  > SELECTEDVALUE(Cohort[Week Ending]))), Cohort[Week Ending], ASC))
    return 
    CALCULATE(DISTINCTCOUNT(Cohort[Customer ID]), 'Cohort'[Customer ID] in prior_cust_ids)​

View solution in original post

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

No @jackj,

Con los datos que proporcionó, se me ocurrió la siguiente medida que crea una variable de tabla para almacenar todos los identificadores de cliente anteriores y, a continuación, devuelve el recuento distinto de customerid que existía en los períodos anteriores.

Prior Purchase Customer = 
    var prior_cust_ids = CALCULATETABLE(VALUES(Cohort[Customer ID]), FILTER(all('Cohort'), 'Cohort'[Customer ID] in FILTER(all(Cohort[Customer ID]), 
            'Cohort'[Week Ending]  < SELECTEDVALUE(Cohort[Week Ending]))))
    return 
    CALCULATE(DISTINCTCOUNT(Cohort[Customer ID]), 'Cohort'[Customer ID] in prior_cust_ids)

Súper simple pbix también unido

Espero que eso te ayude,

Richard

¡Gracias! ¡Esto definitivamente ayuda! Una pregunta - esto mostrará cada semana el número de clientes que han comprado previamente en cualquier momento. ¿Cómo restringiría esto a mostrar el número distinto de ID de cliente que compraron solo *la semana pasada*, en lugar de mirar hacia atrás al principio de los tiempos?

¡Muchas gracias!

¡¡Gracias!! ¡Esto funciona! Una última pregunta: ¿cómo podría modificar esto para mostrar, para cada cohorte de cada semana, cuántos de esos usuarios regresaron la semana siguiente?

¡Agradezco mucho su ayuda! Esto es tremendo.

No @jackj,

Vea la medida a continuación, debe hacer el truco

Purchase Customer Next week = 
    var prior_cust_ids = CALCULATETABLE(VALUES(Cohort[Customer ID]), TOPN(1, FILTER(all('Cohort'), 'Cohort'[Customer ID] in FILTER(all(Cohort[Customer ID]), 
            'Cohort'[Week Ending]  > SELECTEDVALUE(Cohort[Week Ending]))), Cohort[Week Ending], ASC))
    return 
    CALCULATE(DISTINCTCOUNT(Cohort[Customer ID]), 'Cohort'[Customer ID] in prior_cust_ids)​

No @jackj ,

dar esto una oportunidad

Prior Purchase Customer Last week = 
    var prior_cust_ids = CALCULATETABLE(VALUES(Cohort[Customer ID]), TOPN(1, FILTER(all('Cohort'), 'Cohort'[Customer ID] in FILTER(all(Cohort[Customer ID]), 
            'Cohort'[Week Ending]  < SELECTEDVALUE(Cohort[Week Ending]))), Cohort[Week Ending], DESC))
    return 
    CALCULATE(DISTINCTCOUNT(Cohort[Customer ID]), 'Cohort'[Customer ID] in prior_cust_ids)

¡Perfecto! Esto me da los números que necesito. Una última pregunta final - gracias de nuevo por toda esta ayuda! ¿Cómo puedo mostrar una lista de los ID de cliente que cumplen con estos criterios: los que visitaron la semana siguiente y los que no? Realmente luchando para envolver mi cabeza alrededor de todo esto y es mucho más fácil en Excel. Muchas gracias por toda su ayuda aquí.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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