cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
jytech
Helper I
Helper I

Average of 10 Email Sends per Campaign

Hello,

 

I recently used DAX to create a 3 and 6 month rolling average which wasn't too difficult because it's a time intelligence calculation but now I'm looking to get an average of 10 email sends per campaign. 

 

Attached below is a table with the columns as reference. For example, Adobe sends are usually 100K - 200K per send. I want to calculate the sum of 10 sends and get an average on that.

PBI Fields.png

Any help will be greatly appreciated.

 

Thank you!

1 ACCEPTED SOLUTION
v-zhangti
Community Support
Community Support

Hi, @jytech 

 

You can try the following methods. First figure out how to determine the order in which each point in time is sent.

Count = 
CALCULATE (
    COUNTROWS ( 'Table' ),
    FILTER (
        ALL ( 'Table' ),
        [Campaign Name] = SELECTEDVALUE ( 'Table'[Campaign Name] )
            && [Sent time] >= SELECTEDVALUE ( 'Table'[Sent time] )
    )
)

vzhangti_0-1648015464867.png

 

Then sum the 10 most recent time sends.

Sum of the nearest 10 = 
SUMX(FILTER('Table',[Count]<=10),[Sent])
Average of the nearest 10 = 
AVERAGEX(FILTER('Table',[Count]<=10),[Sent])

vzhangti_2-1648015654066.png

Please see the attachment for details.

 

Best Regards,

Community Support Team _Charlotte

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

3 REPLIES 3
v-zhangti
Community Support
Community Support

Hi, @jytech 

 

Is there a time point for each send? Is it to calculate the sum of the 10 most recent sends at the most recent time? Is there any relevant example data, preferably available?

 

Best Regards

Hi @v-zhangti 

 

Each send has a send date linked to it, and yes, I would like to calculate the sum of the 10 most recent sends filtered by the Campaign. Here's a screen shot (minus some sensitive data) as a reference.

 

PBI Fields 2.png

v-zhangti
Community Support
Community Support

Hi, @jytech 

 

You can try the following methods. First figure out how to determine the order in which each point in time is sent.

Count = 
CALCULATE (
    COUNTROWS ( 'Table' ),
    FILTER (
        ALL ( 'Table' ),
        [Campaign Name] = SELECTEDVALUE ( 'Table'[Campaign Name] )
            && [Sent time] >= SELECTEDVALUE ( 'Table'[Sent time] )
    )
)

vzhangti_0-1648015464867.png

 

Then sum the 10 most recent time sends.

Sum of the nearest 10 = 
SUMX(FILTER('Table',[Count]<=10),[Sent])
Average of the nearest 10 = 
AVERAGEX(FILTER('Table',[Count]<=10),[Sent])

vzhangti_2-1648015654066.png

Please see the attachment for details.

 

Best Regards,

Community Support Team _Charlotte

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Helpful resources

Announcements
August 2022 update 768x460.jpg

Check it Out!

Click here to learn more about the August 2022 updates!

August 1 episode 9_no_dates 768x460.jpg

The Power BI Community Show

Watch the playback when Priya Sathy and Charles Webb discuss Datamarts! Kelly also shares Power BI Community updates.

Power Platform Conf 2022 768x460.jpg

Join us for Microsoft Power Platform Conference

The first Microsoft-sponsored Power Platform Conference is coming in September. 100+ speakers, 150+ sessions, and what's new and next for Power Platform.

Top Solution Authors
Top Kudoed Authors