Beast Mode: How to calculate Fixed Average dependent on a different Fixed Sum

This discussion has a more recent version.

Hello!

I have a dataset with the following fields:

Day, Company, Spend, and Revenue.

I want to find the Average Revenue per Company for a selected time period, but only include Companies that have cumulative Spend greater than zero (for the selected time period).

I have attached a photo of my sample data.

Basically, I want a report with a single value (for the sake of testing), with "Average Revenue" equal to $997.50.

($545 for Betsy + $1,450 for Tom ) / 2

Mikes is excluded from the average, because he has cumulative Spend = 0 during the selected date range.

Simply applying a filter on Spend will not work, as Betsy gains revenue on days when spend = 0, and I still want those values included in the average.

The Cumulative totals in my example are beast modes that use "fixed by" calcs. I have tried using fixed add, sum overs, filters and am driving myself mad. Any help (or confirmation that this is just not possible) is much appreciated! Thank you!


Tagged:

Best Answer

  • ljos_14
    ljos_14 Member
    Answer ✓

    Success!

    AVG(
    	case when 
    	SUM(`Spend`) FIXED (BY `Company`) > 0 
    	then 
    	SUM(`Revenue`) FIXED (BY `Company`)
    	end
      )
    


Answers

  • ljos_14
    ljos_14 Member
    Answer ✓

    Success!

    AVG(
    	case when 
    	SUM(`Spend`) FIXED (BY `Company`) > 0 
    	then 
    	SUM(`Revenue`) FIXED (BY `Company`)
    	end
      )