Weighted Average Price Beast Mode
Hi Everyone,
I am working on creating a beast mode that will calculate a weighted average price of subscriptions. Essentially, the formula will take the subscription price and multiply it by the number of subscriptions with that price, then divide by the total number of subscriptions.
This is what I have so far.
sum(count(`subscription_id`) * `price`)/count(`subscription_id`)
Love to get some help! I don't want to use a "case" statement because there are over 600 prices that I am working with in my dataset.
Thanks
Answers
-
Hi @jgillman
You'll need to aggregate your data and count all of the subscriptions before attempting to calculate the weighted average. You can't aggregate an aggregate in a beast mode so pre-aggregation is required.
Once you have the number of subscriptions counted you can then use that new field in your beast mode to calculate the weighted average
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**0 -
If you don't have window functions in beast mode enabled, you will need to get that enabled by your CSM. Then, if you add the OVER() clause to your denominator, you will be able to get a count of your total number of subscriptions. Like this:
sum(count(`subscription_id`) * `price`)/count(`subscription_id`) OVER()
**Make sure toany users posts that helped you.
**Please mark as accepted the ones who solved your issue.0
Categories
- 10.8K All Categories
- 3 Private Company Board
- 1 APAC User Group
- 12 Welcome
- 39 Domo News
- 9.7K Using Domo
- 1.9K Dataflows
- 2.5K Card Building
- 2.2K Ideas Exchange
- 1.2K Connectors
- 343 Workbench
- 260 Domo Best Practices
- 11 Domo Certification
- 464 Domo Developer
- 50 Domo Everywhere
- 105 Apps
- 714 New to Domo
- 85 Dojo
- Domopalooza
- 1.1K 日本支部
- 4 道場-日本支部へようこそ
- 27 お知らせ
- 64 Kowaza
- 299 仲間に相談
- 653 ひらめき共有