cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Calcular la frecuencia media de los pedidos

Hola a todos

Tengo un conjunto de datos como el siguiente, quiero mostrar = Frecuencia promedio de pedido.

Como, estamos recibiendo el pedido por cada X minutos.

He probado diferentes cálculos como lo sugiere en el foro. Pero, no pudo obtener el resultado esperado.

653DA77F-22F8-4834-A6C4-F83DB13092DC.jpeg

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

@Adhavan ,

es una práctica recomendada evitar el uso de EARLIER para facilitar la creación y el mantenimiento del código, utilizando variables (VAR), como en este ejemplo:
Columna diff =
Dónde FirstOrder_of_the_Day =
CALCULAR (
Min ( 'Tabla'[ID de pedido] ),
TODOSEXCEPTO ( 'Tabla', 'Tabla'[Fecha] )
)

Dónde Order_ID = 'Tabla'[ID de pedido]

Dónde Diff =
[DateTime]
- MAXX (
FILTRO ('Tabla',
'Tabla'[ID de pedido] = Order_ID - 1
),
[DateTime]
)
DEVOLUCIÓN
Si (
'Tabla'[ID de pedido] = FirstOrder_of_the_Day,
ESPACIO EN BLANCO(),
Diff
)

Syndicate_Admin
Administrator
Administrator

@Adhavan , En caso de que los ID de pedido sean solo incrementales

una nueva columna

Datetime= [Fecha]+ [Hora]

Columna diff =

[Datetime] - maxx(filter(Table, [Order_id] = earlier([Order_id]) -1) ,[Datetime] )

una medida

Promedio(Tabla[Columna Diff])

@amitchandak ,

Proporcionó el resultado en cada columna. Pero, calculó un valor promedio incorrecto debido a la siguiente razón, que no pude eludir ni encontrar la solución.

1. Calcula 18 horas solo para el 1 de enero.

2. Muestra más de 12 horas por cada primer orden del día (calculando desde el día anterior)

He adjuntado la imagen de referencia. ¿Podrías ayudarme a deshacerme de eso?

C9E8D84B-2E9E-4037-8C61-495E15D8B83C.jpegE0CC8A69-8107-4B7B-9BC4-B580EA4A86EE.jpeg

@Adhavan ,

Aquí te sugiero que pruebes este código para crear una columna calculada.

Diff column =
VAR _LASTORDER =
    CALCULATE ( MIN ( 'Table'[order id] ), ALLEXCEPT ( 'Table', 'Table'[date] ) )
VAR _DIFF =
    [Datetime]
        - MAXX (
            FILTER ( 'Table', 'Table'[order id] = EARLIER ( 'Table'[order id] ) - 1 ),
            [Datetime]
        )
RETURN
    IF ( 'Table'[order id] = _LASTORDER, BLANK (), _DIFF )

El resultado es el siguiente.

RicoZhou_0-1665040267276.png

Saludos
Rico Zhou

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

@RicoZhou

Muchas gracias.

Muestra el resultado exacto que quiero.

Agradecer

Manos

Helpful resources

Announcements
Carousel_PBI_Wave1

2023 Release Wave 1 Plans

Power BI release plans for 2023 release wave 1 describes all new features releasing from April 2023 through September 2023.

Power BI Summit Carousel 2

Global Power BI Training

Make sure you register today for the Power BI Summit 2023. Don't miss all of the great sessions and speakers!

BizApps LATAM 2023

Business Application LATAM Summit 2023

Join the biggest FREE Business Applications Event in LATAM this February.

Power Platform Bootcamp

Global Power Platform Bootcamp

In this bootcamp we will deep-dive into Microsoft’s Power Platform stack with hands-on sessions and labs, delivered to you by experts and community leaders.