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
yang6406
Regular Visitor

Cálculo de conversión mediante tabla dinámica

Hola

Tengo una mesa que está organizada por fecha, ID de cliente, visita web y compra (no te preocupes por "show). Me gustaría calcular la tasa de conversión de la visita a la compra. La tasa de conversión tiene que estar vinculada directamente a un cliente individual, no sólo utilizando la suma de la compra dividida por la suma de la visita (6/9 a 67%). En su lugar estoy interesado en ver si la compra es realizada por el mismo cliente que visitó la tienda. Por ejemplo, del 1 de enero al 3 de enero, la conversión debe ser (4/9 a 44%). La columna de corte tiene valores repetidos si el cliente compra en un día diferente. Suponiendo que un cliente solo visita la tienda una vez y compra una vez en su vida.

yang6406_2-1601587865457.png

Para calcular la conversión verdadera, utilizo calculatetable para crear una nueva tabla que muestra los cutomers únicos, visita y compra. Está claro en la siguiente tabla que del 1 de enero al 3 de enero, los cutomers que visitaron y compraron durante estos tres días son T1, T8, T10 y T13. Quiero hacer esta tabla dinámica en función del período de tiempo que elijan los usuarios. Por ejemplo, si el usuario elige el 3 de enero, la conversión debe ser del 100%, ya que dos nuevos clientes que visitaron la tienda (T10 Y T13) compraron ambos el mismo día. De alguna manera, no puedo hacer que la pieza dinámica funcione. La tabla permanece estática. ¿Puedes ayudar? Por favor, siéntase libre de criticar si hay una manera más inteligente de hacerlo. Gracias.

yang6406_3-1601588293352.png

1 ACCEPTED SOLUTION

Hola @yang6406 ,

Primero cree una tabla tenue como se muestra a continuación:

calendar dim = CALENDAR(MIN('Table'[Date]),MAX('Table'[Date]))

A continuación, cree una medida como se indica a continuación:

lease percentage = 
var _selectedtable1=CALCULATETABLE(VALUES('Table'[Tenant]),FILTER(ALL('Table'),'Table'[First Contact]=1&&'Table'[Date] in FILTERS('calendar dim'[Date])))
var _sumoflease=CALCULATE(DISTINCTCOUNT('Table'[Tenant]),'Table'[Tenant] in _selectedtable1,FILTER(ALL('Table'),'Table'[Lease]=1&&'Table'[Date] in FILTERS('calendar dim'[Date])))+0
var _sumoffirstcontact=CALCULATE(DISTINCTCOUNT('Table'[Tenant]),FILTER(ALL('Table'),'Table'[First Contact]=1&&'Table'[Date] in FILTERS('calendar dim'[Date])))
Return
DIVIDE(_sumoflease,_sumoffirstcontact)+0

Y verás:

Screenshot 2020-10-07 161959.pngScreenshot 2020-10-07 162011.png

Para el archivo .pbix relacionado, pls ver adjunto.

Saludos
Kelly

¿He respondido a tu pregunta? ¡Marca mi puesto como una solución!

View solution in original post

5 REPLIES 5
v-kelly-msft
Community Support
Community Support

Hola @yang6406 ,

Puede crear una tabla de fechas que se usará como segmentación de datos y, a continuación, crear una medida para satisfacer sus requisitos.

Si es posible, ¿podrían subir su archivo .pbix a una empresa de onedrive y compartir el enlace con nosotros? Recuerde eliminar la información confidencial.

Saludos
Kelly

¿He respondido a tu pregunta? ¡Marca mi puesto como una solución!

Hola @v-kelly-msft

Gracias por tu pista. He creado una tabla de fechas y he creado una medida de conversión de visita a compra. Sin embargo, la medida de conversión no cambia, como espero cuando cambie la segmentación de fecha.

.pbix está en el siguiente enlace.

  • Sheet1(2) es el archivo de datos
  • La Tabla de Prueba 3 es la caclualtetable
  • La visita a la compra es en la tabla de pruebas 3. Mi objetivo es hacer que la visita a la compra sea dinámica cuando cambia el intervalo de fechas. Gracias por toda tu ayuda.

https://bozzuto-my.sharepoint.com/:f:/p/xiyao_yang/EtJ6508x4_VCh_1XrvdC-VgBbiuRrIyRV-4n6bOYSpguyQ?e=...

contraseña: 1234

Hola @yang6406 ,

Primero cree una tabla tenue como se muestra a continuación:

calendar dim = CALENDAR(MIN('Table'[Date]),MAX('Table'[Date]))

A continuación, cree una medida como se indica a continuación:

lease percentage = 
var _selectedtable1=CALCULATETABLE(VALUES('Table'[Tenant]),FILTER(ALL('Table'),'Table'[First Contact]=1&&'Table'[Date] in FILTERS('calendar dim'[Date])))
var _sumoflease=CALCULATE(DISTINCTCOUNT('Table'[Tenant]),'Table'[Tenant] in _selectedtable1,FILTER(ALL('Table'),'Table'[Lease]=1&&'Table'[Date] in FILTERS('calendar dim'[Date])))+0
var _sumoffirstcontact=CALCULATE(DISTINCTCOUNT('Table'[Tenant]),FILTER(ALL('Table'),'Table'[First Contact]=1&&'Table'[Date] in FILTERS('calendar dim'[Date])))
Return
DIVIDE(_sumoflease,_sumoffirstcontact)+0

Y verás:

Screenshot 2020-10-07 161959.pngScreenshot 2020-10-07 162011.png

Para el archivo .pbix relacionado, pls ver adjunto.

Saludos
Kelly

¿He respondido a tu pregunta? ¡Marca mi puesto como una solución!

@v-kelly-msft , muchas gracias! Muy bien hecho.

lbendlin
Super User
Super User

Usted está en el camino correcto utilizando una tabla calculada. Todo lo que queda por hacer es poner esto dentro de una medida, con una variable de tabla como un paso intermedio. Incluso puede volver a utilizar la mayor parte del código.

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.