Forum Discussion

dollaratneu's avatar
dollaratneu
New Member
5 years ago
Solved

Getting percentage count by days

I've a dataset as under:

datedays
2020-01-15 12:131
2020-01-15 10:481
2020-01-15 10:452
2020-01-15 9:513
2020-01-15 9:523
2020-01-15 9:075
2020-01-15 11:432
2020-01-15 12:467
2020-01-15 13:122
2020-01-15 9:582
2020-01-15 11:292
2020-01-15 10:382
2020-01-15 11:212
2020-01-15 12:422
2020-01-15 14:322
2020-01-15 10:492
2020-01-15 15:332
2020-01-15 11:322
2020-01-15 10:502


I'm having a hard time to create a new table which would show the percentage of days where days<2 and percent of days where days >= 2

so the resulting table would look like this:


MonthDays%
Jan-20<210
Jan-20>299
Feb-20<220
Feb-20>280
  • v-yingjl's avatar
    v-yingjl
    5 years ago

    Hi dollaratneu ,

    Based on your description, you can create a new calculated table like this:

    New Table = 
    VAR t1 =
        ADDCOLUMNS (
            'Table',
            "Month Days",
                SWITCH (
                    TRUE (),
                    'Table'[date].[MonthNo] = 1
                        && 'Table'[date].[Day] >= 1
                        && 'Table'[date].[Day] < 20, "Jan-20 <2",
                    'Table'[date].[MonthNo] = 1
                        && 'Table'[date].[Day] >= 20
                        && 'Table'[date].[Day] <= 31, "Jan-20 >2",
                    'Table'[date].[MonthNo] = 2
                        && 'Table'[date].[Day] >= 1
                        && 'Table'[date].[Day] < 20, "Feb-20 <2",
                    'Table'[date].[MonthNo] = 2
                        && 'Table'[date].[Day] >= 20
                        && 'Table'[date].[Day] <= 29, "Feb-20 >2"
                ),
            "Total Count",
                CALCULATE (
                    COUNT ( 'Table'[date] ),
                    ALLEXCEPT ( 'Table', 'Table'[date].[MonthNo] )
                )
        )
    VAR t2 =
        ADDCOLUMNS (
            t1,
            "Count",
                SWITCH (
                    TRUE (),
                    [days] < 2
                        && [Month Days] = "Jan-20 <2",
                        COUNTX ( FILTER ( t1, [days] < 2 && [Month Days] = "Jan-20 <2" ), [date] ),
                    [days] >= 2
                        && [Month Days] = "Jan-20 >2",
                        COUNTX ( FILTER ( t1, [days] >= 2 && [Month Days] = "Jan-20 >2" ), [date] ),
                    [days] < 2
                        && [Month Days] = "Feb-20 <2",
                        COUNTX ( FILTER ( t1, [days] < 2 && [Month Days] = "Feb-20 <2" ), [date] ),
                    [days] >= 2
                        && [Month Days] = "Feb-20 >2",
                        COUNTX ( FILTER ( t1, [days] >= 2 && [Month Days] = "Feb-20 >2" ), [date] )
                )
        )
    RETURN
        SUMMARIZE (
            SUMMARIZE (
                FILTER ( t2, [Count] <> BLANK () ),
                [Month Days],
                [Total Count],
                [Count],
                "%", [Count] / [Total Count]
            ),
            [Month Days],
            [%]
        )
    

    Attached a sample file in the below, hopes to help you.

     

    Best Regards,
    Community Support Team _ Yingjie Li
    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

3 Replies

    • dollaratneu's avatar
      dollaratneu
      New Member

      sure !

      what I'm trying to do here is, get the percent of count of days for each month where the "days" column is less than 2 and likewise get the percent of count of days for each month where the "days" column is less than or equal to 2

      • v-yingjl's avatar
        v-yingjl
        Community Support

        Hi dollaratneu ,

        Based on your description, you can create a new calculated table like this:

        New Table = 
        VAR t1 =
            ADDCOLUMNS (
                'Table',
                "Month Days",
                    SWITCH (
                        TRUE (),
                        'Table'[date].[MonthNo] = 1
                            && 'Table'[date].[Day] >= 1
                            && 'Table'[date].[Day] < 20, "Jan-20 <2",
                        'Table'[date].[MonthNo] = 1
                            && 'Table'[date].[Day] >= 20
                            && 'Table'[date].[Day] <= 31, "Jan-20 >2",
                        'Table'[date].[MonthNo] = 2
                            && 'Table'[date].[Day] >= 1
                            && 'Table'[date].[Day] < 20, "Feb-20 <2",
                        'Table'[date].[MonthNo] = 2
                            && 'Table'[date].[Day] >= 20
                            && 'Table'[date].[Day] <= 29, "Feb-20 >2"
                    ),
                "Total Count",
                    CALCULATE (
                        COUNT ( 'Table'[date] ),
                        ALLEXCEPT ( 'Table', 'Table'[date].[MonthNo] )
                    )
            )
        VAR t2 =
            ADDCOLUMNS (
                t1,
                "Count",
                    SWITCH (
                        TRUE (),
                        [days] < 2
                            && [Month Days] = "Jan-20 <2",
                            COUNTX ( FILTER ( t1, [days] < 2 && [Month Days] = "Jan-20 <2" ), [date] ),
                        [days] >= 2
                            && [Month Days] = "Jan-20 >2",
                            COUNTX ( FILTER ( t1, [days] >= 2 && [Month Days] = "Jan-20 >2" ), [date] ),
                        [days] < 2
                            && [Month Days] = "Feb-20 <2",
                            COUNTX ( FILTER ( t1, [days] < 2 && [Month Days] = "Feb-20 <2" ), [date] ),
                        [days] >= 2
                            && [Month Days] = "Feb-20 >2",
                            COUNTX ( FILTER ( t1, [days] >= 2 && [Month Days] = "Feb-20 >2" ), [date] )
                    )
            )
        RETURN
            SUMMARIZE (
                SUMMARIZE (
                    FILTER ( t2, [Count] <> BLANK () ),
                    [Month Days],
                    [Total Count],
                    [Count],
                    "%", [Count] / [Total Count]
                ),
                [Month Days],
                [%]
            )
        

        Attached a sample file in the below, hopes to help you.

         

        Best Regards,
        Community Support Team _ Yingjie Li
        If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.