jackj
Me pregunto si alguien puede ayudar con este problema; he estado tratando de resolverlo durante días sin ningún progreso. Tengo una tabla de datos similar a esta:
Fecha de servicio | Fin de semana | Identificación del cliente | Servicio |
1/1/2021 | 1/3/2021 | 123 | Guardería |
8/1/2021 | 10/1/2021 | 123 | Embarque |
14/01/2021 | 17/01/2021 | 123 | Guardería |
1/1/2021 | 1/3/2021 | 124 | Guardería |
15/1/2021 | 17/01/2021 | 124 | Guardería |
1/1/2021 | 1/3/2021 | 125 | Embarque |
1/1/2021 | 1/3/2021 | 126 | Embarque |
8/1/2021 | 10/1/2021 | 126 | Guardería |
13/01/2021 | 17/01/2021 | 126 | Guardería |
1/2/2021 | 1/3/2021 | 127 | Embarque |
5/1/2021 | 10/1/2021 | 127 | Guardería |
1/1/2021 | 1/3/2021 | 128 | Embarque |
6/1/2021 | 10/1/2021 | 128 | Embarque |
1/2/2021 | 1/3/2021 | 129 | Guardería |
8/1/2021 | 10/1/2021 | 130 | Guardería |
15/1/2021 | 17/01/2021 | 130 | Guardería |
1/1/2021 | 1/3/2021 | 131 | Guardería |
9/1/2031 | 10/1/2021 | 131 | Guardería |
15/1/2021 | 17/01/2021 | 131 | Guardería |
Básicamente, estoy buscando hacer un análisis de cohorte por semana, mostrando el número total de usuarios que visitaron durante la semana que finalizó el 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?
richbenmintz
En respuesta a jackj
Hola @jackj,
Vea la medida a continuación, debería 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)
richbenmintz
Hola @jackj,
Usando los datos que proporcionó, se me ocurrió la siguiente medida que crea una variable de tabla para almacenar todos los identificadores de clientes anteriores, luego devuelve el recuento distintivo de los identificadores de clientes que existían 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)
Pbix super simple también adjunto
Espero que eso te ayude,
Ricardo
jackj
En respuesta a richbenmintz
¡Gracias! ¡Esto definitivamente ayuda! Una pregunta: mostrará cada semana la cantidad de clientes que han comprado anteriormente en cualquier momento. ¿Cómo restringiría esto para que solo muestre el recuento distintivo de ID de clientes que compraron * la semana pasada * únicamente, en lugar de mirar hacia atrás al comienzo de los tiempos?
¡Muchas gracias!
jackj
En respuesta a jackj
¡¡Gracias!! ¡Esto funciona! Una pregunta final: ¿cómo podría modificar esto para mostrar, para la cohorte de cada semana, cuántos de esos usuarios regresaron la semana siguiente?
¡Aprecio mucho tu ayuda! Esto es tremendo.
richbenmintz
En respuesta a jackj
Hola @jackj,
Vea la medida a continuación, debería 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)
richbenmintz
En respuesta a jackj
Hola @jackj,
dale 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)
jackj
En respuesta a richbenmintz
¡Perfecto! Esto me da los números que necesito. Una última pregunta: ¡gracias de nuevo por toda esta ayuda! ¿Cómo puedo mostrar una lista de los ID de clientes que cumplen con estos criterios: los que visitaron la semana siguiente y los que no? Realmente estoy luchando para entender todo esto y es mucho más fácil en Excel. Muchas gracias por toda su ayuda aquí.