Skip to content

Instantly share code, notes, and snippets.

@eliask
Created May 3, 2016 20:57
Show Gist options
  • Save eliask/750292f17135e5959708e98a958c1e8e to your computer and use it in GitHub Desktop.
Save eliask/750292f17135e5959708e98a958c1e8e to your computer and use it in GitHub Desktop.
Random data munging as a Service at Akureyri :)
#!/usr/bin/env python3
import re
from itertools import *
A='''
Cod
Ár (Year) Lína (Long line) Dragnót (Demersal seine) Botnvarpa (Demersal trawl) Net (Gill net) Öll veiðarfæri (All gear)
Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight)
Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk.
(Discards) (% disc.) (Discards) (% disc.) (C.V) (Discards) (% disc.) (Discards) (% disc.) (C.V) (Discards) (% disc.) (Discards) (% disc.) (C.V) (Discards) (% disc.) (Discards) Tonn (% disc.) (C.V) (Discards) (% disc.) (Discards) (% disc.)
n Tonn n Tonn n Tonn n n Tonn
2001 1304 7 854 1,81 10 1056 24,71 1366 8,06 11 250 0,73 138 0,14 10 1023 13,18 2810 5,24 6 3633 5,6 5168 2,41
2002 190 1,26 97 0,23 14 706 18 938 7 9 303 0,99 179 0,21 8 175 2,82 350 0,79 15 1374 2,46 1564 0,84
2003 25 0,16 13 0,03 70 56 1,3 39 0,29 33 47 0,14 28 0,03 41 206 3,52 318 0,85 12 334 0,56 398 0,22
2004 389 1,72 199 0,35 9 365 7,1 470 3,3 34 575 1,82 466 0,5 8 193 3,31 302 0,81 13 1522 2,34 1437 0,71
2005 256 1,02 152 0,22 12 64 1,65 61 0,48 30 1135 4,45 1140 1,38 5 396 8,28 711 2,26 5 1851 3,12 2064 1,05
2006 395 1,48 194 0,27 8 112 4 158 1,5 70 1146 4,43 1075 1,34 6 155 4,62 345 1,48 10 1808 3,08 1772 0,96
2007 98 0,45 43 0,07 27 116 4,7 104 1,2 21 1433 6,83 1734 2,48 8 159 5 362 1,55 11 1806 3,73 2243 1,4
2008 343 1,88 195 0,36 9 195 7,3 137 1,6 10 353 2,16 254 0,45 9 15 0,57 19 0,1 24 906 2,27 605 0,44
2009 39 0,19 16 0,03 42 23 0,89 15 0,14 27 741 3,48 670 0,87 7 23 0,8 36 0,16 28 826 1,75 737 0,43
2010 297 1,91 169 0,09 11 197 10,7 267 3,2 19 148 0,84 103 0,14 20 19 0,94 26 0,16 20 661 1,78 565 0,37
2011 35 0,23 16 0,01 28 45 0,27 34 0,05 79 30 1,44 30 0,19 15 110 0,32 80 0,05
2012 108 0,48 43 0,06 18 37 2,34 34 0,34 54 652 3,08 583 0,71 10 54 2,7 96 0,56 13 851 1,8 756 0,43
2013 189 0,85 89 0,12 39 866 3,52 832 0,85 9 1055 2,25 921 0,53
2014 104 0,04 30 0,01 34 57 2,64 114 0,6 20 161 0,06 117 0,12
2015 205 4,55 784 1,76 28 989 8,34 1354 2,43 7 1194 7,3 2138 2,13
Haddock
Ár (Year) Lína (Long line) Dragnót (Demersal seine) Botnvarpa (Demersal trawl) Öll veiðarfæri (All gear)
Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight) Fjöldi (Numbers) Þyngd (Weight)
Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk. Skekkja Brottkast % brottk. Brottkast % brottk.
(Discards) (% disc.) (Discards) (% disc.) (C.V) (Discards) (% disc.) (Discards) (% disc.) (C.V) (Discards) (% disc.) (Discards) (% disc.) (C.V) (Discards) (% disc.) (Discards) (% disc.)
n Tonn n Tonn n Tonn n Tonn
2001 534 3,35 224 1,03 19 534 3,35 224 1,03
2002 186 1,98 78 0,57 29 1309 5,87 623 2,08 5 1495 4,72 701 1,61
2003 33 0,28 14 0,08 100 3478 14,77 2500 7,02 8 3511 9,94 2514 4,75
2004 64 0,42 24 0,1 28 349 8,33 310 3,9 23 2040 6 1099 2,2 7 2453 4,59 1433 1,77
2005 867 4,37 385 1,25 6 915 14,32 576 5,52 12 4351 13,33 2552 4,92 4 6133 10,42 3513 3,77
2006 1014 4,1 533 1,47 18 618 7,95 378 2,97 12 1882 5,95 945 2,08 6 3514 5,48 1856 1,97
2007 4 0,01 1 0 86 1788 18,99 1151 8,95 10 808 1,81 372 0,66 13 2600 2,76 1524 1,44
2008 163 0,64 72 0,21 33 1141 8,51 614 3,73 15 1083 2,71 512 1,01 16 2387 3,03 1198 1,19
2009 19 0,09 6 0,02 42 1053 9,23 785 5,19 25 1019 3,65 471 1,21 8 2091 3,46 1262 1,57
2010 23 0,14 8 0,03 35 14 0,19 5 0,05 65 890 4,32 383 1,35 8 927 2,09 396 0,63
2011 3 0,02 1 0,01 71 58 0,44 30 0,14 39 61 0,22 31 0,07
2012 0 0 0 0 0 65 0,54 32 0,16 38 65 0,54 32 0,08
2013 0 0 0 0 0 92 0,99 45 0,24 27 92 0,99 45 0,12
2014 6 0,02 2 0,01 0 6 0,17 2 0,01
2015 3 0,06 1 0,01 48 223 4,12 141 1,17 23 226 2,17 142 0,64
'''
stuff = ['L\xc3\xadna (Long line)',
'Dragn\xc3\xb3t (Demersal seine)',
'Botnvarpa (Demersal trawl)',
'Net (Gill net)',
'\xc3\x96ll vei\xc3\xb0arf\xc3\xa6ri (All gear)']
Block = [
'Numbers (Discards)',
'Numbers (% disc.)',
'Weight (Discards)',
'Weight (% disc.)',
'Weight (C.V)'
]
B = [x.strip().split('\t') for x in A.splitlines()]
cod = B[7:7+15]
haddock = B[-15:]
S=list(range(1, 27, 5))
def row(x, name):
a=[]
for i,j in zip(S, S[1:]):
a.append(x[i:j])
for s_, block in zip(stuff, a):
yield [name, x[0], s_] + block
C = chain([list(row(x,'Cod')) for x in cod], [list(row(x,'Haddock')) for x in cod])
print '\t'.join('Fish Year Type'.split() + Block)
for y in C:
for x in y:
print '\t'.join(x)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment