User:EpochFail/Journal/2011-12-12

Tuesday, Dec. 13th

edit

I'm updating my tests from last week to simple Chi^2 comparisons with the control.

Below, each "diff" represents the proportion difference in the outcomes between the experimental case and the control along with a "p-value" and "conf.int" (95% two tailed confidence interval) for the proportion difference test.

Result's for 420 'vandal' editors:
============================================================
Good outcome: 
	Control      : prop= 0.617, n=128
	Personal     : prop= 0.590, diff=-0.027, p-value= 0.742, conf.int=(-0.152,  0.098), n=139
	No Directives: prop= 0.550, diff=-0.068, p-value= 0.309, conf.int=(-0.190,  0.055), n=151

Improves: 
	Control      : prop= 0.529, n=70
	Personal     : prop= 0.468, diff=-0.061, p-value= 0.566, conf.int=(-0.236,  0.114), n=77
	No Directives: prop= 0.489, diff=-0.040, p-value= 0.735, conf.int=(-0.208,  0.129), n=90

Contact: 
	Control      : prop= 0.039, n=128
	Personal     : prop= 0.058, diff= 0.018, p-value= 0.677, conf.int=(-0.040,  0.077), n=139
	No Directives: prop= 0.053, diff= 0.014, p-value= 0.791, conf.int=(-0.042,  0.070), n=151

Stays: 
	Control      : prop= 0.547, n=128
	Personal     : prop= 0.554, diff= 0.007, p-value= 1.000, conf.int=(-0.119,  0.134), n=139
	No Directives: prop= 0.596, diff= 0.049, p-value= 0.480, conf.int=(-0.075,  0.173), n=151

Good contact: 
	Control      : prop= 0.400, n=5
	Personal     : prop= 0.625, diff= 0.225, p-value= 0.826, conf.int=(-0.482,  0.932), n=8
	No Directives: prop= 0.750, diff= 0.350, p-value= 0.499, conf.int=(-0.336,  1.000), n=8




Result's for 982 'bad faith' editors:
============================================================
Good outcome: 
	Control      : prop= 0.697, n=343
	Personal     : prop= 0.728, diff= 0.031, p-value= 0.421, conf.int=(-0.041,  0.103), n=320
	No Directives: prop= 0.688, diff=-0.009, p-value= 0.866, conf.int=(-0.083,  0.064), n=317

Improves: 
	Control      : prop= 0.272, n=147
	Personal     : prop= 0.353, diff= 0.080, p-value= 0.180, conf.int=(-0.034,  0.195), n=139
	No Directives: prop= 0.293, diff= 0.020, p-value= 0.796, conf.int=(-0.089,  0.130), n=147

Contact: 
	Control      : prop= 0.017, n=343
	Personal     : prop= 0.038, diff= 0.020, p-value= 0.179, conf.int=(-0.008,  0.048), n=320
	No Directives: prop= 0.041, diff= 0.024, p-value= 0.116, conf.int=(-0.005,  0.052), n=317

Stays: 
	Control      : prop= 0.429, n=343
	Personal     : prop= 0.434, diff= 0.006, p-value= 0.942, conf.int=(-0.073,  0.084), n=320
	No Directives: prop= 0.464, diff= 0.035, p-value= 0.407, conf.int=(-0.044,  0.114), n=317

Good contact: 
	Control      : prop= 0.667, n=6
	Personal     : prop= 0.500, diff=-0.167, p-value= 0.867, conf.int=(-0.763,  0.430), n=12
	No Directives: prop= 0.538, diff=-0.128, p-value= 0.979, conf.int=(-0.714,  0.458), n=13




Result's for 702 'test' editors:
============================================================
Good outcome: 
	Control      : prop= 0.142, n=247
	Personal     : prop= 0.072, diff=-0.070, p-value= 0.020, conf.int=(-0.128, -0.011), n=236
	No Directives: prop= 0.111, diff=-0.031, p-value= 0.388, conf.int=(-0.096,  0.034), n=217

Improves: 
	Control      : prop= 0.340, n=100
	Personal     : prop= 0.250, diff=-0.090, p-value= 0.283, conf.int=(-0.241,  0.061), n=68
	No Directives: prop= 0.196, diff=-0.144, p-value= 0.037, conf.int=(-0.278, -0.011), n=92

Contact: 
	Control      : prop= 0.016, n=247
	Personal     : prop= 0.021, diff= 0.005, p-value= 0.945, conf.int=(-0.023,  0.033), n=236
	No Directives: prop= 0.074, diff= 0.058, p-value= 0.005, conf.int=( 0.015,  0.100), n=217

Stays: 
	Control      : prop= 0.405, n=247
	Personal     : prop= 0.288, diff=-0.117, p-value= 0.009, conf.int=(-0.205, -0.028), n=236
	No Directives: prop= 0.424, diff= 0.019, p-value= 0.747, conf.int=(-0.075,  0.113), n=217

Good contact: 
	Control      : prop= 0.500, n=4
	Personal     : prop= 1.000, diff= 0.500, p-value= 0.324, conf.int=(-0.215,  1.000), n=5
	No Directives: prop= 0.688, diff= 0.188, p-value= 0.907, conf.int=(-0.509,  0.884), n=16




Result's for 347 'good faith' editors:
============================================================
Good outcome: 
	Control      : prop= 0.388, n=116
	Personal     : prop= 0.387, diff=-0.001, p-value= 1.000, conf.int=(-0.128,  0.127), n=111
	No Directives: prop= 0.398, diff= 0.010, p-value= 0.977, conf.int=(-0.123,  0.144), n=118

Improves: 
	Control      : prop= 0.230, n=61
	Personal     : prop= 0.111, diff=-0.118, p-value= 0.129, conf.int=(-0.266,  0.029), n=63
	No Directives: prop= 0.231, diff= 0.001, p-value= 1.000, conf.int=(-0.147,  0.150), n=65

Contact: 
	Control      : prop= 0.078, n=116
	Personal     : prop= 0.072, diff=-0.006, p-value= 1.000, conf.int=(-0.079,  0.068), n=111
	No Directives: prop= 0.153, diff= 0.075, p-value= 0.112, conf.int=(-0.015,  0.165), n=118

Stays: 
	Control      : prop= 0.526, n=116
	Personal     : prop= 0.568, diff= 0.042, p-value= 0.619, conf.int=(-0.097,  0.180), n=111
	No Directives: prop= 0.551, diff= 0.025, p-value= 0.801, conf.int=(-0.111,  0.161), n=118

Good contact: 
	Control      : prop= 1.000, n=9
	Personal     : prop= 0.750, diff=-0.250, p-value= 0.399, conf.int=(-0.668,  0.168), n=8
	No Directives: prop= 0.944, diff=-0.056, p-value= 1.000, conf.int=(-0.217,  0.106), n=18


And now the same analysis of the old huggling dataset.

Result's for 174 'unlikely' editors:
============================================================
Good outcome: 
	Control            : prop= 0.533, n=45
	Personal           : prop= 0.688, diff= 0.154, p-value= 0.189, conf.int=(-0.063,  0.372), n=48
	Teaching           : prop= 0.771, diff= 0.238, p-value= 0.050, conf.int=( 0.011,  0.465), n=35
	Personal & Teaching: prop= 0.771, diff= 0.238, p-value= 0.050, conf.int=( 0.011,  0.465), n=35

Improves: 
	Control            : prop= 0.208, n=24
	Personal           : prop= 0.238, diff= 0.030, p-value= 1.000, conf.int=(-0.244,  0.304), n=21
	Teaching           : prop= 0.300, diff= 0.092, p-value= 0.896, conf.int=(-0.306,  0.490), n=10
	Personal & Teaching: prop= 0.300, diff= 0.092, p-value= 0.896, conf.int=(-0.306,  0.490), n=10

Contact: 
	Control            : prop= 0.067, n=45
	Personal           : prop= 0.104, diff= 0.038, p-value= 0.784, conf.int=(-0.097,  0.172), n=48
	Teaching           : prop= 0.000, diff=-0.067, p-value= 0.335, conf.int=(-0.165,  0.032), n=35
	Personal & Teaching: prop= 0.000, diff=-0.067, p-value= 0.335, conf.int=(-0.165,  0.032), n=35

Stays: 
	Control            : prop= 0.533, n=45
	Personal           : prop= 0.438, diff=-0.096, p-value= 0.474, conf.int=(-0.320,  0.128), n=48
	Teaching           : prop= 0.286, diff=-0.248, p-value= 0.046, conf.int=(-0.482, -0.013), n=35
	Personal & Teaching: prop= 0.286, diff=-0.248, p-value= 0.046, conf.int=(-0.482, -0.013), n=35

Good contact: 
	Control            : prop= 0.333, n=3
	Personal           : prop= 1.000, diff= 0.667, p-value= 0.206, conf.int=(-0.133,  1.000), n=5
	Teaching           : prop= ---  , diff= ---  , p-value= ---  , conf.int=( ---  ,  ---  ), n=0
	Personal & Teaching: prop= ---  , diff= ---  , p-value= ---  , conf.int=( ---  ,  ---  ), n=0




Result's for 875 'possible' editors:
============================================================
Good outcome: 
	Control            : prop= 0.465, n=200
	Personal           : prop= 0.465, diff= 0.000, p-value= 1.000, conf.int=(-0.096,  0.096), n=215
	Teaching           : prop= 0.449, diff=-0.016, p-value= 0.803, conf.int=(-0.114,  0.081), n=243
	Personal & Teaching: prop= 0.449, diff=-0.016, p-value= 0.803, conf.int=(-0.114,  0.081), n=243

Improves: 
	Control            : prop= 0.214, n=56
	Personal           : prop= 0.218, diff= 0.004, p-value= 1.000, conf.int=(-0.141,  0.149), n=78
	Teaching           : prop= 0.233, diff= 0.018, p-value= 0.961, conf.int=(-0.136,  0.173), n=86
	Personal & Teaching: prop= 0.233, diff= 0.018, p-value= 0.961, conf.int=(-0.136,  0.173), n=86

Contact: 
	Control            : prop= 0.030, n=200
	Personal           : prop= 0.079, diff= 0.049, p-value= 0.049, conf.int=( 0.001,  0.097), n=215
	Teaching           : prop= 0.041, diff= 0.011, p-value= 0.711, conf.int=(-0.028,  0.050), n=243
	Personal & Teaching: prop= 0.041, diff= 0.011, p-value= 0.711, conf.int=(-0.028,  0.050), n=243

Stays: 
	Control            : prop= 0.280, n=200
	Personal           : prop= 0.363, diff= 0.083, p-value= 0.090, conf.int=(-0.011,  0.177), n=215
	Teaching           : prop= 0.354, diff= 0.074, p-value= 0.120, conf.int=(-0.017,  0.165), n=243
	Personal & Teaching: prop= 0.354, diff= 0.074, p-value= 0.120, conf.int=(-0.017,  0.165), n=243

Good contact: 
	Control            : prop= 0.667, n=6
	Personal           : prop= 0.588, diff=-0.078, p-value= 1.000, conf.int=(-0.601,  0.444), n=17
	Teaching           : prop= 0.600, diff=-0.067, p-value= 1.000, conf.int=(-0.618,  0.484), n=10
	Personal & Teaching: prop= 0.600, diff=-0.067, p-value= 1.000, conf.int=(-0.618,  0.484), n=10




Result's for 116 'golden' editors:
============================================================
Good outcome: 
	Control            : prop= 0.500, n=32
	Personal           : prop= 0.588, diff= 0.088, p-value= 0.637, conf.int=(-0.182,  0.358), n=34
	Teaching           : prop= 0.391, diff=-0.109, p-value= 0.600, conf.int=(-0.410,  0.193), n=23
	Personal & Teaching: prop= 0.391, diff=-0.109, p-value= 0.600, conf.int=(-0.410,  0.193), n=23

Improves: 
	Control            : prop= 0.050, n=20
	Personal           : prop= 0.048, diff=-0.002, p-value= 1.000, conf.int=(-0.137,  0.132), n=21
	Teaching           : prop= 0.000, diff=-0.050, p-value= 1.000, conf.int=(-0.196,  0.096), n=10
	Personal & Teaching: prop= 0.000, diff=-0.050, p-value= 1.000, conf.int=(-0.196,  0.096), n=10

Contact: 
	Control            : prop= 0.125, n=32
	Personal           : prop= 0.206, diff= 0.081, p-value= 0.582, conf.int=(-0.127,  0.289), n=34
	Teaching           : prop= 0.000, diff=-0.125, p-value= 0.217, conf.int=(-0.277,  0.027), n=23
	Personal & Teaching: prop= 0.000, diff=-0.125, p-value= 0.217, conf.int=(-0.277,  0.027), n=23

Stays: 
	Control            : prop= 0.625, n=32
	Personal           : prop= 0.618, diff=-0.007, p-value= 1.000, conf.int=(-0.249,  0.234), n=34
	Teaching           : prop= 0.435, diff=-0.190, p-value= 0.261, conf.int=(-0.491,  0.110), n=23
	Personal & Teaching: prop= 0.435, diff=-0.190, p-value= 0.261, conf.int=(-0.491,  0.110), n=23

Good contact: 
	Control            : prop= 0.750, n=4
	Personal           : prop= 0.857, diff= 0.107, p-value= 1.000, conf.int=(-0.497,  0.712), n=7
	Teaching           : prop= ---  , diff= ---  , p-value= ---  , conf.int=( ---  ,  ---  ), n=0
	Personal & Teaching: prop= ---  , diff= ---  , p-value= ---  , conf.int=( ---  ,  ---  ), n=0

Saturday, Dec. 17th

edit

I want to be able to support Steven and Maryana and the experiments that they are doing with message templates. Recently, they requested that I help them put together some datasets. What follows are the fields they asked about:

  1. their edit count to all namespaces before and after warning
  2. overall edit count pre/post warning
  3. block/ban record pre/post warning
  4. number of edits to their talk page pre/post warning
  5. number of other warnings pre/post warning
  6. articles created pre/post warning
  7. deleted edits pre/post warning
  8. deleted articles pre/post warning

It looks like I be starting with a list of editors, though I may have to discover that too.

If I have a pattern I can match on the comment of the edit that leaves the message (e.g. "([[WP:HG|HG]])") as well as some content that can be matched within the message itself (e.g. "<!-- exp-template-foo -->" or "{{z78}}") I can find the message postings.

Figuring out when the message was read is a more difficult matter that we only have a half solution to at the moment. I'll ignore that for the time being since changing the pivoting moment from the time the message was posted to the time that the message was read should be trivial once we've solved the larger issue.

Now, there are a few different types of things that are being asked for, but they do all pivot around a user, at a timestamp.


I'm not sure how I want Steven and Maryana to interface with a system that gathers this data, but that's OK for now. No matter if it is a script they'll have to run or a web interface they can pull up, it will take the same parameters.

I think I'll start with exploring this problem with a python script.

17:34, 17 December 2011 (UTC)

I've got to call it quits for the day, but I have a pretty good idea of how to do this work somewhat efficiently with a combination of the slave database and the Wikipedia API (for getting texts). Time to ping Ryan.

18:10, 17 December 2011 (UTC)