Splunk Search

How to calculate Weighted Average

tac24
New Member

After the base search such as:

......
 | stats sum(r1) as t_r1  sum(r2) as t_r2  sum(duras) as total_dura c(member) as samples by group 
 | eval ratio1 = t_r1/total_dura
 | eval ratio2 = t_r2/total_dura
 | table group ratio1 ratio2 samples 

I got the table like below:

   group        ratio1           ratio2        samples
---------------------------------------------------------------
     A            0.8              0.2            100
     B            0.3              0.7             50
     C            0.5              0.5            300

Then, I can calculate simple average over group by: | stats avg(ratio1) avg(ratio2) .
Could someone help me how to calculate weighted average by using samples?
i.e., the weight for A is 100/(100+50+300), B is 50/(100+50+300),...

0 Karma
1 Solution

renjith_nair
Legend

You can use eventstats to achieve this

|eventstats sum(samples) as total | eval weighted_avg=samples/total 

You can use by clause in eventstats to group the records

---
What goes around comes around. If it helps, hit it with Karma 🙂

View solution in original post

tac24
New Member

Thank you very much, it worked!
Excuse me, my question is rather ambiguous. I would like to add something for beginners like me...
To get weighted-average finally, after eventstats, the following commands can be added.

 | eval w_avg_of_ratio1_per_group = ratio1*samples/total 
 | stats sum(w_avg_of_ratio1_per_group) as w_avg_of_ratio1
0 Karma

renjith_nair
Legend

You can use eventstats to achieve this

|eventstats sum(samples) as total | eval weighted_avg=samples/total 

You can use by clause in eventstats to group the records

---
What goes around comes around. If it helps, hit it with Karma 🙂
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

From Data to Insight: Announcing the Winners of the Splunk Dashboard Contest

Hi Splunkers, First off, thank you to everyone who participated in our very first From Data to Insight: The ...

Splunk Developers: Construct Your Future at the .conf26 Builder Bar

Calling all Splunk architects, platform admins, and app developers: the site is open, and the blueprints are ...

Quick connection discovery mode for forwarders

When a Splunk forwarder loses connectivity to its indexers, it does not always reconnect immediately. In many ...