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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Syndicate_Admin
Administrator
Administrator

¿Cómo agrupar por horas?

Hola a todos

Estoy explorando los datos de bicicletas compartidas. Tengo más de 27000 viajes en bicicleta para 2019. Me gustaría agrupar estos viajes en cada hora de 2019. Hay 8760 horas en un año. Me gustaría un recuento de cada viaje en bicicleta para cada hora de 2019.

Screenshot (47).png

En la imagen de arriba, por ejemplo, podemos ver que el 01/01/2019, entre las 02:00 y las 03:00 hubo 0 viajes en bicicleta. En ese mismo día entre las 13:00 y las 14:00, vemos que hubo 8 viajes.

Screenshot (49).png

Sería bueno si tuviera algo que se pareciera a la imagen de arriba, con el recuento de viajes en bicicleta al lado. Me gustaría hacer esto durante todo el año.

¡Cualquier ayuda sería muy apreciada!

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

¿@briano93

De acuerdo con su declaración, desea contar los viajes entre dos rangos completos de horas de fecha y hora. Creo que puede intentar crear una tabla calculada con RANGESTART y RANGEEND, luego contar los viajes.

En primer lugar, introduzca un horario de 0:00:00 a 23:00:00.

A continuación, cree una tabla calculada para mostrar el resultado.

DateTime = 
VAR _T1 =
    ADDCOLUMNS (
        CROSSJOIN ( CALENDAR ( DATE ( 2019, 01, 01 ), DATE ( 2019, 01, 01 ) ), 'Time' ),
        "RANGESTART", [Date] + [Time]
    )
VAR _T2 =
    SUMMARIZE (
        _T1,
        [Date],
        [RANGESTART],
        "RANGEND", [RANGESTART] + TIME ( 1, 0, 0 )
    )
VAR _RESULT =
    ADDCOLUMNS (
        _T2,
        "COUNT JOURNEYS",
            CALCULATE (
                COUNT ( 'Table'[ID] ),
                FILTER (
                    'Table',
                    AND (
                        'Table'[DateTime] >= EARLIER ( [RANGESTART] ),
                        'Table'[DateTime] < EARLIER ( [RANGEND] )
                    )
                )
            ) + 0
    )
RETURN
    _RESULT

El resultado es el siguiente. Aquí utilizo la misma muestra de datos que la tuya. El 01/01/2019 entre las 13:00 y las 14:00, vemos que hubo 8 viajes.

1.png

Puede descargar mi archivo de muestra para obtener más detalles.

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.

View solution in original post

5 REPLIES 5
Syndicate_Admin
Administrator
Administrator

¿@briano93

De acuerdo con su declaración, desea contar los viajes entre dos rangos completos de horas de fecha y hora. Creo que puede intentar crear una tabla calculada con RANGESTART y RANGEEND, luego contar los viajes.

En primer lugar, introduzca un horario de 0:00:00 a 23:00:00.

A continuación, cree una tabla calculada para mostrar el resultado.

DateTime = 
VAR _T1 =
    ADDCOLUMNS (
        CROSSJOIN ( CALENDAR ( DATE ( 2019, 01, 01 ), DATE ( 2019, 01, 01 ) ), 'Time' ),
        "RANGESTART", [Date] + [Time]
    )
VAR _T2 =
    SUMMARIZE (
        _T1,
        [Date],
        [RANGESTART],
        "RANGEND", [RANGESTART] + TIME ( 1, 0, 0 )
    )
VAR _RESULT =
    ADDCOLUMNS (
        _T2,
        "COUNT JOURNEYS",
            CALCULATE (
                COUNT ( 'Table'[ID] ),
                FILTER (
                    'Table',
                    AND (
                        'Table'[DateTime] >= EARLIER ( [RANGESTART] ),
                        'Table'[DateTime] < EARLIER ( [RANGEND] )
                    )
                )
            ) + 0
    )
RETURN
    _RESULT

El resultado es el siguiente. Aquí utilizo la misma muestra de datos que la tuya. El 01/01/2019 entre las 13:00 y las 14:00, vemos que hubo 8 viajes.

1.png

Puede descargar mi archivo de muestra para obtener más detalles.

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.

Syndicate_Admin
Administrator
Administrator

@briano93 puede proporcionar algunos datos de ejemplo en un formato de tabla

Hola

Disculpas, sí, por supuesto. Aquí están todos los viajes para el 1 de enero de 2019:

DateTimeIDENTIFICACIÓN
01/01/2019 00:171754125
01/01/2019 07:551754170
01/01/2019 11:421754209
01/01/2019 11:501754211
01/01/2019 12:111754224
01/01/2019 12:151754225
01/01/2019 12:261754232
01/01/2019 12:591754252
01/01/2019 13:201754259
01/01/2019 13:241754261
01/01/2019 13:251754262
01/01/2019 13:261754264
01/01/2019 13:281754266
01/01/2019 13:331754271
01/01/2019 13:331754272
01/01/2019 13:461754278
01/01/2019 14:031754283
01/01/2019 14:031754282
01/01/2019 14:051754285
01/01/2019 14:421754313
01/01/2019 14:531754320
01/01/2019 14:541754324
01/01/2019 14:541754323
01/01/2019 15:111754334
01/01/2019 15:191754343
01/01/2019 17:001754403
01/01/2019 17:031754404
01/01/2019 17:481754428
01/01/2019 17:581754432
01/01/2019 18:211754446
01/01/2019 19:271754465
01/01/2019 20:031754482
01/01/2019 21:261754496
01/01/2019 21:271754497

Recomiendo mantener la columna DateTime y agregar una nueva columna DateHour personalizada:

Time.StartOfHour([DateTime])

AlexisOlson_0-1637519536557.png

Esta es la mejor respuesta me solucionaste el dia Gracias un abrazo 

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors