Rfaulk has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/71582


Change subject: add. proportion aggregator (change existing to rate).
......................................................................

add. proportion aggregator (change existing to rate).

Change-Id: Ie79897ef4eac093dbe41144f72beb49d69879ad6
---
M user_metrics/api/engine/request_meta.py
M user_metrics/metrics/blocks.py
2 files changed, 18 insertions(+), 3 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/analytics/user-metrics 
refs/changes/82/71582/1

diff --git a/user_metrics/api/engine/request_meta.py 
b/user_metrics/api/engine/request_meta.py
index 3aa44a0..884fabf 100644
--- a/user_metrics/api/engine/request_meta.py
+++ b/user_metrics/api/engine/request_meta.py
@@ -307,7 +307,8 @@
 # ########################################################
 
 from user_metrics.metrics.threshold import Threshold, threshold_editors_agg
-from user_metrics.metrics.blocks import Blocks, block_rate_agg
+from user_metrics.metrics.blocks import Blocks, block_rate_agg, \
+    block_prop_agg
 from user_metrics.metrics.bytes_added import BytesAdded, ba_median_agg, \
     ba_min_agg, ba_max_agg, ba_sum_agg, ba_mean_agg, ba_std_agg
 from user_metrics.metrics.survival import Survival, survival_editors_agg
@@ -356,7 +357,8 @@
     'min+bytes_added': ba_min_agg,
     'max+bytes_added': ba_max_agg,
     'dist+edit_rate': er_stats_agg,
-    'proportion+blocks': block_rate_agg,
+    'average+blocks': block_rate_agg,
+    'proportion+blocks': block_prop_agg,
     'dist+time_to_threshold': ttt_stats_agg,
     'dist+pages_created': pages_created_stats_agg,
     }
diff --git a/user_metrics/metrics/blocks.py b/user_metrics/metrics/blocks.py
index 0d66004..5e56f77 100644
--- a/user_metrics/metrics/blocks.py
+++ b/user_metrics/metrics/blocks.py
@@ -8,7 +8,8 @@
 from collections import namedtuple
 import user_metric as um
 from user_metrics.metrics import query_mod
-from user_metrics.etl.aggregator import weighted_rate, decorator_builder
+from user_metrics.etl.aggregator import weighted_rate, decorator_builder,\
+    boolean_rate
 
 
 class Blocks(um.UserMetric):
@@ -151,6 +152,18 @@
     'val_idx': 2,
 })
 
+# Build "proportion" decorator
+block_prop_agg = boolean_rate
+block_prop_agg = decorator_builder(Blocks.header())(block_prop_agg)
+
+setattr(block_prop_agg, um.METRIC_AGG_METHOD_FLAG, True)
+setattr(block_prop_agg, um.METRIC_AGG_METHOD_NAME, 'b_prop_agg')
+setattr(block_prop_agg, um.METRIC_AGG_METHOD_HEAD, ['total_users',
+                                                    'total_blocks',
+                                                    'proportion'])
+setattr(block_prop_agg, um.METRIC_AGG_METHOD_KWARGS, {
+    'val_idx': 1,
+})
 
 if __name__ == "__main__":
     for r in Blocks().process(['11174885', '15132776']):

-- 
To view, visit https://gerrit.wikimedia.org/r/71582
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: Ie79897ef4eac093dbe41144f72beb49d69879ad6
Gerrit-PatchSet: 1
Gerrit-Project: analytics/user-metrics
Gerrit-Branch: master
Gerrit-Owner: Rfaulk <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to