Sea Level: Tidal Data

Notebook for analysing tide measurement data for 1512 tide gauges worldwide. I use the Revised Local Reference (RLR) data set from Permanent Service of Mean Sea Level . The RLR datum is set to 7000 mm below mean sea level therefore the values are all in the range of 6000 to 8000 mm.

All UK tide gauge data is included in the PSMSL data set, most of the data from the University of Hawaii is included as well.

Data source is Permanent Service of Mean Sea Level (http://www.psmsl.org/data/obtaining/complete.php, RLR monthly)

Data set with monthly mean data.

Data has been obtained on 30 January 2019.

Load libraries

In [70]:
%matplotlib inline

from IPython.core.interactiveshell import InteractiveShell
from datetime import datetime

import glob
import os
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib
import json
import matplotlib.pyplot as plt

InteractiveShell.ast_node_interactivity = "all"
pd.options.display.max_rows = 200
#matplotlib.rcParams['svg.fonttype'] = 'none'

Setup the data

First: Read meta data for all stations of PSMSL

In [72]:
#parse errorflags
stations_errorflag = 'data/psmsl_data/filelist.txt'

errors = pd.read_csv(stations_errorflag, sep=';', header=None, usecols=[0, 6], names=['id', 'latitude', 'longitude', 'locataion', 'coastline', 'station', 'flag' ])

#parse meta data
meta_info = 'data/metadata_psmsl.csv'

stations = pd.read_csv(meta_info, header=0, names=['location', 'ID', 'latitude', 'longitude', 'gloss id', 'country', 'date', 'coastline', 'station'])

#comibe meta data and error flags
stations = stations.merge(errors, left_on='ID', right_on='id')

stations = stations.drop('ID', 1)

len(errors)
len(stations)

stations.head()
Out[72]:
1512
Out[72]:
1512
Out[72]:
location latitude longitude gloss id country date coastline station id flag
0 REYKJAVIK 64.151 -21.940 229.0 ISL 27/06/2018 10 1 638 N
1 GRINDAVIK 63.833 -22.433 NaN ISL 01/01/1980 10 11 877 N
2 TORSHAVN 62.017 -6.767 237.0 FRO 30/10/2007 15 11 839 N
3 BARENTSBURG 78.067 14.250 231.0 SJM 09/01/2018 25 1 541 N
4 BARENTSBURG II (SPITSBERGEN) 78.067 14.250 231.0 SJM 17/01/2003 25 2 547 N
In [73]:
#convert capitals to lowercase with a capitalized first letter
def convert_location_names(str):
    conversion = str.title()
    return conversion

stations['location'] = stations['location'].apply(convert_location_names)

Second: Read all the tide data from folder

In [75]:
#parse file

def parse_tides(filename):
    filepath = 'data/psmsl_data/data/' + str(filename) + '.rlrdata'
    df = pd.read_csv(filepath, sep=';', header=None, names=['year-month', 'tide', 'missing day', 'flag for attention'])

    df['flag for attention'] = df['flag for attention'].apply(lambda x: '{0:0>3}'.format(x))
    df['year'] = df['year-month'].apply(np.floor).astype('int')
    df['month'] = ((((df['year-month'] - df['year'])*24)+1)/2).apply(np.around).astype('int')
    df['day'] = 1 #due the monthly averages, no days are present, set days to 1
    df['timestamp'] = pd.to_datetime(df[['year', 'month', 'day']], errors='coerce')
    df['ID'] = filename
    df['ID'] = df['ID'].astype('int')

    df = df.drop('year-month', 1)
    df = df.drop('year', 1)
    df = df.drop('month', 1)
    df = df.drop('day', 1)
    
    #print (filepath)
    
    return df

#filepath for complete tide data set
filepath = 'data/psmsl_data/tideData_psmsl_complete.csv'

if os.path.exists(filepath):
    df = pd.read_csv(filepath, usecols=[1,2,3,4,5])
    df['flag for attention'] = df['flag for attention'].apply(lambda x: '{0:0>3}'.format(x))
    df['timestamp'] = pd.to_datetime(df['timestamp'], errors='coerce')
else:
    df = pd.concat([parse_tides(f) for f in stations['id']])
    #replace null values
    df['tide'] = df['tide'].replace(-99999,np.nan)
    df.to_csv(filepath)

df['ID'].nunique()
df.head()
Out[75]:
1512
Out[75]:
tide missing day flag for attention timestamp ID
0 6980.0 0 000 1956-05-01 638
1 6840.0 0 000 1956-06-01 638
2 6890.0 0 000 1956-07-01 638
3 6830.0 0 000 1956-08-01 638
4 6830.0 0 000 1956-09-01 638

Third: Merge meta data and tide data

In [76]:
df = df.merge(stations, left_on='ID', right_on='id')

df = df.drop('id', 1)

df['ID'].nunique()
df.head()
Out[76]:
1512
Out[76]:
tide missing day flag for attention timestamp ID location latitude longitude gloss id country date coastline station flag
0 6980.0 0 000 1956-05-01 638 Reykjavik 64.151 -21.94 229.0 ISL 27/06/2018 10 1 N
1 6840.0 0 000 1956-06-01 638 Reykjavik 64.151 -21.94 229.0 ISL 27/06/2018 10 1 N
2 6890.0 0 000 1956-07-01 638 Reykjavik 64.151 -21.94 229.0 ISL 27/06/2018 10 1 N
3 6830.0 0 000 1956-08-01 638 Reykjavik 64.151 -21.94 229.0 ISL 27/06/2018 10 1 N
4 6830.0 0 000 1956-09-01 638 Reykjavik 64.151 -21.94 229.0 ISL 27/06/2018 10 1 N
In [77]:
len(df)
Out[77]:
725650
In [78]:
df.to_csv('data/psmsl_data_complete_including_metadata.csv')

Filter data by quality flags

Data flagged for attention: 001 means data should be treated with caution, 010 indicates a mean tidal level (MTL) value in a mean sea level (MSL) time series

In [79]:
df.flag = df.flag.str.strip()

df['missing day'] = df['missing day'].replace("99",np.nan)

data_flagged = df[(df['flag for attention'] == '011')]

#data_flagged.sort_values('missing day', ascending=False)

data_without_flag = df[df['flag for attention'].isin(['001', '011']) == False]
#data_without_flag = df[df['flag for attention'].isin(['011']) == False]

#data_without_flag.sort_values('flag for attention')

data_without_flag.shape
df.shape

#89 Location sind geflaggt mit 001 und eine Location mit 011, gesamte Anzahl Locations 1478
Out[79]:
(723605, 14)
Out[79]:
(725650, 14)
In [80]:
df = data_without_flag
In [81]:
data_flagged = df[(df['flag for attention'] == '011')]
data_flagged
Out[81]:
tide missing day flag for attention timestamp ID location latitude longitude gloss id country date coastline station flag

Data selction

In [82]:
#function that evaluates how many empty values a station has and start and end of each station

def empty_values(dataframe):
    
    station = dataframe.set_index('timestamp').tide.resample('1A').mean()
    
    first_year = station.first_valid_index().year
    last_year = station.last_valid_index().year
    count_missing = station.isnull().sum()
    count_values = station.count()
    
    
    #tide_first = station.iloc[0]
    #station = station.sort_values(ascending=False)
    #tide_last = station.iloc[0]
    #tide_change = tide_last - tide_first
    
    result = {}

    result['Start'] = first_year
    result['End'] = last_year
    result['Valid Data Points'] = count_values
    result['Missing Data Points'] = count_missing
    
    return pd.Series(result) #create a series


#call function and collect all data
#clean_data = df.groupby(['Location', 'Country']).apply(empty_values).sort_values('Valid Data Points', ascending=False)

#clean_data = df.groupby(['ID']).apply(empty_values).sort_values('Valid Data Points', ascending=False)


#reset index

#clean_data = clean_data.reset_index()
In [83]:
data_subset_1985_2016 = df.set_index(['timestamp'])

data_subset_1985_2016 = data_subset_1985_2016.loc['1985-01-01':'2016-12-01']

data_subset_1985_2016 = data_subset_1985_2016.reset_index()
In [84]:
clean_data = data_subset_1985_2016.groupby(['ID']).apply(empty_values).sort_values('Valid Data Points', ascending=False)

clean_data = clean_data.reset_index()

data_subset_1985_2016_clean = clean_data[(clean_data['Start'] <= 1985)
                               & (clean_data['Valid Data Points'] >= 21) 
                               & (clean_data['End'] >= 2010) ]
data_subset_1985_2016_clean
data_subset_1985_2016_clean['ID'].nunique()
Out[84]:
ID End Missing Data Points Start Valid Data Points
0 1 2016 0 1985 32
1 1067 2016 0 1985 32
2 1065 2016 0 1985 32
3 1062 2016 0 1985 32
4 1060 2016 0 1985 32
5 1037 2016 0 1985 32
6 1036 2016 0 1985 32
7 1028 2016 0 1985 32
8 1027 2016 0 1985 32
9 1026 2016 0 1985 32
10 1001 2016 0 1985 32
11 999 2016 0 1985 32
12 997 2016 0 1985 32
13 996 2016 0 1985 32
14 985 2016 0 1985 32
15 984 2016 0 1985 32
16 982 2016 0 1985 32
17 955 2016 0 1985 32
18 954 2016 0 1985 32
19 953 2016 0 1985 32
20 934 2016 0 1985 32
21 933 2016 0 1985 32
22 837 2016 0 1985 32
23 835 2016 0 1985 32
24 832 2016 0 1985 32
25 829 2016 0 1985 32
26 825 2016 0 1985 32
27 1066 2016 0 1985 32
28 1068 2016 0 1985 32
29 823 2016 0 1985 32
30 1069 2016 0 1985 32
31 1116 2016 0 1985 32
32 1113 2016 0 1985 32
33 1112 2016 0 1985 32
34 1111 2016 0 1985 32
35 1109 2016 0 1985 32
36 1108 2016 0 1985 32
37 1107 2016 0 1985 32
38 1105 2016 0 1985 32
39 1104 2016 0 1985 32
40 1103 2016 0 1985 32
41 1102 2016 0 1985 32
42 1101 2016 0 1985 32
43 1100 2016 0 1985 32
44 1099 2016 0 1985 32
45 1098 2016 0 1985 32
46 1097 2016 0 1985 32
47 1096 2016 0 1985 32
48 1095 2016 0 1985 32
49 1094 2016 0 1985 32
50 1093 2016 0 1985 32
51 1091 2016 0 1985 32
52 1090 2016 0 1985 32
53 1089 2016 0 1985 32
54 1071 2016 0 1985 32
55 1070 2016 0 1985 32
56 824 2016 0 1985 32
57 822 2016 0 1985 32
58 483 2016 0 1985 32
59 637 2016 0 1985 32
60 595 2016 0 1985 32
61 571 2016 0 1985 32
62 567 2016 0 1985 32
63 566 2016 0 1985 32
64 564 2016 0 1985 32
65 563 2016 0 1985 32
66 541 2016 0 1985 32
67 539 2016 0 1985 32
68 538 2016 0 1985 32
69 526 2016 0 1985 32
70 523 2016 0 1985 32
71 522 2016 0 1985 32
72 521 2016 0 1985 32
73 520 2016 0 1985 32
74 518 2016 0 1985 32
75 510 2016 0 1985 32
76 509 2016 0 1985 32
77 508 2016 0 1985 32
78 499 2016 0 1985 32
79 498 2016 0 1985 32
80 497 2016 0 1985 32
81 489 2016 0 1985 32
82 487 2016 0 1985 32
83 486 2016 0 1985 32
84 485 2016 0 1985 32
85 636 2016 0 1985 32
86 638 2016 0 1985 32
87 819 2016 0 1985 32
88 680 2016 0 1985 32
89 817 2016 0 1985 32
90 816 2016 0 1985 32
91 815 2016 0 1985 32
92 814 2016 0 1985 32
93 813 2016 0 1985 32
94 812 2016 0 1985 32
95 809 2016 0 1985 32
96 808 2016 0 1985 32
97 786 2016 0 1985 32
98 759 2016 0 1985 32
99 758 2016 0 1985 32
... ... ... ... ... ...
444 408 2015 1 1985 30
448 761 2014 0 1985 30
449 2316 2014 0 1985 30
450 468 2016 2 1985 30
451 470 2016 2 1985 30
453 1549 2015 2 1985 29
454 1149 2016 3 1985 29
455 728 2013 0 1985 29
456 764 2016 3 1985 29
457 1495 2013 0 1985 29
458 61 2016 3 1985 29
459 704 2013 0 1985 29
460 1475 2013 0 1985 29
461 642 2013 0 1985 29
462 1468 2016 3 1985 29
463 1449 2013 0 1985 29
464 1448 2016 3 1985 29
466 641 2013 0 1985 29
467 606 2013 0 1985 29
468 604 2013 0 1985 29
469 602 2013 0 1985 29
470 599 2013 0 1985 29
471 598 2016 3 1985 29
474 446 2016 3 1985 29
475 496 2013 0 1985 29
476 1003 2013 0 1985 29
478 910 2016 3 1985 29
479 820 2016 3 1985 29
480 841 2013 0 1985 29
483 917 2013 0 1985 29
484 353 2013 0 1985 29
486 593 2016 4 1985 28
487 5 2016 4 1985 28
488 173 2012 0 1985 28
492 729 2012 0 1985 28
493 205 2014 2 1985 28
495 258 2016 4 1985 28
499 425 2016 4 1985 28
500 1473 2016 4 1985 28
502 374 2016 4 1985 28
503 1329 2016 4 1985 28
505 1156 2016 4 1985 28
507 1637 2016 4 1985 28
510 1421 2016 4 1985 28
511 1392 2013 4 1985 28
514 543 2014 2 1985 28
515 1192 2016 4 1985 28
516 810 2012 0 1985 28
518 826 2016 5 1985 27
519 1270 2014 3 1985 27
521 131 2011 1 1985 27
523 685 2011 0 1985 27
525 1297 2016 5 1985 27
527 1266 2011 0 1985 27
529 1215 2011 0 1985 27
530 1232 2011 0 1985 27
532 1345 2011 0 1985 27
533 1346 2011 2 1985 27
535 635 2011 1 1985 27
536 137 2016 5 1985 27
537 397 2016 5 1985 27
539 118 2011 0 1985 27
540 640 2011 0 1985 27
541 1638 2016 5 1985 27
542 828 2011 0 1985 27
543 471 2016 5 1985 27
546 1364 2011 1 1985 27
547 213 2016 6 1985 26
549 1395 2013 3 1985 26
550 569 2010 0 1985 26
551 1469 2016 6 1985 26
554 71 2016 6 1985 26
557 601 2012 2 1985 26
560 409 2016 6 1985 26
561 438 2013 3 1985 26
562 411 2016 6 1985 26
568 1195 2016 7 1985 25
570 634 2011 2 1985 25
572 1161 2013 4 1985 25
574 1628 2016 7 1985 25
585 51 2015 6 1985 25
600 836 2016 8 1985 24
602 469 2016 8 1985 24
603 605 2013 5 1985 24
605 3 2015 8 1985 24
616 414 2013 5 1985 24
621 1643 2016 8 1985 24
638 369 2014 6 1985 24
646 2021 2016 9 1985 23
659 2215 2016 9 1985 23
660 474 2016 9 1985 23
663 375 2010 3 1985 23
664 600 2013 6 1985 23
676 936 2015 10 1985 22
685 787 2016 10 1985 22
686 537 2016 10 1985 22
690 1501 2016 10 1985 22
691 950 2016 11 1985 21
692 612 2012 7 1985 21
696 1423 2013 8 1985 21

519 rows × 5 columns

Out[84]:
519
In [85]:
data_subset_1985_2016_clean = data_subset_1985_2016_clean.merge(df, left_on='ID', right_on='ID')

Export Datasets for Map Visualization

In [86]:
def yearly_mean(dataframe):
    
    mean_dataframe = dataframe.set_index('timestamp').tide.resample('1A').mean()
    mean_dataframe = mean_dataframe.reset_index()
    
    return pd.DataFrame(mean_dataframe)

def rolling_mean(dataframe):
    
    mean_dataframe = dataframe.set_index('timestamp').tide.resample('1A').mean()

    mean_dataframe = mean_dataframe.rolling(center=False, window=5, min_periods=1).mean()
    mean_dataframe = mean_dataframe.reset_index()
    
    
    return pd.DataFrame(mean_dataframe)


normal = df.groupby(['ID']).apply(yearly_mean)

rolling = df.groupby(['ID']).apply(rolling_mean)

normal.head()

rolling.head()
Out[86]:
timestamp tide
ID
1 0 1807-12-31 6970.333333
1 1808-12-31 6867.333333
2 1809-12-31 6954.916667
3 1810-12-31 6946.416667
4 1811-12-31 6977.166667
Out[86]:
timestamp tide
ID
1 0 1807-12-31 6970.333333
1 1808-12-31 6918.833333
2 1809-12-31 6930.861111
3 1810-12-31 6934.750000
4 1811-12-31 6943.233333
In [101]:
#delete rows which are not used for visualization

data_subset_viz = data_subset_1985_2016_clean.drop(['missing day','flag for attention', 'gloss id', 'coastline', 'flag', 'station', 'date'], 1)

#rolling if data for animation, yearly if data for explorer
data_subset_viz = data_subset_viz.groupby(['ID']).apply(rolling_mean)

data_subset_viz = data_subset_viz.reset_index()

#delete rows which are not used for visualization

data_subset_viz = data_subset_viz.drop(['level_1'], 1)

#filter by trend data
#data_subset_viz = data_subset_viz.merge(trends_1985_2014, left_on='ID', right_on='ID')

#add worldbank data
#data_subset_viz = data_subset_viz.merge(worldbank_data, left_on='ID', right_on='ID')

data_subset_viz = data_subset_viz.round()

data_subset_viz.head()
data_subset_viz['ID'].nunique()
Out[101]:
ID timestamp tide
0 1 1807-12-31 6970.0
1 1 1808-12-31 6919.0
2 1 1809-12-31 6931.0
3 1 1810-12-31 6935.0
4 1 1811-12-31 6943.0
Out[101]:
519

Use only for map animation in order to reduce data to 30 years

In [102]:
data_subset_viz = data_subset_viz.set_index(['timestamp'])

data_subset_viz = data_subset_viz.loc['1985-12-31':'2016-12-31']

data_subset_viz = data_subset_viz.reset_index()

#interpolate missing data in order to make animation smoother

data_subset_viz['tide'] = data_subset_viz['tide'].interpolate()

#data_subset_viz.sort_values('timestamp', ascending=False)

data_subset_viz['ID'].nunique()
Out[102]:
519

Add geodata and meta data again

In [103]:
data_subset_viz = data_subset_viz.merge(stations, left_on='ID', right_on='id')

data_subset_viz = data_subset_viz.drop(['gloss id', 'coastline', 'flag', 'station', 'date', 'id'], 1)

data_subset_viz['year'] = data_subset_viz.timestamp.dt.year

data_subset_viz['ID'].nunique()
Out[103]:
519
In [104]:
#function to use first tide measurement as zero reference point

def to_zero(dataframe):
    first_value = dataframe['tide'].iloc[0]
    dataframe['tide'] = dataframe['tide'] - first_value
    dataframe['tide'] = dataframe['tide'].round(decimals=2)
    return dataframe
In [105]:
data_subset_viz = data_subset_viz.groupby(['ID']).apply(to_zero)
In [106]:
data_subset_viz['ID'].nunique()
Out[106]:
519
In [107]:
data_subset_viz.head()
Out[107]:
timestamp ID tide location latitude longitude country year
0 1985-12-31 1 0.0 Brest 48.383 -4.495 FRA 1985
1 1986-12-31 1 -1.0 Brest 48.383 -4.495 FRA 1986
2 1987-12-31 1 4.0 Brest 48.383 -4.495 FRA 1987
3 1988-12-31 1 9.0 Brest 48.383 -4.495 FRA 1988
4 1989-12-31 1 15.0 Brest 48.383 -4.495 FRA 1989

Convert year to object to get rid of 1985.0

In [108]:
data_subset_viz['year'] = data_subset_viz['year'].astype(object)

data_subset_viz.dtypes
Out[108]:
timestamp    datetime64[ns]
ID                    int64
tide                float64
location             object
latitude            float64
longitude           float64
country              object
year                 object
dtype: object
In [109]:
data_subset_viz = data_subset_viz.rename(columns={'ID': 'id'})
In [110]:
data_subset_viz.to_csv('context_data/sealevel_viz_psmsl_1985_2015.csv', index=False)
In [111]:
# shorten data set

data_subset_viz_short = data_subset_viz[['id', 'tide', 'year']]
In [112]:
data_subset_viz_resampled = data_subset_viz_short.pivot(index='id', columns='year', values='tide')
In [113]:
data_subset_viz_resampled = data_subset_viz_resampled.reset_index()
In [114]:
data_subset_viz_resampled
Out[114]:
year id 1985 1986 1987 1988 1989 1990 1991 1992 1993 ... 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016
0 1 0.0 -1.0 4.0 9.0 15.0 16.0 15.0 8.0 5.0 ... 34.0 36.0 41.0 58.0 59.0 63.0 65.0 77.0 70.0 78.0
1 3 0.0 0.0 -4.0 -8.0 -4.0 -10.0 -24.0 -29.0 -41.0 ... 32.0 30.0 38.0 42.0 47.0 53.0 52.0 27.5 3.0 3.0
2 5 0.0 -5.0 -8.0 -7.0 4.0 9.0 3.0 4.0 1.0 ... 34.0 33.0 36.0 48.0 50.0 67.0 71.0 81.0 77.0 73.0
3 7 0.0 -16.0 -24.0 -29.0 -13.0 16.0 23.0 28.0 9.0 ... 68.0 79.0 67.0 62.0 66.0 50.0 33.0 35.0 59.0 60.0
4 8 0.0 -11.0 -1.0 0.0 25.0 34.0 29.0 28.0 18.0 ... 31.0 42.0 42.0 49.0 59.0 53.0 50.0 45.0 45.0 47.0
5 9 0.0 -5.0 -3.0 5.0 12.0 23.0 12.0 9.0 -5.0 ... 22.0 31.0 28.0 32.0 34.0 26.0 21.0 27.0 33.0 40.0
6 10 0.0 13.0 1.0 -40.0 -50.0 -46.0 -55.0 -43.0 -23.0 ... -12.0 -16.0 -17.0 -20.0 -29.0 -18.0 -17.0 -4.0 12.0 20.0
7 11 0.0 -13.0 -5.0 -9.0 18.0 28.0 20.0 19.0 9.0 ... 51.0 59.0 55.0 58.0 63.0 51.0 43.0 34.0 35.0 33.0
8 12 0.0 10.0 23.0 7.0 -6.0 -6.0 -3.0 -3.0 12.0 ... 70.0 78.0 92.0 101.0 113.0 132.0 132.0 131.0 116.0 106.0
9 14 0.0 -20.0 -33.0 -57.0 -24.0 9.0 7.0 28.0 14.0 ... -43.0 -19.0 -39.0 -66.0 -53.0 -68.0 -97.0 -108.0 -67.0 -81.0
10 20 0.0 -11.0 -15.0 -12.0 -9.0 -3.0 -9.0 -7.0 -16.0 ... 56.0 63.0 60.0 56.0 57.0 48.0 41.0 46.0 50.0 55.0
11 22 0.0 -9.0 -14.0 -10.0 -4.0 7.0 -1.0 -2.0 -13.0 ... 36.0 42.0 39.0 40.0 43.0 36.0 31.0 37.0 43.0 48.0
12 23 0.0 -7.0 -12.0 -9.0 -4.0 10.0 3.0 8.0 -6.0 ... 28.0 34.0 27.0 22.0 26.0 18.0 9.0 14.0 27.0 27.0
13 24 0.0 -18.0 -29.0 -32.0 -23.0 -7.0 -8.0 -1.0 -13.0 ... 26.0 32.0 25.0 22.0 31.0 21.0 14.0 23.0 45.0 50.0
14 25 0.0 -13.0 -25.0 -27.0 -23.0 -6.0 -17.0 -13.0 -31.0 ... 23.0 35.0 27.0 22.0 28.0 20.0 8.0 17.0 39.0 40.0
15 32 0.0 -8.0 -11.0 -10.0 -4.0 9.0 4.0 8.0 -2.0 ... 57.0 62.0 54.0 48.0 47.0 36.0 25.0 33.0 45.0 50.0
16 33 0.0 -14.0 -40.0 -39.0 -7.0 28.0 25.0 34.0 9.0 ... -49.0 -38.0 -48.0 -70.0 -61.0 -69.0 -88.0 -90.0 -61.0 -79.0
17 41 0.0 -2.0 7.0 39.0 70.0 88.0 103.0 97.0 97.0 ... 246.0 229.0 218.0 236.0 245.0 255.0 288.0 303.0 286.0 NaN
18 45 0.0 6.0 -13.0 1.0 31.0 45.0 35.0 42.0 -1.0 ... -30.0 -29.0 -34.0 -58.0 -52.0 -64.0 -67.0 -70.0 -38.0 -48.0
19 47 0.0 2.0 -1.0 2.0 15.0 27.0 19.0 17.0 4.0 ... 21.0 28.0 26.0 20.0 23.0 19.0 7.0 11.0 25.0 20.0
20 51 0.0 -6.0 1.0 30.0 44.0 77.0 108.0 129.0 151.0 ... 103.0 131.0 158.0 160.0 162.0 150.0 129.0 109.0 94.0 NaN
21 57 0.0 -18.0 -37.0 -62.0 -31.0 -3.0 -13.0 1.0 -15.0 ... -128.0 -113.0 -138.0 -173.0 -164.0 -184.0 -216.0 -228.0 -188.0 -212.0
22 58 0.0 -5.0 -11.0 -7.0 14.0 36.0 32.0 35.0 22.0 ... 22.0 31.0 31.0 23.0 29.0 25.0 12.0 14.0 29.0 23.0
23 61 0.0 5.0 9.0 8.0 8.0 9.0 13.0 1.0 3.0 ... 53.0 56.0 70.0 113.0 109.0 119.0 126.0 135.0 100.0 98.0
24 62 0.0 -17.0 -42.0 -57.0 -33.0 -14.0 6.0 20.0 8.0 ... -51.0 -41.0 -50.0 -74.0 -65.0 -76.0 -97.0 -99.0 -69.0 -85.0
25 69 0.0 -18.0 -23.0 -39.0 -12.0 14.0 8.0 19.0 6.0 ... -20.0 -2.0 -20.0 -34.0 -28.0 -41.0 -65.0 -73.0 -49.0 -55.0
26 70 0.0 -16.0 -17.0 -28.0 -1.0 22.0 19.0 29.0 15.0 ... 4.0 21.0 10.0 3.0 12.0 0.0 -17.0 -24.0 -6.0 -11.0
27 71 0.0 -12.0 -18.0 -32.0 7.0 47.0 37.0 53.0 37.0 ... -27.0 -21.0 -41.0 -65.0 -54.0 -69.0 -98.0 -109.0 -72.0 -86.0
28 76 0.0 1.0 -5.0 -8.0 17.0 43.0 34.0 40.0 29.0 ... 65.0 74.0 70.0 66.0 67.0 58.0 49.0 50.0 56.0 54.0
29 78 0.0 -19.0 -28.0 -47.0 -20.0 7.0 -1.0 9.0 -8.0 ... -69.0 -50.0 -70.0 -89.0 -81.0 -94.0 -123.0 -133.0 -104.0 -118.0
30 79 0.0 -14.0 -42.0 -69.0 -33.0 -2.0 -1.0 19.0 5.0 ... -107.0 -93.0 -119.0 -161.0 -150.0 -173.0 -204.0 -214.0 -167.0 -193.0
31 80 0.0 -12.0 -31.0 -30.0 -8.0 27.0 32.0 43.0 22.0 ... 38.0 58.0 47.0 34.0 45.0 38.0 5.0 -18.0 17.0 14.0
32 81 0.0 -10.0 -13.0 -14.0 7.0 14.0 10.0 15.0 8.0 ... 38.0 46.0 45.0 47.0 51.0 40.0 33.0 30.0 28.0 28.0
33 82 0.0 -13.0 -21.0 -30.0 -7.0 6.0 -13.0 8.0 0.0 ... 35.0 44.0 21.0 -12.0 2.0 -5.0 -7.0 11.0 65.0 54.0
34 88 0.0 -18.0 -42.0 -68.0 -35.0 -3.0 -14.0 -1.0 -17.0 ... -160.0 -146.0 -172.0 -209.0 -200.0 -219.0 -251.0 -263.0 -223.0 -248.0
35 89 0.0 -16.0 -5.0 5.0 9.0 29.0 21.0 23.0 5.0 ... 11.0 16.0 8.0 -5.0 0.0 -9.0 -21.0 -26.0 -9.0 -23.0
36 91 0.0 -9.0 -17.0 -19.0 1.0 9.0 1.0 0.0 -15.0 ... -8.0 3.0 -8.0 -17.0 -21.0 -43.0 -64.0 -62.0 -54.0 -55.0
37 95 0.0 -4.0 -9.0 -11.0 5.0 16.0 10.0 11.0 4.0 ... 70.0 69.0 59.0 53.0 48.0 44.0 40.0 46.0 50.0 55.0
38 96 0.0 -6.0 3.0 1.0 3.0 0.0 7.0 6.0 6.0 ... 42.0 54.0 60.0 79.0 90.0 106.0 121.0 115.0 NaN NaN
39 98 0.0 -9.0 -11.0 -12.0 9.0 21.0 21.0 19.0 5.0 ... 38.0 47.0 44.0 42.0 50.0 40.0 34.0 28.0 37.0 33.0
40 111 0.0 -6.0 -9.0 0.0 3.0 -5.0 -3.0 6.0 -20.0 ... 29.0 52.0 65.0 72.0 107.0 131.0 138.0 141.0 139.0 111.0
41 112 0.0 19.0 27.0 12.0 4.0 2.0 13.0 24.0 38.0 ... 47.0 48.0 56.0 43.0 42.0 43.0 53.0 68.0 93.0 117.0
42 113 0.0 -17.0 -55.0 -55.0 -32.0 -14.0 -10.0 -3.0 -7.0 ... 4.0 13.0 12.0 15.0 25.0 14.0 7.0 2.0 2.0 -2.0
43 118 0.0 -14.0 -15.0 -32.0 10.0 38.0 39.0 52.0 50.0 ... 88.0 93.0 63.0 58.0 76.0 NaN NaN NaN NaN NaN
44 119 0.0 -14.0 -20.0 -27.0 -1.0 2.0 -1.0 4.0 -10.0 ... 43.0 47.0 27.0 20.0 32.0 28.0 19.0 16.0 16.0 1.0
45 120 0.0 -10.0 -2.0 -7.0 13.0 22.0 12.0 15.0 8.0 ... 22.0 42.0 42.0 51.0 68.0 64.0 55.0 49.0 45.0 44.0
46 126 0.0 2.0 12.0 -64.0 -146.0 -156.0 -220.0 -232.0 -152.0 ... -307.0 -199.0 -174.0 -224.0 -231.0 -253.0 -309.0 -309.0 -283.0 -310.0
47 127 0.0 2.0 -6.0 -36.0 -48.0 -38.0 -42.0 -34.0 -22.0 ... 13.0 2.0 -4.0 2.0 -6.0 6.0 2.0 20.0 26.0 43.0
48 130 0.0 -5.0 3.0 6.0 11.0 27.0 41.0 46.0 47.0 ... 118.0 122.0 121.0 131.0 147.0 156.0 163.0 159.0 153.0 152.0
49 131 0.0 -2.0 3.0 -4.0 -7.0 -3.0 3.0 6.0 13.0 ... 104.0 118.0 131.0 146.0 151.0 150.0 NaN NaN NaN NaN
50 132 0.0 -8.0 -3.0 -6.0 0.0 5.0 9.0 13.0 18.0 ... 56.0 55.0 51.0 62.0 63.0 68.0 79.0 76.0 65.0 76.0
51 133 0.0 11.0 14.0 13.0 25.0 24.0 23.0 29.0 33.0 ... 59.0 53.0 51.0 64.0 65.0 78.0 82.0 85.0 84.0 93.0
52 134 0.0 -2.0 6.0 15.0 40.0 47.0 54.0 70.0 78.0 ... 165.0 161.0 162.0 183.0 187.0 202.0 209.0 218.0 217.0 226.0
53 135 0.0 14.0 28.0 9.0 -1.0 2.0 3.0 4.0 25.0 ... 109.0 107.0 117.0 118.0 137.0 152.0 152.0 149.0 137.0 117.0
54 137 0.0 20.0 18.0 -60.0 -147.0 -162.0 -225.0 -222.0 -137.0 ... -367.0 -235.0 -183.0 -191.0 -187.0 -209.0 -264.0 -264.0 -241.0 -268.0
55 144 0.0 9.0 12.0 -56.0 -38.0 -35.0 -32.0 -32.0 36.0 ... -133.0 -49.0 -21.0 -51.0 -47.0 -55.0 -95.0 -95.0 -83.0 -110.0
56 145 0.0 6.0 4.0 17.0 20.0 9.0 14.0 35.0 37.0 ... 227.0 297.0 337.0 354.0 357.0 396.0 399.0 390.0 390.0 390.0
57 148 0.0 11.0 17.0 3.0 -9.0 -7.0 -1.0 3.0 19.0 ... 69.0 72.0 82.0 84.0 100.0 118.0 123.0 124.0 119.0 111.0
58 154 0.0 -2.0 5.0 11.0 -1.0 -9.0 -16.0 -29.0 -40.0 ... 21.0 28.0 37.0 64.0 68.0 72.0 85.0 94.0 73.0 78.0
59 155 0.0 -24.0 -24.0 -9.0 -18.0 -32.0 -23.0 -11.0 -22.0 ... 37.0 31.0 15.0 10.0 -1.0 -4.0 -6.0 5.0 11.0 28.0
60 158 0.0 3.0 2.0 -24.0 -37.0 -33.0 -29.0 -18.0 1.0 ... -2.0 0.0 2.0 3.0 2.0 14.0 19.0 34.0 61.0 74.0
61 161 0.0 14.0 17.0 1.0 -1.0 10.0 25.0 41.0 61.0 ... 97.0 98.0 105.0 114.0 126.0 132.0 146.0 146.0 162.0 205.0
62 163 0.0 -1.0 -28.0 -79.0 -92.0 -86.0 -79.0 -58.0 -13.0 ... 65.0 57.0 41.0 9.0 -6.0 -10.0 -22.0 -19.0 -7.0 -10.0
63 165 0.0 -6.0 -3.0 -36.0 -69.0 -62.0 -72.0 -81.0 -78.0 ... -68.0 -81.0 -84.0 -77.0 -84.0 -73.0 -80.0 -70.0 -72.0 -59.0
64 166 0.0 -14.0 -32.0 -65.0 -74.0 -60.0 -66.0 -56.0 -45.0 ... -37.0 -47.0 -46.0 -39.0 -44.0 -30.0 -34.0 -25.0 -23.0 -9.0
65 167 0.0 -12.0 -7.0 -30.0 -50.0 -38.0 -35.0 -26.0 -19.0 ... 17.0 10.0 7.0 10.0 12.0 13.0 -2.0 7.0 3.0 4.0
66 172 0.0 -20.0 -38.0 -59.0 -39.0 -11.0 -16.0 -1.0 -20.0 ... -111.0 -91.0 -114.0 -144.0 -134.0 -152.0 -183.0 -195.0 -157.0 -178.0
67 173 0.0 -12.0 -10.0 -33.0 -67.0 -60.0 -63.0 -60.0 -44.0 ... -47.0 -26.0 -17.0 -9.0 -4.0 4.0 NaN NaN NaN NaN
68 174 0.0 -14.0 -10.0 -5.0 -5.0 -7.0 3.0 -6.0 -17.0 ... 18.0 44.0 52.0 81.0 104.0 126.0 140.0 149.0 141.0 132.0
69 175 0.0 -1.0 -11.0 -44.0 -60.0 -49.0 -52.0 -43.0 -32.0 ... -11.0 -17.0 -25.0 -16.0 -14.0 3.0 3.0 22.0 24.0 33.0
70 179 0.0 -6.0 -17.0 -13.0 11.0 18.0 -17.0 -14.0 -27.0 ... 4.0 11.0 4.0 -11.0 -5.0 -15.0 -31.0 -33.0 -16.0 -27.0
71 180 0.0 10.0 25.0 10.0 0.0 12.0 29.0 35.0 57.0 ... 107.0 113.0 127.0 137.0 148.0 165.0 166.0 163.0 148.0 144.0
72 183 0.0 -5.0 3.0 -9.0 -20.0 -26.0 -20.0 -21.0 -17.0 ... 24.0 26.0 36.0 49.0 59.0 78.0 89.0 88.0 61.0 51.0
73 188 0.0 11.0 14.0 13.0 8.0 5.0 9.0 14.0 22.0 ... 46.0 56.0 63.0 64.0 68.0 74.0 81.0 91.0 109.0 125.0
74 189 0.0 -12.0 -20.0 -2.0 10.0 9.0 6.0 5.0 -20.0 ... 59.0 85.0 98.0 116.0 136.0 162.0 171.0 167.0 145.0 120.0
75 192 0.0 -11.0 -13.0 -46.0 -94.0 -100.0 -110.0 -102.0 -84.0 ... -102.0 -72.0 -61.0 -59.0 -50.0 -41.0 -48.0 -43.0 -54.0 -66.0
76 193 0.0 -8.0 -23.0 -60.0 -74.0 -63.0 -62.0 -49.0 -37.0 ... -14.0 -24.0 -29.0 -23.0 -27.0 -16.0 -19.0 -4.0 -1.0 11.0
77 194 0.0 -16.0 -39.0 -65.0 -38.0 -9.0 -21.0 -9.0 -23.0 ... -132.0 -118.0 -145.0 -184.0 -175.0 -195.0 -225.0 -236.0 -192.0 -217.0
78 195 0.0 -1.0 1.0 0.0 -9.0 -4.0 -6.0 -4.0 4.0 ... 31.0 35.0 56.0 61.0 62.0 74.0 73.0 73.0 49.0 47.0
79 196 0.0 -1.0 2.0 14.0 17.0 24.0 25.0 32.0 22.0 ... 20.0 22.0 27.0 30.0 41.0 43.0 56.0 63.0 66.0 74.0
80 201 0.0 -5.0 3.0 -53.0 -114.0 -113.0 -158.0 -159.0 -106.0 ... -161.0 -91.0 -72.0 -93.0 -96.0 -102.0 -134.0 -132.0 -129.0 -146.0
81 202 0.0 -2.0 -2.0 -2.0 3.0 3.0 2.0 -9.0 -17.0 ... 37.0 39.0 48.0 69.0 62.0 62.0 61.0 67.0 54.0 64.0
82 203 0.0 -17.0 -42.0 -70.0 -40.0 -8.0 -19.0 -11.0 -24.0 ... -135.0 -121.0 -150.0 -189.0 -178.0 -197.0 -226.0 -235.0 -192.0 -219.0
83 205 0.0 -26.0 -11.0 -4.0 -15.0 -22.0 -12.0 -16.0 -21.0 ... -3.0 6.0 14.0 27.0 46.0 51.0 53.0 50.0 NaN NaN
84 213 0.0 -1.0 -6.0 -9.0 -10.0 -7.0 -2.0 3.0 11.0 ... 18.0 19.0 20.0 20.0 16.0 19.0 20.0 21.0 28.0 46.0
85 215 0.0 -23.0 -14.0 16.0 28.0 41.0 55.0 49.0 30.0 ... 109.0 111.0 99.0 111.0 112.0 116.0 147.0 163.0 140.0 141.0
86 216 0.0 -9.0 -16.0 -4.0 -1.0 2.0 2.0 10.0 -12.0 ... 54.0 68.0 84.0 79.0 91.0 94.0 104.0 99.0 98.0 103.0
87 221 0.0 11.0 8.0 19.0 42.0 59.0 56.0 63.0 58.0 ... 87.0 91.0 91.0 90.0 95.0 101.0 109.0 119.0 134.0 148.0
88 224 0.0 10.0 24.0 7.0 -4.0 -9.0 -6.0 -8.0 7.0 ... 81.0 83.0 98.0 104.0 114.0 132.0 137.0 135.0 125.0 124.0
89 225 0.0 -9.0 2.0 -15.0 -37.0 -28.0 -29.0 -27.0 -31.0 ... -20.0 -26.0 -31.0 -32.0 -35.0 -38.0 -54.0 -55.0 -64.0 -64.0
90 229 0.0 -13.0 -40.0 -66.0 -40.0 -9.0 -16.0 -1.0 -14.0 ... -108.0 -95.0 -122.0 -166.0 -154.0 -176.0 -205.0 -215.0 -167.0 -194.0
91 230 0.0 -10.0 -12.0 -1.0 -12.0 -20.0 -14.0 -2.0 -15.0 ... 27.0 43.0 54.0 48.0 62.0 66.0 70.0 64.0 57.0 56.0
92 234 0.0 17.0 22.0 8.0 -1.0 -4.0 3.0 11.0 26.0 ... 50.0 54.0 68.0 63.0 67.0 74.0 85.0 100.0 123.0 146.0
93 235 0.0 3.0 12.0 0.0 -11.0 -19.0 -13.0 -13.0 -3.0 ... 67.0 73.0 85.0 98.0 107.0 119.0 126.0 126.0 107.0 104.0
94 236 0.0 -4.0 -13.0 -11.0 -2.0 15.0 5.0 9.0 -6.0 ... 27.0 42.0 42.0 39.0 44.0 36.0 25.0 31.0 48.0 49.0
95 239 0.0 -19.0 -39.0 -61.0 -13.0 12.0 7.0 22.0 6.0 ... -65.0 -45.0 -66.0 -92.0 -82.0 -98.0 -127.0 -137.0 -100.0 -118.0
96 240 0.0 -13.0 -44.0 -67.0 -37.0 -10.0 -15.0 1.0 -15.0 ... -138.0 -126.0 -152.0 -193.0 -183.0 -203.0 -232.0 -241.0 -194.0 -218.0
97 245 0.0 2.0 0.0 -27.0 -41.0 -38.0 -36.0 -24.0 -3.0 ... -2.0 0.0 2.0 0.0 -2.0 6.0 6.0 16.0 39.0 50.0
98 246 0.0 12.0 14.0 -1.0 -11.0 -15.0 -14.0 -9.0 -1.0 ... 38.0 33.0 53.0 51.0 57.0 72.0 81.0 81.0 89.0 118.0
99 248 0.0 -2.0 -6.0 -1.0 0.0 0.0 1.0 3.0 -2.0 ... 20.0 26.0 32.0 55.0 72.0 89.0 88.0 102.0 NaN NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
419 1353 0.0 -8.0 13.0 14.0 -4.0 0.0 -4.0 -12.0 -28.0 ... -121.0 -139.0 -156.0 -166.0 -185.0 -190.0 -210.0 -205.0 -210.0 -201.0
420 1354 0.0 1.0 -10.0 -40.0 -54.0 -36.0 -42.0 -32.0 -16.0 ... 8.0 -4.0 -9.0 -15.0 -27.0 -16.0 -30.0 -32.0 -33.0 -20.0
421 1364 0.0 -6.0 -5.0 -12.0 -14.0 -8.0 -1.0 2.0 10.0 ... 86.0 92.0 97.0 106.0 109.0 108.0 NaN NaN NaN NaN
422 1365 0.0 1.0 6.0 3.0 7.0 11.0 12.0 18.0 21.0 ... 43.0 47.0 50.0 56.0 61.0 68.0 75.0 80.0 84.0 98.0
423 1371 0.0 9.0 -9.0 -18.0 -8.0 -2.0 -1.0 -3.0 30.0 ... 15.0 -3.0 -2.0 -13.0 -23.0 -7.0 15.0 24.0 61.0 NaN
424 1386 0.0 -7.0 -7.0 -6.0 11.0 14.0 16.0 21.0 23.0 ... 69.0 68.0 66.0 79.0 81.0 93.0 101.0 107.0 107.0 118.0
425 1387 0.0 -5.0 3.0 1.0 6.0 16.0 27.0 35.0 41.0 ... 98.0 98.0 96.0 107.0 111.0 123.0 139.0 144.0 140.0 154.0
426 1388 0.0 -2.0 4.0 10.0 14.0 28.0 40.0 44.0 37.0 ... 64.0 66.0 66.0 65.0 56.0 63.0 59.0 55.0 53.0 65.0
427 1389 0.0 -9.0 0.0 -3.0 4.0 10.0 15.0 21.0 28.0 ... 101.0 98.0 94.0 104.0 105.0 111.0 123.0 125.0 116.0 126.0
428 1390 0.0 -1.0 9.0 16.0 43.0 56.0 64.0 81.0 89.0 ... 224.0 220.0 212.0 237.0 243.0 262.0 267.0 283.0 286.0 299.0
429 1391 0.0 1.0 17.0 17.0 30.0 63.0 71.0 67.0 79.0 ... 124.0 108.0 118.0 116.0 127.0 124.0 118.0 109.0 106.0 100.0
430 1392 0.0 -19.0 -21.0 -46.0 -60.0 -65.0 -54.0 -57.0 -47.0 ... -48.0 -33.0 -29.0 -23.0 -21.0 2.0 -25.0 -24.0 -34.0 -51.0
431 1393 0.0 11.0 -4.0 -14.0 -21.0 -27.0 -26.0 -19.0 -4.0 ... 27.0 27.0 23.0 29.0 23.0 29.0 29.0 49.0 59.0 68.0
432 1394 0.0 9.0 2.0 -33.0 -42.0 -44.0 -45.0 -28.0 -8.0 ... 3.0 -1.0 -5.0 -10.0 -16.0 -3.0 -1.0 16.0 35.0 44.0
433 1395 0.0 -13.0 -18.0 -19.0 -25.0 -15.0 -6.0 2.0 9.0 ... 51.0 58.0 58.0 69.0 64.0 31.0 21.0 NaN NaN NaN
434 1397 0.0 7.0 1.0 17.0 14.0 9.0 6.0 11.0 16.0 ... 51.0 44.0 38.0 35.0 31.0 31.0 33.0 45.0 70.0 82.0
435 1420 0.0 -10.0 -25.0 -34.0 -40.0 -37.0 -40.0 -32.0 -47.0 ... -50.0 -32.0 -21.0 -17.0 1.0 15.0 24.0 15.0 4.0 9.0
436 1421 0.0 -4.0 -24.0 -38.0 -53.0 -66.0 -88.0 -15.0 -16.0 ... -76.0 -94.0 -112.0 -130.0 -134.0 -146.0 -156.0 -174.0 -170.0 -185.0
437 1423 0.0 -13.0 -15.0 -10.0 1.0 -8.0 -9.0 -1.0 -2.0 ... 43.0 40.0 37.0 38.0 44.0 43.0 47.0 NaN NaN NaN
438 1437 0.0 -4.0 7.0 6.0 10.0 30.0 39.0 38.0 39.0 ... 111.0 113.0 103.0 112.0 134.0 147.0 158.0 158.0 161.0 166.0
439 1438 0.0 -1.0 12.0 15.0 27.0 54.0 67.0 70.0 75.0 ... 163.0 152.0 129.0 133.0 150.0 159.0 171.0 172.0 173.0 181.0
440 1440 0.0 -17.0 18.0 -6.0 97.0 134.0 88.0 94.0 146.0 ... 248.0 152.0 33.0 79.0 97.0 141.0 152.0 226.0 137.0 83.0
441 1441 0.0 -28.0 -20.0 -17.0 -31.0 -36.0 -27.0 -39.0 -63.0 ... -62.0 -71.0 -57.0 -34.0 -36.0 -23.0 8.0 15.0 -3.0 4.0
442 1442 0.0 -1.0 -3.0 -7.0 -14.0 -15.0 -10.0 -1.0 11.0 ... 240.0 239.0 234.0 238.0 251.0 258.0 274.0 289.0 302.0 319.0
443 1444 0.0 14.0 14.0 8.0 12.0 12.0 44.0 50.0 63.0 ... -9.0 -6.0 9.0 -4.0 2.0 12.0 26.0 39.0 69.0 87.0
444 1445 0.0 2.0 5.0 0.0 5.0 3.0 5.0 8.0 9.0 ... 48.0 52.0 57.0 59.0 52.0 58.0 60.0 78.0 96.0 121.0
445 1446 0.0 3.0 7.0 7.0 15.0 18.0 23.0 28.0 29.0 ... 42.0 40.0 41.0 43.0 41.0 47.0 50.0 55.0 64.0 78.0
446 1447 0.0 2.0 11.0 -6.0 -17.0 -28.0 -37.0 -32.0 -19.0 ... 45.0 42.0 33.0 40.0 41.0 48.0 50.0 69.0 73.0 79.0
447 1448 0.0 -19.0 -12.0 -22.0 4.0 11.0 26.0 41.0 7.0 ... 23.0 33.0 24.0 23.0 33.0 27.0 23.0 18.0 28.0 27.0
448 1449 0.0 -6.0 -10.0 -4.0 15.0 33.0 47.0 54.0 34.0 ... -25.0 -19.0 -6.0 8.0 19.0 35.0 45.0 NaN NaN NaN
449 1450 0.0 -2.0 3.0 40.0 47.0 52.0 62.0 59.0 62.0 ... 102.0 81.0 74.0 69.0 62.0 52.0 72.0 93.0 107.0 136.0
450 1468 0.0 0.0 3.0 -1.0 11.0 24.0 34.0 42.0 57.0 ... 39.0 51.0 65.0 89.0 98.0 106.0 105.0 109.0 95.0 98.0
451 1469 0.0 3.0 11.0 11.0 11.0 10.0 10.0 4.0 5.0 ... 53.0 57.0 68.0 86.0 88.0 100.0 105.0 109.0 95.0 96.0
452 1473 0.0 5.0 -16.0 6.0 22.0 20.0 16.0 18.0 13.0 ... 83.0 85.0 88.0 90.0 90.0 93.0 115.0 145.0 104.0 85.0
453 1474 0.0 -21.0 -17.0 16.0 2.0 -8.0 0.0 -3.0 -17.0 ... -15.0 22.0 45.0 80.0 73.0 71.0 64.0 57.0 51.0 32.0
454 1475 0.0 -7.0 3.0 12.0 17.0 25.0 24.0 25.0 17.0 ... 61.0 67.0 82.0 89.0 93.0 103.0 113.0 NaN NaN NaN
455 1488 0.0 -10.0 -8.0 -18.0 -21.0 -9.0 -8.0 -18.0 -26.0 ... -63.0 -67.0 -86.0 -82.0 -67.0 -64.0 -62.0 -68.0 -69.0 -66.0
456 1489 0.0 1.0 7.0 9.0 14.0 18.0 23.0 26.0 29.0 ... 20.0 12.0 7.0 13.0 5.0 12.0 16.0 23.0 23.0 34.0
457 1490 0.0 1.0 -1.0 0.0 10.0 5.0 19.0 18.0 -5.0 ... 53.0 39.0 30.0 33.0 28.0 47.0 75.0 86.0 118.0 148.0
458 1495 0.0 -13.0 -21.0 -18.0 -17.0 -15.0 -8.0 11.0 32.0 ... 39.0 47.0 60.0 83.0 96.0 106.0 111.0 NaN NaN NaN
459 1501 0.0 -6.0 -9.0 -6.0 7.0 -1.0 -10.0 -19.0 -28.0 ... 46.0 66.0 71.0 93.0 83.0 77.0 67.0 80.0 69.0 64.0
460 1505 0.0 0.0 -9.0 -18.0 -8.0 7.0 4.0 20.0 16.0 ... 162.0 181.0 197.0 209.0 205.0 199.0 198.0 205.0 191.0 224.0
461 1522 0.0 -6.0 -9.0 -6.0 -6.0 -2.0 8.0 15.0 9.0 ... 55.0 59.0 64.0 60.0 47.0 57.0 46.0 40.0 44.0 56.0
462 1527 0.0 -1.0 7.0 6.0 8.0 12.0 32.0 40.0 32.0 ... 49.0 56.0 70.0 94.0 110.0 100.0 97.0 99.0 90.0 86.0
463 1544 0.0 0.0 1.0 -3.0 -5.0 -4.0 1.0 4.0 5.0 ... 37.0 43.0 45.0 49.0 64.0 76.0 92.0 104.0 115.0 123.0
464 1545 0.0 -7.0 -10.0 -12.0 -11.0 3.0 14.0 12.0 6.0 ... 27.0 26.0 18.0 26.0 44.0 47.0 55.0 50.0 39.0 30.0
465 1546 0.0 4.0 10.0 13.0 22.0 27.0 33.0 42.0 45.0 ... 118.0 115.0 118.0 124.0 117.0 115.0 112.0 110.0 118.0 144.0
466 1549 0.0 1.0 11.0 27.0 32.0 27.0 20.0 18.0 -7.0 ... 56.0 61.0 74.0 90.0 92.0 93.0 124.0 120.0 102.0 NaN
467 1567 0.0 6.0 10.0 5.0 28.0 35.0 41.0 52.0 57.0 ... 126.0 105.0 88.0 110.0 106.0 119.0 111.0 110.0 100.0 98.0
468 1568 0.0 -1.0 0.0 0.0 5.0 6.0 12.0 18.0 16.0 ... 25.0 16.0 13.0 25.0 24.0 33.0 38.0 47.0 53.0 70.0
469 1585 0.0 -5.0 -2.0 -6.0 -5.0 4.0 12.0 17.0 23.0 ... 88.0 88.0 88.0 100.0 104.0 115.0 128.0 132.0 129.0 143.0
470 1586 0.0 -3.0 -1.0 -6.0 -12.0 -5.0 -5.0 -1.0 2.0 ... 37.0 36.0 37.0 48.0 48.0 58.0 67.0 71.0 74.0 88.0
471 1587 0.0 4.0 12.0 6.0 4.0 8.0 9.0 7.0 12.0 ... 38.0 35.0 29.0 34.0 31.0 26.0 31.0 20.0 2.0 -1.0
472 1588 0.0 -3.0 -2.0 -2.0 8.0 6.0 13.0 18.0 17.0 ... 40.0 29.0 12.0 16.0 21.0 23.0 34.0 57.0 63.0 78.0
473 1589 0.0 -3.0 -8.0 -3.0 -4.0 -3.0 -2.0 0.0 -6.0 ... 27.0 35.0 43.0 56.0 72.0 83.0 91.0 86.0 78.0 72.0
474 1590 0.0 8.0 -4.0 -12.0 3.0 6.0 4.0 14.0 10.0 ... 40.0 49.0 63.0 70.0 86.0 91.0 95.0 86.0 91.0 92.0
475 1591 0.0 -19.0 -36.0 -31.0 -38.0 -46.0 -51.0 -44.0 -50.0 ... -30.0 -26.0 -11.0 7.0 19.0 37.0 54.0 45.0 32.0 45.0
476 1592 0.0 -36.0 -57.0 -61.0 -100.0 -101.0 -98.0 -98.0 -100.0 ... -72.0 -67.0 -63.0 -42.0 -27.0 -25.0 -27.0 -18.0 -22.0 -12.0
477 1593 0.0 -17.0 -32.0 -29.0 -39.0 -45.0 -53.0 -45.0 -51.0 ... -46.0 -36.0 -27.0 -6.0 10.0 26.0 35.0 36.0 23.0 27.0
478 1594 0.0 -19.0 -35.0 -31.0 -38.0 -48.0 -51.0 -43.0 -49.0 ... -39.0 -28.0 -20.0 -9.0 4.0 22.0 32.0 36.0 28.0 41.0
479 1595 0.0 -8.0 -18.0 -10.0 -11.0 -15.0 -17.0 -8.0 -7.0 ... 7.0 19.0 25.0 42.0 61.0 79.0 88.0 91.0 79.0 104.0
480 1597 0.0 -7.0 0.0 7.0 1.0 -5.0 -5.0 -11.0 -19.0 ... -2.0 3.0 5.0 17.0 24.0 30.0 32.0 36.0 16.0 11.0
481 1600 0.0 -8.0 -7.0 -3.0 -15.0 -13.0 -6.0 -15.0 -24.0 ... -17.0 -10.0 -4.0 10.0 23.0 20.0 23.0 31.0 36.0 35.0
482 1627 0.0 1.0 12.0 14.0 21.0 31.0 43.0 53.0 61.0 ... 124.0 125.0 127.0 135.0 125.0 108.0 105.0 105.0 109.0 127.0
483 1628 0.0 12.0 16.0 22.0 37.0 51.0 57.0 63.0 58.0 ... 23.0 15.0 2.0 10.0 14.0 23.0 26.0 39.0 39.0 45.0
484 1629 0.0 11.0 17.0 38.0 43.0 63.0 78.0 86.0 78.0 ... 87.0 88.0 100.0 124.0 143.0 157.0 175.0 182.0 170.0 165.0
485 1630 0.0 45.0 56.0 75.0 83.0 110.0 122.0 119.0 112.0 ... 134.0 139.0 154.0 175.0 184.0 193.0 204.0 206.0 196.0 198.0
486 1631 0.0 36.0 27.0 52.0 72.0 85.0 77.0 78.0 55.0 ... 113.0 144.0 160.0 182.0 209.0 228.0 236.0 236.0 218.0 194.0
487 1633 0.0 38.0 50.0 43.0 38.0 49.0 46.0 57.0 67.0 ... 73.0 58.0 49.0 51.0 44.0 58.0 55.0 69.0 71.0 83.0
488 1634 0.0 43.0 67.0 80.0 61.0 61.0 55.0 46.0 34.0 ... 90.0 77.0 67.0 74.0 69.0 73.0 66.0 85.0 95.0 130.0
489 1635 0.0 -3.0 8.0 -5.0 -7.0 -14.0 -8.0 -6.0 15.0 ... 101.0 102.0 115.0 119.0 127.0 146.0 155.0 158.0 151.0 157.0
490 1636 0.0 18.0 35.0 19.0 15.0 12.0 19.0 17.0 36.0 ... 98.0 98.0 114.0 120.0 126.0 142.0 149.0 147.0 137.0 144.0
491 1637 0.0 7.0 16.0 8.0 3.0 0.0 -4.0 -17.0 -16.0 ... 95.0 101.0 120.0 127.0 139.0 152.0 157.0 149.0 130.0 120.0
492 1638 0.0 0.0 -6.0 -15.0 -16.0 -16.0 -19.0 -20.0 -8.0 ... 39.0 39.0 46.0 49.0 55.0 73.0 83.0 91.0 109.0 129.0
493 1639 0.0 35.0 45.0 36.0 33.0 40.0 35.0 50.0 76.0 ... 140.0 132.0 131.0 136.0 133.0 150.0 153.0 174.0 189.0 206.0
494 1640 0.0 36.0 43.0 31.0 25.0 26.0 21.0 36.0 58.0 ... 77.0 65.0 61.0 63.0 48.0 53.0 50.0 65.0 72.0 89.0
495 1641 0.0 2.0 -6.0 -15.0 -21.0 -20.0 -17.0 -10.0 -5.0 ... 24.0 19.0 32.0 31.0 36.0 48.0 60.0 61.0 71.0 96.0
496 1643 0.0 51.0 59.0 59.0 59.0 89.0 77.0 84.0 91.0 ... 183.0 186.0 189.0 189.0 191.0 197.0 202.0 206.0 217.0 229.0
497 1644 0.0 76.0 81.0 115.0 140.0 168.0 161.0 163.0 134.0 ... 64.0 72.0 76.0 110.0 113.0 124.0 139.0 141.0 140.0 147.0
498 1645 0.0 27.0 59.0 39.0 33.0 43.0 56.0 58.0 88.0 ... 84.0 83.0 83.0 79.0 72.0 77.0 75.0 88.0 126.0 137.0
499 1801 0.0 -2.0 1.0 8.0 9.0 4.0 -5.0 -3.0 -19.0 ... 31.0 21.0 28.0 47.0 49.0 55.0 70.0 85.0 86.0 101.0
500 2021 0.0 3.0 -2.0 -11.0 -12.0 -10.0 -9.0 -1.0 -1.0 ... 36.0 35.0 34.0 35.0 38.0 52.0 64.0 73.0 85.0 96.0
501 2101 0.0 -17.0 -48.0 -73.0 -39.0 -11.0 -17.0 3.0 -12.0 ... -120.0 -105.0 -132.0 -175.0 -165.0 -187.0 -216.0 -225.0 -178.0 -205.0
502 2103 0.0 -20.0 -33.0 -54.0 -29.0 -2.0 -11.0 1.0 -18.0 ... -105.0 -89.0 -110.0 -132.0 -124.0 -141.0 -172.0 -185.0 -158.0 -175.0
503 2104 0.0 -19.0 -27.0 -38.0 -14.0 13.0 9.0 23.0 6.0 ... -52.0 -33.0 -51.0 -66.0 -59.0 -73.0 -99.0 -106.0 -79.0 -89.0
504 2105 0.0 -15.0 -21.0 -38.0 -7.0 18.0 15.0 27.0 11.0 ... -24.0 -11.0 -26.0 -43.0 -37.0 -48.0 -67.0 -73.0 -43.0 -49.0
505 2106 0.0 -16.0 -18.0 -32.0 -5.0 19.0 14.0 23.0 9.0 ... -10.0 8.0 -6.0 -15.0 -6.0 -19.0 -41.0 -51.0 -29.0 -36.0
506 2107 0.0 1.0 8.0 5.0 31.0 51.0 45.0 50.0 35.0 ... 41.0 56.0 46.0 44.0 50.0 40.0 25.0 19.0 29.0 27.0
507 2110 0.0 -13.0 -18.0 -25.0 2.0 21.0 21.0 30.0 21.0 ... 25.0 35.0 25.0 18.0 28.0 18.0 6.0 2.0 16.0 7.0
508 2111 0.0 -10.0 -23.0 -30.0 -7.0 15.0 14.0 22.0 10.0 ... -8.0 5.0 -3.0 -15.0 -6.0 -16.0 -33.0 -35.0 -15.0 -24.0
509 2112 0.0 -8.0 -23.0 -31.0 -10.0 10.0 3.0 5.0 -19.0 ... -43.0 -37.0 -44.0 -59.0 -49.0 -57.0 -72.0 -70.0 -44.0 -55.0
510 2113 0.0 -8.0 -25.0 -34.0 -13.0 5.0 -1.0 3.0 -14.0 ... -39.0 -29.0 -37.0 -57.0 -49.0 -60.0 -78.0 -80.0 -56.0 -72.0
511 2127 0.0 -1.0 -9.0 -41.0 -53.0 -42.0 -47.0 -38.0 -22.0 ... -22.0 -33.0 -38.0 -27.0 -34.0 -20.0 -26.0 -11.0 -13.0 2.0
512 2215 0.0 9.0 8.0 -1.0 -9.0 -4.0 10.0 21.0 18.0 ... 28.0 43.0 57.0 75.0 84.0 102.0 111.0 106.0 118.0 147.0
513 2261 0.0 -3.0 5.0 3.0 8.0 24.0 39.0 42.0 59.0 ... -7.0 -4.0 -3.0 0.0 14.0 21.0 6.0 0.0 16.0 17.0
514 2262 0.0 -20.0 -20.0 -55.0 -57.0 -67.0 -65.0 -70.0 -46.0 ... -141.0 -127.0 -116.0 -141.0 -115.0 -100.0 -113.0 -112.0 -88.0 -72.0
515 2295 0.0 16.0 25.0 12.0 4.0 -1.0 1.0 9.0 23.0 ... 51.0 54.0 69.0 67.0 73.0 86.0 94.0 105.0 114.0 133.0
516 2316 0.0 -4.0 -5.0 -3.0 3.0 9.0 11.0 13.0 -1.0 ... 15.0 19.0 26.0 29.0 43.0 51.0 68.0 67.0 NaN NaN
517 2324 0.0 11.0 20.0 2.0 -8.0 -10.0 -3.0 1.0 22.0 ... 116.0 118.0 131.0 135.0 148.0 166.0 173.0 174.0 165.0 161.0
518 2330 0.0 15.0 -7.0 -68.0 -84.0 -85.0 -103.0 -94.0 -69.0 ... -10.0 -12.0 -18.0 -23.0 -34.0 -23.0 -25.0 -17.0 -6.0 -6.0

519 rows × 33 columns

In [115]:
data_subset_viz_resampled['id'].nunique()
Out[115]:
519
In [116]:
#data_subset_viz_resampled.to_csv('data/dataviz/sealevel_viz_whole_timeseries.csv', index=False)

data_subset_viz_resampled.to_csv('data/dataviz/sealevel_viz_psmsl_1985_2015.csv', index=False)