In [5]:
cd ../report/
/home/scott/Documents/git/neukrill-net-work/report
In [6]:
import csv
In [7]:
import numpy as np
In [8]:
with open('leaderboardscores.csv', 'rb') as csvfile:
lb = csv.reader(csvfile, delimiter=';')
for row in lb:
print row[3]
Score
0.565971
0.580300
0.587967
0.604112
0.606921
0.607333
0.610072
0.610964
0.613981
0.617123
0.619674
0.619722
0.620708
0.623529
0.625620
0.627582
0.629008
0.633647
0.634813
0.637492
0.637510
0.639206
0.641510
0.644150
0.645201
0.645573
0.646626
0.649622
0.649712
0.650670
0.654808
0.655795
0.656547
0.657061
0.660353
0.662100
0.662223
0.662241
0.662924
0.665556
0.667073
0.675780
0.677713
0.677916
0.678478
0.679511
0.681684
0.683645
0.687029
0.689614
0.692339
0.697469
0.699254
0.699467
0.700180
0.701704
0.704582
0.704775
0.704782
0.705380
0.705742
0.706741
0.707233
0.707695
0.713836
0.714217
0.718674
0.719978
0.720527
0.720987
0.722385
0.723187
0.724232
0.725161
0.725254
0.725418
0.728190
0.730720
0.732012
0.732933
0.733551
0.735462
0.738978
0.740716
0.740879
0.741624
0.743406
0.744238
0.745370
0.748310
0.749094
0.750231
0.750697
0.750743
0.751415
0.752094
0.752475
0.752682
0.752869
0.753087
0.755114
0.755295
0.759122
0.762580
0.764690
0.765938
0.766397
0.768097
0.769755
0.769772
0.770842
0.771236
0.771482
0.772689
0.773826
0.774901
0.775228
0.775291
0.775889
0.776284
0.776784
0.776868
0.777557
0.778229
0.778386
0.780433
0.782181
0.784492
0.785569
0.787939
0.792364
0.792476
0.792636
0.793735
0.796267
0.797512
0.801297
0.803575
0.804115
0.804517
0.812123
0.813159
0.813314
0.813716
0.814870
0.815904
0.816074
0.817114
0.820304
0.821521
0.823529
0.823540
0.825269
0.826458
0.826782
0.827810
0.831297
0.832157
0.834590
0.836179
0.837303
0.838255
0.840356
0.840964
0.843820
0.844198
0.844542
0.847867
0.850158
0.854385
0.855241
0.858475
0.861677
0.863606
0.865116
0.867833
0.871236
0.873478
0.874600
0.875768
0.876052
0.881509
0.882130
0.883367
0.888328
0.890085
0.893271
0.896605
0.898542
0.898886
0.900712
0.901230
0.902273
0.903767
0.904069
0.904137
0.905352
0.908481
0.910012
0.913130
0.916023
0.919950
0.920408
0.921474
0.922169
0.923645
0.924679
0.927448
0.935237
0.935645
0.936840
0.938659
0.940522
0.942227
0.943239
0.951936
0.952637
0.952850
0.954263
0.955163
0.956687
0.961772
0.963405
0.965503
0.965960
0.966742
0.968010
0.970017
0.971538
0.971570
0.971942
0.973350
0.974608
0.974850
0.976416
0.976585
0.977135
0.977396
0.977900
0.978967
0.979025
0.984750
0.985966
0.987493
0.987493
0.987815
0.992666
0.996323
0.997694
1.001131
1.009506
1.009699
1.011450
1.016647
1.018010
1.026383
1.031717
1.033327
1.035482
1.035992
1.041526
1.044998
1.045839
1.046305
1.049833
1.050055
1.050766
1.059868
1.071417
1.072072
1.074380
1.076766
1.083163
1.084866
1.088833
1.089005
1.092200
1.096055
1.098720
1.101912
1.103008
1.108609
1.108734
1.112911
1.113133
1.115640
1.116943
1.124535
1.128475
1.132911
1.141507
1.149471
1.157169
1.161414
1.161673
1.161783
1.167266
1.168983
1.176729
1.181642
1.184776
1.186738
1.189349
1.190717
1.190953
1.193860
1.197484
1.201588
1.203163
1.203798
1.208288
1.211943
1.217267
1.222136
1.222351
1.222566
1.228215
1.228503
1.229747
1.233844
1.241520
1.243074
1.250195
1.253741
1.274862
1.275341
1.276468
1.277166
1.278179
1.281175
1.285861
1.289216
1.294394
1.295379
1.299149
1.303136
1.315021
1.319577
1.320512
1.322939
1.332551
1.339141
1.339497
1.342843
1.351688
1.358359
1.365143
1.367245
1.368226
1.371158
1.373435
1.376007
1.377206
1.381451
1.381537
1.382370
1.384112
1.384497
1.384686
1.384746
1.386740
1.387958
1.389328
1.394127
1.394484
1.396032
1.396052
1.397022
1.397984
1.399129
1.399583
1.399703
1.401619
1.401825
1.402172
1.402999
1.403287
1.403574
1.404131
1.404287
1.407560
1.407777
1.410581
1.411682
1.412518
1.413791
1.414461
1.415499
1.415994
1.416676
1.418837
1.421881
1.422699
1.425496
1.425691
1.427430
1.427625
1.432849
1.436124
1.436455
1.436586
1.436655
1.439741
1.441629
1.458145
1.459299
1.461734
1.466391
1.471224
1.472479
1.477400
1.480054
1.488954
1.489425
1.490504
1.497918
1.497988
1.499882
1.505522
1.507244
1.512550
1.520961
1.521299
1.526712
1.527532
1.531933
1.534719
1.547803
1.553338
1.565001
1.574728
1.583230
1.585528
1.587075
1.588981
1.598490
1.616778
1.647741
1.652255
1.653273
1.653358
1.656898
1.661566
1.664645
1.665968
1.669426
1.679515
1.687886
1.701276
1.704748
1.705541
1.707644
1.737042
1.748216
1.760753
1.762166
1.768019
1.772463
1.784778
1.798854
1.810620
1.811868
1.813165
1.814893
1.822912
1.827721
1.829074
1.837086
1.842237
1.847670
1.850615
1.854535
1.856318
1.865422
1.871325
1.878938
1.890211
1.897622
1.901130
1.907950
1.913843
1.924661
1.925373
1.927763
1.929314
1.939973
1.951007
1.951604
1.952125
1.952207
1.957005
1.960133
1.964753
1.974312
1.984107
1.990375
1.991057
2.011439
2.014052
2.017504
2.025091
2.030986
2.033871
2.036350
2.048687
2.051488
2.079291
2.080759
2.085366
2.094338
2.094790
2.107561
2.117703
2.126454
2.142335
2.152715
2.153389
2.157474
2.163301
2.167550
2.173551
2.173581
2.185156
2.196391
2.197002
2.214292
2.218532
2.235007
2.245985
2.246845
2.248132
2.269167
2.269871
2.275809
2.276004
2.278787
2.279902
2.280049
2.293068
2.303918
2.305248
2.308803
2.321829
2.323347
2.323373
2.325202
2.328098
2.332684
2.342751
2.366938
2.368950
2.369048
2.369766
2.372362
2.377840
2.379998
2.383382
2.383851
2.385897
2.390804
2.407486
2.419961
2.427642
2.434292
2.434467
2.438705
2.441377
2.442057
2.448713
2.463525
2.473241
2.474501
2.481733
2.483032
2.484866
2.486346
2.493089
2.499725
2.503599
2.512334
2.519102
2.550234
2.551539
2.553976
2.554533
2.555366
2.564483
2.569068
2.579418
2.583740
2.588582
2.593524
2.620194
2.620719
2.626746
2.637930
2.653109
2.657105
2.668967
2.679293
2.682544
2.687989
2.691352
2.692815
2.706986
2.719213
2.720342
2.721933
2.773131
2.803589
2.822194
2.822709
2.824125
2.824876
2.826727
2.838668
2.853793
2.866185
2.866457
2.882361
2.884034
2.887835
2.900000
2.900978
2.905170
2.910367
2.913083
2.923557
2.926808
2.928097
2.963693
2.969454
3.005369
3.005902
3.012048
3.016048
3.025236
3.034921
3.039154
3.050716
3.085989
3.103884
3.104722
3.105332
3.117419
3.123209
3.125729
3.144448
3.146239
3.150536
3.158541
3.162619
3.201931
3.262386
3.264571
3.266081
3.275882
3.286341
3.288693
3.288775
3.305361
3.326039
3.341117
3.359510
3.411141
3.411943
3.416136
3.418018
3.422119
3.422421
3.422503
3.422759
3.423243
3.423466
3.423862
3.423966
3.424125
3.424433
3.424502
3.424550
3.424843
3.425009
3.425098
3.425397
3.425397
3.425397
3.425397
3.425397
3.425397
3.425397
3.425540
3.425597
3.425936
3.426149
3.426296
3.426723
3.427598
3.446589
3.453585
3.474923
3.497342
3.528190
3.542735
3.564871
3.582036
3.607051
3.620839
3.628628
3.629904
3.653638
3.653664
3.661183
3.677357
3.678106
3.686628
3.695598
3.696134
3.707371
3.712441
3.731752
3.732046
3.736073
3.742662
3.744410
3.748770
3.758068
3.771637
3.772359
3.787888
3.798983
3.814621
3.815713
3.820406
3.822267
3.826216
3.841860
3.872299
3.887454
3.890371
3.942393
4.042344
4.093341
4.103614
4.124615
4.142381
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.161789
4.162038
4.162195
4.172874
4.176986
4.178749
4.189711
4.224316
4.245005
4.287871
4.304033
4.307981
4.332270
4.332561
4.332700
4.336006
4.340318
4.341123
4.347023
4.368273
4.371678
4.409168
4.425855
4.440180
4.473907
4.493356
4.494972
4.499391
4.500724
4.505164
4.570783
4.576048
4.600158
4.613431
4.634807
4.694596
4.706106
4.713458
4.714704
4.716169
4.733144
4.733294
4.738197
4.761677
4.780543
4.782961
4.793395
4.794063
4.794443
4.795774
4.795786
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.795791
4.797186
4.798613
4.798761
4.837443
4.911969
4.912388
5.022295
5.080894
5.095313
5.106396
5.106506
5.121342
5.272354
5.280247
5.322231
5.362395
5.392852
5.775806
5.984996
6.203733
6.352624
6.391673
6.558707
6.711469
6.830148
6.969978
7.769392
7.932273
8.168250
8.410127
9.631407
11.039150
11.244433
14.547863
15.007985
15.157149
15.737932
16.256947
18.074931
18.215245
19.113193
21.748155
21.766870
22.158432
25.527604
29.434228
32.409577
34.520945
In [9]:
import pandas as pd
In [13]:
df = pd.read_csv('leaderboardscores.csv', sep=';')
saved_column = df.Score
In [11]:
print df
# Δrank \
0 1 —
1 2 —
2 3 —
3 4 ↑2
4 5 —
5 6 ↓2
6 7 ↑1
7 8 ↓1
8 9 —
9 10 ↑2
10 11 ↑2
11 12 ↓2
12 13 ↓2
13 14 ↑1
14 15 ↑2
15 16 —
16 17 ↓3
17 18 ↑9
18 19 ↑7
19 20 ↓2
20 21 ↓2
21 22 ↓2
22 23 ↓2
23 24 ↓1
24 25 ↓3
25 26 ↓1
26 27 ↓3
27 28 —
28 29 ↑2
29 30 ↓1
... ... ...
1020 1020 —
1021 1021 —
1022 1022 —
1023 1023 —
1024 1024 —
1025 1025 ↑1
1026 1026 ↓1
1027 1027 —
1028 1028 —
1029 1029 —
1030 1030 —
1031 1031 —
1032 1032 —
1033 1033 —
1034 1034 —
1035 1035 —
1036 1036 ↑1
1037 1037 ↓1
1038 1038 ↑1
1039 1039 ↓1
1040 1040 —
1041 1041 —
1042 1042 —
1043 1043 —
1044 1044 —
1045 1045 —
1046 1046 —
1047 1047 —
1048 1048 —
1049 1049 —
Team Name * in the money \
0 â Deep Sea â ...
1 Happy Lantern Festival ...
2 Poisson Process ...
3 Junonia
4 âDeepsea Challengerâ ...
5 AuroraXie
6 Maxim Milakov
7 Ilya Kostrikov
8 old-ufo
9 nagadomi
10 zzspar
11 Biolab ...
12 Alexander Ryzhkov (MSU, Moscow, Russia)
13 beile
14 harkmug
15 , Griffin Liang and 2 others last submitted o...
16 DeepOcean
17 BAH_kungfu-cats ...
18 🐙 axe 🐬 kw 🐙 ...
19 Pikqu
20 toshi_k
21 Jae Hyun Lim
22 Apollo ...
23 3 cobblers ...
24 khyh
25 Niklas Köhler ...
26 Matt & Eben ...
27 Jianmin Sun
28 Free as air and water ...
29 L Miksys
... ...
1020 Herman
1021 Jason Forbes
1022 Andrew Koe
1023 planktonet ...
1024 Dennis Liang
1025 KeithJ
1026 An jinwon
1027 Heavy Sweet Crude
1028 Jay Moore
1029 afterhours
1030 Xiaoman
1031 Steven Mortimer
1032 Jiangyuan
1033 BigDota
1034 hkhanal
1035 pyunpyun_maru
1036 SergeySorokin
1037 Shturman
1038 alex 2
1039 onur BAÞ
1040 yuanqj9290609
1041 r2007
1042 Chamara Anuranga
1043 Jonas
1044 Shayn Weidner
1045 Thirst
1046 CharlieW
1047 scienceguy22 2
1048 Daniel Otero
1049 bbk
Score Entries Last Submission UTC (Best − Last Submission)
0 0.565971 96 Mon, 16 Mar 2015 17:32:03
1 0.580300 150 Mon, 16 Mar 2015 14:03:40 ...
2 0.587967 134 Mon, 16 Mar 2015 23:54:04 ...
3 0.604112 59 Mon, 16 Mar 2015 20:24:47 ...
4 0.606921 142 Mon, 16 Mar 2015 19:47:18 ...
5 0.607333 32 Mon, 16 Mar 2015 22:15:07
6 0.610072 27 Sat, 14 Mar 2015 18:36:14 ...
7 0.610964 51 Mon, 16 Mar 2015 20:47:09 ...
8 0.613981 82 Mon, 16 Mar 2015 21:23:27
9 0.617123 31 Mon, 16 Mar 2015 05:57:34 ...
10 0.619674 174 Mon, 16 Mar 2015 18:47:59 ...
11 0.619722 74 Mon, 16 Mar 2015 14:50:21 ...
12 0.620708 67 Mon, 16 Mar 2015 23:26:23 ...
13 0.623529 28 Mon, 16 Mar 2015 21:01:15 ...
14 0.625620 28 Mon, 16 Mar 2015 20:42:44 ...
15 0.627582 168 Mon, 16 Mar 2015 02:37:25 ...
16 0.629008 64 Mon, 16 Mar 2015 20:30:26
17 0.633647 49 Mon, 16 Mar 2015 23:42:59
18 0.634813 137 Mon, 16 Mar 2015 18:09:35 ...
19 0.637492 61 Mon, 16 Mar 2015 13:27:53 ...
20 0.637510 120 Mon, 16 Mar 2015 20:35:07 ...
21 0.639206 46 Mon, 16 Mar 2015 16:13:49 ...
22 0.641510 242 Mon, 16 Mar 2015 23:54:24 ...
23 0.644150 111 Mon, 16 Mar 2015 17:20:36 ...
24 0.645201 36 Mon, 16 Mar 2015 23:42:42
25 0.645573 24 Thu, 12 Mar 2015 10:49:48
26 0.646626 42 Mon, 16 Mar 2015 23:36:42 ...
27 0.649622 67 Mon, 23 Feb 2015 23:33:30 ...
28 0.649712 75 Mon, 16 Mar 2015 22:07:24 ...
29 0.650670 32 Mon, 16 Mar 2015 12:49:14 ...
... ... ... ...
1020 5.984996 1 Mon, 09 Mar 2015 18:47:39
1021 6.203733 3 Sat, 14 Feb 2015 19:36:32
1022 6.352624 2 Sat, 14 Feb 2015 15:34:51
1023 6.391673 6 Tue, 03 Mar 2015 08:38:04 ...
1024 6.558707 4 Sat, 14 Feb 2015 14:48:32
1025 6.711469 1 Thu, 05 Mar 2015 08:49:44
1026 6.830148 3 Tue, 24 Feb 2015 06:50:50 ...
1027 6.969978 1 Tue, 27 Jan 2015 01:01:00
1028 7.769392 1 Fri, 02 Jan 2015 06:29:29
1029 7.932273 2 Tue, 10 Feb 2015 04:25:48 ...
1030 8.168250 1 Tue, 06 Jan 2015 08:38:55
1031 8.410127 1 Wed, 17 Dec 2014 13:47:41
1032 9.631407 1 Sun, 04 Jan 2015 04:30:33 ...
1033 11.039150 3 Fri, 20 Feb 2015 08:23:12 ...
1034 11.244433 2 Tue, 06 Jan 2015 04:42:38
1035 14.547863 1 Mon, 09 Mar 2015 23:00:55
1036 15.007985 4 Sun, 25 Jan 2015 09:44:17
1037 15.157149 5 Thu, 12 Feb 2015 10:55:00 ...
1038 15.737932 1 Sun, 18 Jan 2015 19:56:24
1039 16.256947 4 Wed, 11 Mar 2015 19:21:52 ...
1040 18.074931 1 Wed, 11 Feb 2015 15:43:50
1041 18.215245 3 Wed, 21 Jan 2015 13:49:24
1042 19.113193 1 Wed, 14 Jan 2015 15:21:43
1043 21.748155 5 Thu, 05 Feb 2015 13:51:17
1044 21.766870 1 Tue, 03 Mar 2015 07:16:13
1045 22.158432 1 Mon, 29 Dec 2014 17:52:41
1046 25.527604 1 Tue, 03 Mar 2015 22:54:21
1047 29.434228 1 Sun, 04 Jan 2015 09:02:16
1048 32.409577 2 Mon, 09 Feb 2015 15:10:19 ...
1049 34.520945 1 Mon, 09 Mar 2015 17:41:23
[1050 rows x 6 columns]
In [14]:
scores = []
with open('leaderboardscores.csv', 'rb') as csvfile:
lb = csv.reader(csvfile, delimiter=';')
for i,row in enumerate(lb):
if i==0:
continue
scores.append(float(row[3]))
In [15]:
scores = np.array(scores)
In [16]:
scores
Out[16]:
array([ 0.565971, 0.5803 , 0.587967, ..., 29.434228, 32.409577,
34.520945])
In [17]:
import matplotlib.mlab as mlab
import matplotlib.pyplot as plt
In [18]:
%pylab
%matplotlib inline
Using matplotlib backend: agg
Populating the interactive namespace from numpy and matplotlib
In [19]:
# evaluate the histogram
values, base = np.histogram(scores, bins=len(np.unique(scores)))
#evaluate the cumulative
cumulative = np.cumsum(values)
cumulative = (cumulative+0.0) / cumulative[-1]
# plot the cumulative function
plt.plot(base[:-1], cumulative, c='blue')
plt.plot([scores[0],scores[0]],[0,1], c='green')
plt.plot([0.704582,0.704582],[0,1], c='green')
plt.xlabel('Leaderboard log-loss')
plt.ylabel('CDF')
plt.grid(True)
plt.show()
In [20]:
# evaluate the histogram
values, base = np.histogram(scores, bins=250)
In [21]:
li = scores<4.795791
# evaluate the histogram
values, base = np.histogram(scores[li], bins=100)
# plot the cumulative function
#plt.plot(base[:-1], values, c='blue')
plt.bar(base[:-1], values, width=(base[1]-base[0]))
plt.plot([scores[0],scores[0]],[0,45], c='green')
plt.plot([0.704582,0.704582],[0,45], c='red')
plt.plot([4.161789,4.161789],[0,45], c='grey')
#plt.plot([4.795791,4.795791],[0,45], c='grey')
plt.xlabel('Leaderboard log-loss')
plt.ylabel('Count')
plt.grid(True)
plt.savefig("leaderboard.svg", close=False, verbose=True)
In [22]:
import seaborn as sns
In [65]:
li = scores<4.795791
# evaluate the histogram
values, base = np.histogram(scores[li], bins=100)
# plot the cumulative function
#plt.plot(base[:-1], values, c='blue')
plt.bar(base[:-1], values, width=(base[1]-base[0]), edgecolor='None')
plt.plot([scores[0],scores[0]],[0,45], '--', c='green')
plt.plot([0.704582,0.704582],[0,45], '--', c=[1, .25, .25])
plt.plot([4.161789,4.161789],[0,45], '--', c=[.25, .25, .25])
plt.plot([4.795791,4.795791],[0,45], '--', c='black')
plt.tick_params(axis='both', which='major', labelsize=22)
plt.tick_params(axis='both', which='minor', labelsize=22)
plt.xlabel('Log-loss score on leaderboard', fontsize=32)
plt.ylabel('Number of teams', fontsize=32)
plt.grid(True)
plt.savefig("leaderboard_sb.svg", bbox_inches='tight')
Content source: Neuroglycerin/neukrill-net-work
Similar notebooks: