{ "cells": [ { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": true }, "outputs": [], "source": [ "%matplotlib inline\n", "import matplotlib.pyplot as plt, seaborn as sn, mpld3\n", "import pandas as pd, os, glob, numpy as np, imp\n", "import statsmodels.api as sm\n", "from statsmodels.formula.api import ols\n", "from sqlalchemy import create_engine\n", "sn.set_context('notebook')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# TOC trends 2015: database clean-up (part 1)\n", "\n", "My \"to do\" list for RESA2 following the meeting on 27/05/2016 is on the network here:\n", "\n", "K:\\Prosjekter\\langtransporterte forurensninger\\O-23300 - ICP-WATERS - HWI\\Database\\JamesS\\RESA2_To_Do_HWI.docx\n", "\n", "I want to start working through these items, prioritising stuff relating to the TOC trends analysis because I know I'm running a bit behind here. I also want to document my changes carefully as this is the first time I've modified the \"live\" version of RESA2, and I need to be able to undo things again in case I mess it all up. This notebook documents my workflow.\n", "\n", "**NB for James:** Some of the code below modifies RESA2. It also documents what the database looked like *before* making any changes. **Do not** re-run this workbook without checking the code below first, as the results will change and you'll lose the record of what you've done. \n", "\n", "## 1. Connect Python to RESA2\n", "\n", "As a first step, I'd like to try connecting Python directly to the Oracle database underlying RESA2. If this works, I should be able to interact with the database directly from my code (i.e. bypassing the RESA2 interface), which will make some of the steps below much easier. \n", "\n", "As a quick test, start by creating a connection and running a simple query against the database." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
project_idproject_numberproject_name
01130NoneFJORDA
12945O 29010 06Otra sidebekker
22965O 29264 02VRD-Telemark-B�rsesj�
31133NoneFLAGSTAD
41135NoneFLORID
51140NoneFROMLAB
61141NoneFROYSET
71142NoneGAULA
81143NoneGJELLESOGN
91144NoneGPVEST
\n", "
" ], "text/plain": [ " project_id project_number project_name\n", "0 1130 None FJORDA\n", "1 2945 O 29010 06 Otra sidebekker\n", "2 2965 O 29264 02 VRD-Telemark-B�rsesj�\n", "3 1133 None FLAGSTAD\n", "4 1135 None FLORID\n", "5 1140 None FROMLAB\n", "6 1141 None FROYSET\n", "7 1142 None GAULA\n", "8 1143 None GJELLESOGN\n", "9 1144 None GPVEST" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Create connection\n", "\n", "# Use custom RESA2 function to connect to db\n", "r2_func_path = r'C:\\Data\\James_Work\\Staff\\Heleen_d_W\\ICP_Waters\\Upload_Template\\useful_resa2_code.py'\n", "resa2 = imp.load_source('useful_resa2_code', r2_func_path)\n", "\n", "engine, conn = resa2.connect_to_resa2()\n", "\n", "# Test SQL statement\n", "sql = ('SELECT project_id, project_number, project_name '\n", " 'FROM resa2.projects')\n", "df = pd.read_sql_query(sql, engine)\n", "\n", "df.head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Woohoo - that was much easier than expected! Right, on with the data cleaning, staring with the easiest stuff first...\n", "\n", "## 2. Remove some of US sites from the analysis\n", "\n", "The definitive list of US LTM sites to be included in the analysis is attached to John’s e-mail from 26/05/2016 at 16:35. After discussion with Tore, the best way to remove the unwanted sites is to create a new project called `XXX_US_LTM_EXCLUDED` and shift the sites marked `EXCLUDE` in John's spreadsheet over to that.\n", "\n", "First, let's see how the US sites currently in the database compare to those in John's spreadsheet. Start by reading the spreadsheet." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of US sites in spreadsheet: 87.\n" ] }, { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station IDStation CodeStation nameLatitudeLongitudeINC_EXC
023683US48Willis Lake, Adirondacks43.3714-74.2463EXCLUDE
123709US74Mud Pond, Maine44.6306-65.0939INCLUDE
236982X15:020058OLITTLE HOPE POND44.5158-74.1252EXCLUDE
336983X15:020059OBIG HOPE PONDNaNNaNEXCLUDE
436984X15:020138OEAST COPPERAS POND44.3119-74.3722INCLUDE
\n", "
" ], "text/plain": [ " Station ID Station Code Station name Latitude Longitude \\\n", "0 23683 US48 Willis Lake, Adirondacks 43.3714 -74.2463 \n", "1 23709 US74 Mud Pond, Maine 44.6306 -65.0939 \n", "2 36982 X15:020058O LITTLE HOPE POND 44.5158 -74.1252 \n", "3 36983 X15:020059O BIG HOPE POND NaN NaN \n", "4 36984 X15:020138O EAST COPPERAS POND 44.3119 -74.3722 \n", "\n", " INC_EXC \n", "0 EXCLUDE \n", "1 INCLUDE \n", "2 EXCLUDE \n", "3 EXCLUDE \n", "4 INCLUDE " ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Read John's list of US sites\n", "us_xlsx = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W\\ICP_Waters'\n", " r'\\TOC_Trends_Analysis_2015\\Data\\US.sites.include.exclude.xlsx')\n", "j_df = pd.read_excel(us_xlsx, sheetname='Sheet1')\n", "\n", "print 'Total number of US sites in spreadsheet: %s.' % len(j_df)\n", "j_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, a quick manual check in RESA2 shows that the `ICPW_TOCTRENDS_2015_US_LTM` project has `PROJECT_ID=3870`, so let's get the sites associated with that project from the database." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of US sites in RESA2: 90.\n" ] }, { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idproject_idactivestation_codestation_name
0369823870Y020058ONone
1369833870Y020059ONone
2369843870Y020138ONone
3369853870Y020188ENone
4369863870Y020197ENone
\n", "
" ], "text/plain": [ " station_id project_id active station_code station_name\n", "0 36982 3870 Y 020058O None\n", "1 36983 3870 Y 020059O None\n", "2 36984 3870 Y 020138O None\n", "3 36985 3870 Y 020188E None\n", "4 36986 3870 Y 020197E None" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Get the ICPW_TOCTRENDS_2015_US_LTM sites from RESA2\n", "sql = ('SELECT * '\n", " 'FROM resa2.projects_stations '\n", " 'WHERE project_id = 3870')\n", "r_df = pd.read_sql_query(sql, engine)\n", "\n", "print 'Total number of US sites in RESA2: %s.' % len(r_df)\n", "r_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So there are **3 more sites in RESA2 than in John's spreadsheet** (and that's including the sites John would like removing). It looks as though the station IDs are compatible between the two datasets, so to try to work out what's going on we can match based on these columns and (hopefully) identify the 3 mystery sites." ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idproject_idactivestation_codestation_nameStation IDStation CodeStation nameLatitudeLongitudeINC_EXC
16369993870Y040874ONoneNaNNaNNaNNaNNaNNaN
44370273870Y1A1-109ONoneNaNNaNNaNNaNNaNNaN
45370283870Y1A1-110ONoneNaNNaNNaNNaNNaNNaN
64370473870Y1C1-106NoneNaNNaNNaNNaNNaNNaN
85370703870YME-4474NoneNaNNaNNaNNaNNaNNaN
\n", "
" ], "text/plain": [ " station_id project_id active station_code station_name Station ID \\\n", "16 36999 3870 Y 040874O None NaN \n", "44 37027 3870 Y 1A1-109O None NaN \n", "45 37028 3870 Y 1A1-110O None NaN \n", "64 37047 3870 Y 1C1-106 None NaN \n", "85 37070 3870 Y ME-4474 None NaN \n", "\n", " Station Code Station name Latitude Longitude INC_EXC \n", "16 NaN NaN NaN NaN NaN \n", "44 NaN NaN NaN NaN NaN \n", "45 NaN NaN NaN NaN NaN \n", "64 NaN NaN NaN NaN NaN \n", "85 NaN NaN NaN NaN NaN " ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df = pd.merge(r_df, j_df, how='left', \n", " left_on='station_id', right_on='Station ID')\n", "all_df[pd.isnull(all_df['Station ID'])]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Argh! There are *5 sites* in the table above, not 3. This implies that:\n", "\n", " 1. There are sites in RESA2 that are not in John's spreadsheet, **and**

\n", " 2. There are sites in John's spreadsheet that are not in RESA2.\n", "\n", "Repeating the above code using an `outer join` rather then a `left join` should make this apparent." ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idproject_idactivestation_codestation_nameStation IDStation CodeStation nameLatitudeLongitudeINC_EXC
1636999.03870.0Y040874ONoneNaNNaNNaNNaNNaNNaN
4437027.03870.0Y1A1-109ONoneNaNNaNNaNNaNNaNNaN
4537028.03870.0Y1A1-110ONoneNaNNaNNaNNaNNaNNaN
6437047.03870.0Y1C1-106NoneNaNNaNNaNNaNNaNNaN
8537070.03870.0YME-4474NoneNaNNaNNaNNaNNaNNaN
90NaNNaNNaNNaNNaN23683.0US48Willis Lake, Adirondacks43.3714-74.2463EXCLUDE
91NaNNaNNaNNaNNaN23709.0US74Mud Pond, Maine44.6306-65.0939INCLUDE
\n", "
" ], "text/plain": [ " station_id project_id active station_code station_name Station ID \\\n", "16 36999.0 3870.0 Y 040874O None NaN \n", "44 37027.0 3870.0 Y 1A1-109O None NaN \n", "45 37028.0 3870.0 Y 1A1-110O None NaN \n", "64 37047.0 3870.0 Y 1C1-106 None NaN \n", "85 37070.0 3870.0 Y ME-4474 None NaN \n", "90 NaN NaN NaN NaN NaN 23683.0 \n", "91 NaN NaN NaN NaN NaN 23709.0 \n", "\n", " Station Code Station name Latitude Longitude INC_EXC \n", "16 NaN NaN NaN NaN NaN \n", "44 NaN NaN NaN NaN NaN \n", "45 NaN NaN NaN NaN NaN \n", "64 NaN NaN NaN NaN NaN \n", "85 NaN NaN NaN NaN NaN \n", "90 US48 Willis Lake, Adirondacks 43.3714 -74.2463 EXCLUDE \n", "91 US74 Mud Pond, Maine 44.6306 -65.0939 INCLUDE " ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "all_df = pd.merge(r_df, j_df, how='outer', \n", " left_on='station_id', right_on='Station ID')\n", "all_df[pd.isnull(all_df['Station ID']) | pd.isnull(all_df['station_id'])]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The first 5 rows of this table are sites that appear in RESA2, but which are not in John's spreadsheet; the last two rows appear in John's spreadsheet but are not in RESA2 (or, at least, they're not associated with the `ICPW_TOCTRENDS_2015_US_LTM` project). \n", "\n", "Decide to do the following:\n", "\n", " * Assume the 5 sites not mentioned in John's spreadsheet are not needed in the analysis, so **exclude** them from RESA2 along with the others marked for exclusion (**check this with John**).

\n", " \n", " * Add one new site (US74; Mud Pond, Maine) to the project (or database?).

\n", " \n", " * Do nothing for Willis Lake, Adirondacks, because John has it marked for exclusion anyway.\n", "\n", "**NB:** There is *another* Mud Pond in both RESA2 and John's spreadsheet (station ID 37063; site code 1E1-134). This Mud Pond has an *almost* identical latitude to Mud Pond, Maine, but a significantly different longitude. I assume these really are two different sites, as specified in John's spreadsheet, but perhaps **double-check this with John too**. For reference, the two relevant entries from John's spreadsheet are:\n", "\n", "| Station ID | Station Code | Station name | Latitude | Longitude | INC_EXC |\n", "|:----------:|:------------:|:---------------:|:--------:|:---------:|:-------:|\n", "| 23709 | US74 | Mud Pond, Maine | 44.6306 | -65.0939 | INCLUDE |\n", "| 37063 | 1E1-134 | MUD POND | 44.633 | -68.0908 | INCLUDE |\n", "\n", "**NB2:** There is a Willis Lake already in RESA2, with exactly the same geographic co-ordinates as the Willis Lake, Adirondacks highlighted in the above table. John's spreadsheet actually contains two versions of this site as well (shown in the table below) and both have valid station IDs, so I guess he must have found it duplicated somewhere in RESA2.\n", "\n", "| Station ID | Station Code | Station name | Latitude | Longitude | INC_EXC |\n", "|:----------:|:------------:|:------------------------:|:--------:|:---------:|:-------:|\n", "| 23683 | US48 | Willis Lake, Adirondacks | 43.3714 | -74.2463 | EXCLUDE |\n", "| 37003 | 050215O | WILLIS LAKE | 43.3714 | -74.2463 | EXCLUDE |\n", "\n", "Regardless, both these are marked as `EXCLUDE`, so as long as I make sure both are removed from the project in RESA2 everything should be OK.\n", "\n", "### 2.1. Exclude sites\n", "\n", "Following Tore's advice, I've created a new project in RESA2 called `ICPW_TOCTRENDS_2015_US_LTM_EXCLUDED`, which has project code 4150. I want to associate all the sites marked `EXCLUDE` in John's spreadsheet, plus the five sites listed above, with this new code. To do this, I first need a list of all the stations I want to move. In total, there should be 20 stations marked for exclusion (15 from John's spreadsheet and 5 from above), but as Willis Lake, Adirondacks (station code US48) is not currently linked to the project, I'm only expecting 19 matches from the database itself. Let's check." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Number of sites to exclude from US_LTM project: 19.\n" ] }, { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idproject_idactivestation_codestation_name
0369823870Y020058ONone
1369833870Y020059ONone
2369993870Y040874ONone
3370033870Y050215ONone
4370273870Y1A1-109ONone
5370283870Y1A1-110ONone
6370413870Y1C1-094None
7370463870Y1C1-104None
8370473870Y1C1-106None
9370483870Y1C1-108None
10370503870Y1C1-111None
11370523870Y1C2-071None
12370533870Y1C2-073None
13370543870Y1C2-074None
14370553870Y1C2-075None
15370563870Y1C3-064None
16370573870Y1C3-075None
17370583870Y1C3-076None
18370703870YME-4474None
\n", "
" ], "text/plain": [ " station_id project_id active station_code station_name\n", "0 36982 3870 Y 020058O None\n", "1 36983 3870 Y 020059O None\n", "2 36999 3870 Y 040874O None\n", "3 37003 3870 Y 050215O None\n", "4 37027 3870 Y 1A1-109O None\n", "5 37028 3870 Y 1A1-110O None\n", "6 37041 3870 Y 1C1-094 None\n", "7 37046 3870 Y 1C1-104 None\n", "8 37047 3870 Y 1C1-106 None\n", "9 37048 3870 Y 1C1-108 None\n", "10 37050 3870 Y 1C1-111 None\n", "11 37052 3870 Y 1C2-071 None\n", "12 37053 3870 Y 1C2-073 None\n", "13 37054 3870 Y 1C2-074 None\n", "14 37055 3870 Y 1C2-075 None\n", "15 37056 3870 Y 1C3-064 None\n", "16 37057 3870 Y 1C3-075 None\n", "17 37058 3870 Y 1C3-076 None\n", "18 37070 3870 Y ME-4474 None" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# List of sites marked 'EXCLUDE' in John's spreadsheet\n", "j_exc = j_df.query('INC_EXC == \"EXCLUDE\"')\n", "j_exc_li = list(j_exc['Station ID'].values)\n", "\n", "# List of sites already in RESA2 to exclude\n", "r_exc = all_df[pd.isnull(all_df['Station ID'])]\n", "r_exc_li = [int(i) for i in list(r_exc['station_id'].values)]\n", "\n", "# Concatenate lists and convert to tuple\n", "exc_tu = tuple(j_exc_li + r_exc_li)\n", "\n", "# Extract matches from database\n", "sql = ('SELECT * '\n", " 'FROM resa2.projects_stations '\n", " 'WHERE project_id = 3870 '\n", " 'AND station_id IN %s' % str(exc_tu))\n", "\n", "exc_df = pd.read_sql_query(sql, engine)\n", "\n", "print 'Number of sites to exclude from US_LTM project: % s.' % len(exc_df)\n", "\n", "exc_df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So far so good. The final step is to use an `update query` to change the project code for these sites from 3870 to 4150. **NB: This cannot be undone**, and you should only run this code once. It will also make changes to the database, so all the code above here will return different results if you run it again in the future." ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": true }, "outputs": [], "source": [ "# Move sites to EXCLUDED project\n", "sql = ('UPDATE resa2.projects_stations '\n", " 'SET project_id=4150 '\n", " 'WHERE project_id = 3870 '\n", " 'AND station_id IN %s' % str(exc_tu))\n", " \n", "# Only run the code below when you're sure it's correct and you're\n", "# finished with the code above!\n", "result = conn.execute(sql)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Having made these changes, there should now be fewer sites associated with the `ICPW_TOCTRENDS_2015_US_LTM` project. There were originally 90 sites in RESA2 and we've just excluded 19, so there should be 71 left. John's spreadsheet has 72 US sites on the \"include\" list, but this is OK because we haven't yet added `Mud Pond, Maine` - that's the next step.\n", "\n", "### 2.2. Add a new station\n", "\n", "John's spreadsheet includes a `Station ID` for Mud Pond, Maine (23709), which I assume he got from RESA2, so perhaps the site *is* actually in the database after all, but simply not associated with the `ICPW_TOCTRENDS_2015_US_LTM` project. Let's check." ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idstation_codestation_namelake_or_riverlake_river_namelatitudelongitudealtitudemap_sheetcountry_no...catchment_peat_areacatchment_water_areastation_descriptionentered_byentered_dateblrold_idutmnutmezone
023709US74Mud Pond, MaineLNone44.6306-65.0939104NoneNone...NoneNoneNoneTOH2011-03-28 09:16:33NoneNoneNoneNoneNone
\n", "

1 rows × 30 columns

\n", "
" ], "text/plain": [ " station_id station_code station_name lake_or_river lake_river_name \\\n", "0 23709 US74 Mud Pond, Maine L None \n", "\n", " latitude longitude altitude map_sheet country_no ... \\\n", "0 44.6306 -65.0939 104 None None ... \n", "\n", " catchment_peat_area catchment_water_area station_description entered_by \\\n", "0 None None None TOH \n", "\n", " entered_date blr old_id utmn utme zone \n", "0 2011-03-28 09:16:33 None None None None None \n", "\n", "[1 rows x 30 columns]" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Search all sites in RESA2 for site ID 23709\n", "sql = ('SELECT * '\n", " 'FROM resa2.stations '\n", " 'WHERE station_id = 23709')\n", "df = pd.read_sql_query(sql, engine)\n", "\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "OK, so the site is there (it looks as though Tore added it back in March 2011), it just hasn't been associated with the updated TOC trends analysis. This should be a fairly quick fix via Access. Try the following:\n", "\n", " 1. Open Access and make an ODBC connection to RESA2's `PROJECTS_STATIONS` table.

\n", " \n", " 2. Add a new row linking `station_id 23709` to `project_id 3870`.\n", "\n", "With a bit of luck, if we now query the database for the list of stations associated with `ICPW_TOCTRENDS_2015_US_LTM`, we should get all 72 sites." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of US LTM sites in RESA2: 72.\n" ] } ], "source": [ "# Get the updated ICPW_TOCTRENDS_2015_US_LTM sites from RESA2\n", "sql = ('SELECT * '\n", " 'FROM resa2.projects_stations '\n", " 'WHERE project_id = 3870')\n", "r_df = pd.read_sql_query(sql, engine)\n", "\n", "print 'Total number of US LTM sites in RESA2: %s.' % len(r_df)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Good. The final thing for this task is to make sure the site details in RESA2 match the information in John's spreadsheet. To check this we first need to extract the site details from RESA2." ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idstation_codestation_namelatitudelongitude
036984X15:020138OEAST COPPERAS POND44.3119-74.3722
136985X15:020188ESUNDAY POND44.3447-74.3005
236986X15:020197ESOCHIA POND44.3522-74.2947
336987X15:020265OMARCY DAM POND44.1589-73.9530
436988X15:030171EGRASS POND44.6572-74.4958
\n", "
" ], "text/plain": [ " station_id station_code station_name latitude longitude\n", "0 36984 X15:020138O EAST COPPERAS POND 44.3119 -74.3722\n", "1 36985 X15:020188E SUNDAY POND 44.3447 -74.3005\n", "2 36986 X15:020197E SOCHIA POND 44.3522 -74.2947\n", "3 36987 X15:020265O MARCY DAM POND 44.1589 -73.9530\n", "4 36988 X15:030171E GRASS POND 44.6572 -74.4958" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Get the site details from RESA2 for the 72 sites\n", "sql = ('SELECT st.station_id, st.station_code, st.station_name, st.latitude, st.longitude '\n", " 'FROM resa2.projects_stations ps, resa2.stations st '\n", " 'WHERE ps.station_id=st.station_id '\n", " 'AND ps.project_id=3870')\n", "r_df = pd.read_sql_query(sql, engine)\n", "\n", "r_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And then join them to the information in John's spreadsheet, so we can check whether the columns agree." ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Station IDs match: True\n", "Station codes match: True\n", "Station names match: True\n", "Station latitudes match: True\n", "Station longitudes match: True\n" ] } ], "source": [ "# Join John's data to RESA2 data\n", "us_df = pd.merge(r_df, j_df, how='left',\n", " left_on='station_id', right_on='Station ID')\n", "\n", "# Check columns match\n", "print 'Station IDs match: ', (us_df['station_id'] == us_df['Station ID']).all()\n", "print 'Station codes match: ', (us_df['station_code'] == us_df['Station Code']).all()\n", "print 'Station names match: ', (us_df['station_name'] == us_df['Station name']).all()\n", "print 'Station latitudes match: ', np.allclose(us_df['latitude'], us_df['Latitude']) # Within tolerance of 1E-8\n", "print 'Station longitudes match:', np.allclose(us_df['longitude'], us_df['Longitude']) # Within tolerance of 1E-8" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 2.3. Summary for US LTM sites\n", "\n", " * The RESA2 project `ICPW_TOCTRENDS_2015_US_LTM` now contains *only* the 72 sites marked `INCLUDE` in John's spreadsheet.

\n", " \n", " * The station IDs, codes, names and geographic co-ordinates for these 72 sites in RESA2 are identical to those in John's spreadsheet. I haven't checked any of the other site properties yet, though - that's another task.\n", " \n", "## 3. Site properties (location, land use and elevation)\n", "\n", "The next main task is to make sure the site properties for all stations are as complete as possible. This is likely to be fiddly. \n", "\n", "In particular, we're interested in having the following details for each site:\n", "\n", " 1. Geographic location, specified as latitude and longitude using the [WGS84 GCS (ESPG 4326)](http://spatialreference.org/ref/epsg/wgs-84/).

\n", " \n", " 2. Mean catchment elevation (not just sampling point elevation).

\n", " \n", " 3. Land cover proportions, using the original land cover classes where possible:\n", "\n", " * Coniferous forest\n", " * Deciduous forest\n", " * Heathlands/scrub/shrub\n", " * Grasslands\n", " * Wetlands/peatlands\n", " * Bare rock/barren\n", " * Agriculture\n", " * Water (excluding lakes)\n", " * Water\n", "\n", "**NB:** If separate coniferous and deciduous classes are not available, an aggregated forestry class is acceptable. \n", "\n", "**NB2:** Wetlands and peatlands are not the same. Keep them separate for now, although they’ll probably be treated together in the final analysis. This means countries should report either wetlands or peatlands – not both.\n", "\n", "**NB3:** Land use proportions should sum to 100% and there should be no blanks/data gaps. This may require the addition of an “Other” category to allow for the fact that not all land classes are covered by the classification scheme above. Where possible, I’ll try to assign values for any new categories explicitly (i.e. based on information from the focal centres) rather than implicitly (i.e. as 100% minus the sum of everything else).\n", "\n", "I suspect filling in the missing information will require a bit of to-ing and fro-ing with the focal centres, which unfortunately could take a while.\n", "\n", "The first step is to see what information we already have. The easiest way to do this is to extract all the relevant site details from RESA2 to Excel. The following RESA2 projects look like they should be relevant:\n", "\n", " * ICPW_TOCTRENDS_2015_CA_ATL\n", " * ICPW_TOCTRENDS_2015_CA_DO\n", " * ICPW_TOCTRENDS_2015_CA_ICPW\n", " * ICPW_TOCTRENDS_2015_CA_NF\n", " * ICPW_TOCTRENDS_2015_CA_QU\n", " * ICPW_TOCTRENDS_2015_CZ\n", " * ICPW_TOCTRENDS_2015_CZ2\n", " * ICPW_TOCTRENDS_2015_FL\n", " * ICPW_TOCTRENDS_2015_NO\n", " * ICPW_TOCTRENDS_2015_SE\n", " * ICPW_TOCTRENDS_2015_SE_RIVERS\n", " * ICPW_TOCTRENDS_2015_UK\n", " * ICPW_TOCTRENDS_2015_US_LTM\n", " * ICPW_TOCTRENDS_2015_US_TIME\n", " \n", "Taken together, these projects are associated with 704 sites. This makes sense, because when I previously extracted data for matching sites between the 2006 and 2015 analyses (see notebook [here](http://nbviewer.jupyter.org/github/JamesSample/match_icpw_sites/blob/master/match_icpw_sites.ipynb)), I found 722 sites for the 2015 analysis, including 90 sites for the US LTM project. Having now cleaned up the US sites (above), we have 72 sites in this project, and $722 - (90 - 72) = 704$.\n", "\n", "However, before going any further, I'd like to agree on a definitive list of RESA2 projects for inclusion in the subsequent analysis. After an e-mail discussion with Heleen (e.g. 16/06/2016 at 16:53), we've decided to include the following 13 projects:\n", "\n", " * ICPW_TOCTRENDS_2015_CA_ATL\n", " * ICPW_TOCTRENDS_2015_CA_DO\n", " * ICPW_TOCTRENDS_2015_CA_ICPW\n", " * ICPW_TOCTRENDS_2015_CA_NF\n", " * ICPW_TOCTRENDS_2015_CA_QU\n", " * ICPW_TOCTRENDS_2015_CZ\n", " * ICPW_TOCTRENDS_2015_CZ2\n", " * ICPW_TOCTRENDS_2015_FL\n", " * ICPW_TOCTRENDS_2015_NO\n", " * ICPW_TOCTRENDS_2015_SE\n", " * ICPW_TOCTRENDS_2015_UK\n", " * ICPW_TOCTRENDS_2015_US_LTM\n", " * ICPWaters Ca\n", " \n", "(The last of these is a project I've not looked at before, but hopefully it won't cause any new problems). \n", "\n", "In total, the are **605 sites** associated with these projects, and I've exported all their relevant properties to an Excel file called *sites_2015_tidied.xlsx*. Let's read the spreadsheet and see what's missing." ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station_IDStation_CodeStation_nameCountryLatitudeLongitudeAltitudeCatchment_mean_eleveationECCO_ALTITUDE_AVERAGETotal_forest_area...Corine_2006_NON_IRRIGATED_ARABLE_LANDCorine_2006_OCCUPIED_BY_AGRICULTURECorine_2006_PASTURES_AREACorine_2006_PEAT_BOGSCorine_2006_SCLEROPHYLLOUS_VEGETATIONCorine_2006_SPARSELY_VEGETATED_AREASCorine_2006_SPORT_AND_LEISURE_FACILITIESCorine_2006_TRANSITIONAL_WOODLAND_SHRUBCorine_2006_WATER_BODIESCorine_2006_WATER_COURSES
037017X15:1A1-052OARBUTUS LAKEUnited States43.9875-74.2417513.0549.949859NaN74.751179...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
137043X15:1C1-097SUNSETUnited States42.9194-72.6833418.0447.748266NaN79.281882...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
237020X15:1A1-087SWINDFALL POND STREAMUnited States43.8051-74.8310591.0641.860023NaN65.429234...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
336991X15:040210OWILLYS LAKE (HORSESHOUnited States43.9722-74.9555639.0653.460774NaN79.828080...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
437061X15:1E1-132LITTLE LONG PONDUnited States44.6375-68.078169.0155.091943NaN75.103112...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
\n", "

5 rows × 53 columns

\n", "
" ], "text/plain": [ " Station_ID Station_Code Station_name Country Latitude \\\n", "0 37017 X15:1A1-052O ARBUTUS LAKE United States 43.9875 \n", "1 37043 X15:1C1-097 SUNSET United States 42.9194 \n", "2 37020 X15:1A1-087S WINDFALL POND STREAM United States 43.8051 \n", "3 36991 X15:040210O WILLYS LAKE (HORSESHO United States 43.9722 \n", "4 37061 X15:1E1-132 LITTLE LONG POND United States 44.6375 \n", "\n", " Longitude Altitude Catchment_mean_eleveation ECCO_ALTITUDE_AVERAGE \\\n", "0 -74.2417 513.0 549.949859 NaN \n", "1 -72.6833 418.0 447.748266 NaN \n", "2 -74.8310 591.0 641.860023 NaN \n", "3 -74.9555 639.0 653.460774 NaN \n", "4 -68.0781 69.0 155.091943 NaN \n", "\n", " Total_forest_area ... \\\n", "0 74.751179 ... \n", "1 79.281882 ... \n", "2 65.429234 ... \n", "3 79.828080 ... \n", "4 75.103112 ... \n", "\n", " Corine_2006_NON_IRRIGATED_ARABLE_LAND Corine_2006_OCCUPIED_BY_AGRICULTURE \\\n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 NaN NaN \n", "4 NaN NaN \n", "\n", " Corine_2006_PASTURES_AREA Corine_2006_PEAT_BOGS \\\n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 NaN NaN \n", "4 NaN NaN \n", "\n", " Corine_2006_SCLEROPHYLLOUS_VEGETATION \\\n", "0 NaN \n", "1 NaN \n", "2 NaN \n", "3 NaN \n", "4 NaN \n", "\n", " Corine_2006_SPARSELY_VEGETATED_AREAS \\\n", "0 NaN \n", "1 NaN \n", "2 NaN \n", "3 NaN \n", "4 NaN \n", "\n", " Corine_2006_SPORT_AND_LEISURE_FACILITIES \\\n", "0 NaN \n", "1 NaN \n", "2 NaN \n", "3 NaN \n", "4 NaN \n", "\n", " Corine_2006_TRANSITIONAL_WOODLAND_SHRUB Corine_2006_WATER_BODIES \\\n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 NaN NaN \n", "4 NaN NaN \n", "\n", " Corine_2006_WATER_COURSES \n", "0 NaN \n", "1 NaN \n", "2 NaN \n", "3 NaN \n", "4 NaN \n", "\n", "[5 rows x 53 columns]" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "stn_xlsx = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W'\n", " r'\\ICP_Waters\\TOC_Trends_Analysis_2015\\Data\\sites_2015_tidied.xlsx')\n", "stn_df = pd.read_excel(stn_xlsx, sheetname='DATA')\n", "\n", "# Replace spaces in header with underscores\n", "stn_df.columns = [x.replace(' ', '_') for x in stn_df.columns]\n", "\n", "stn_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.1. Sites with missing geographic co-ordinates" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station_IDStation_CodeStation_nameCountryLatitudeLongitudeAltitudeCatchment_mean_eleveationECCO_ALTITUDE_AVERAGETotal_forest_area...Corine_2006_NON_IRRIGATED_ARABLE_LANDCorine_2006_OCCUPIED_BY_AGRICULTURECorine_2006_PASTURES_AREACorine_2006_PEAT_BOGSCorine_2006_SCLEROPHYLLOUS_VEGETATIONCorine_2006_SPARSELY_VEGETATED_AREASCorine_2006_SPORT_AND_LEISURE_FACILITIESCorine_2006_TRANSITIONAL_WOODLAND_SHRUBCorine_2006_WATER_BODIESCorine_2006_WATER_COURSES
6736859UK_26Loch Coire FionnaraichUnited KingdomNaNNaNNaNNaNNaNNaN...NaNNaNNaNNaNNaNNaNNaNNaNNaNNaN
365108LAE01Langtjern, utløpNorwayNaNNaN516.0NaN589.30034775.0...NaNNaNNaN11.0NaNNaNNaNNaNNaNNaN
\n", "

2 rows × 51 columns

\n", "
" ], "text/plain": [ " Station_ID Station_Code Station_name Country \\\n", "67 36859 UK_26 Loch Coire Fionnaraich United Kingdom \n", "365 108 LAE01 Langtjern, utløp Norway \n", "\n", " Latitude Longitude Altitude Catchment_mean_eleveation \\\n", "67 NaN NaN NaN NaN \n", "365 NaN NaN 516.0 NaN \n", "\n", " ECCO_ALTITUDE_AVERAGE Total_forest_area ... \\\n", "67 NaN NaN ... \n", "365 589.300347 75.0 ... \n", "\n", " Corine_2006_NON_IRRIGATED_ARABLE_LAND \\\n", "67 NaN \n", "365 NaN \n", "\n", " Corine_2006_OCCUPIED_BY_AGRICULTURE Corine_2006_PASTURES_AREA \\\n", "67 NaN NaN \n", "365 NaN NaN \n", "\n", " Corine_2006_PEAT_BOGS Corine_2006_SCLEROPHYLLOUS_VEGETATION \\\n", "67 NaN NaN \n", "365 11.0 NaN \n", "\n", " Corine_2006_SPARSELY_VEGETATED_AREAS \\\n", "67 NaN \n", "365 NaN \n", "\n", " Corine_2006_SPORT_AND_LEISURE_FACILITIES \\\n", "67 NaN \n", "365 NaN \n", "\n", " Corine_2006_TRANSITIONAL_WOODLAND_SHRUB Corine_2006_WATER_BODIES \\\n", "67 NaN NaN \n", "365 NaN NaN \n", "\n", " Corine_2006_WATER_COURSES \n", "67 NaN \n", "365 NaN \n", "\n", "[2 rows x 51 columns]" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# For details of the 'query NaN' hack used below, see:\n", "# http://stackoverflow.com/questions/26535563/querying-for-nan-and-other-names-in-pandas\n", "\n", "# Stns with missing co-ords\n", "stn_df.query('(Latitude != Latitude) or (Longitude != Longitude)')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Slightly ironically, Langtjern is one of the sites with missing co-ordinates! In reality, RESA2 does have location information for Langtjern, but it's specified using [UTM Zone 33N (EPSG 32633)](http://spatialreference.org/ref/epsg/32633/) co-ordinates: (209388, 6704530). Converting these to WGS84 is easy enough, and is done by the code below.\n", "\n", "Metadata for the UK sites can be found here:\n", "\n", "K:\\Prosjekter\\langtransporterte forurensninger\\O-23300 - ICP-WATERS - HWI\\Database\\2015 DOC analysis\\data delivery\\UK\\copy of metadata UK from Don.xlsx\n", "\n", "However, this file doesn't include details for Loch Coire Fionnaraich. Searching online, it seems that the loch *is* part of the [UK Upland Water Monitoring Network](http://uwmn.defra.gov.uk/sites/site_25.php), which states the [site co-ordinates](http://www.nearby.org.uk/coord.cgi?p=NG945498&f=full) as latitude 57.4917, longitude -5.4306. Some information regarding land cover and altitude for this site can also be found at the [UK Lakes Portal](https://eip.ceh.ac.uk/apps/lakes/detail.html#wbid=17334), which could be useful later. **Contact Don to see whether this site should be included** and, if so, check these data are correct." ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Langtjern lat: 60.3724627229\n", "Langtjern lon: 9.72665982842\n" ] } ], "source": [ "# Project Langtjern co-ordinates to WGS84 lat/long\n", "from pyproj import Proj, transform\n", "\n", "# Initialise spatial refs.\n", "nor_proj = Proj(init='epsg:32633')\n", "wgs_proj = Proj(init='epsg:4326')\n", "\n", "# Transform\n", "lon, lat = transform(nor_proj, wgs_proj, 209388, 6704530)\n", "\n", "print 'Langtjern lat:', lat\n", "print 'Langtjern lon:', lon" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I've used an Access ODBC connection to update the co-ordinates for these two sites in RESA2.\n", "\n", "### 3.2. Sites with missing altitude information\n", "\n", "The next step is to identify sites without mean catchment elevation data. There are two columns in the database recording this kind of information: `ECCO_ALTITUDE_AVERAGE` and `Catchment_mean_eleveation` (sic), but it looks as though quite a few sites have blanks in both these columns. Let's group the sites with missing data by country and count them. " ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total number of sites without average elevation data: 131\n" ] }, { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Number of sites missing elevation data
Country
Canada116
Norway7
Sweden2
US1
United Kingdom1
United States4
\n", "
" ], "text/plain": [ " Number of sites missing elevation data\n", "Country \n", "Canada 116\n", "Norway 7\n", "Sweden 2\n", "US 1\n", "United Kingdom 1\n", "United States 4" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Stns with missing mean altitude\n", "df = stn_df.query('(Catchment_mean_eleveation != Catchment_mean_eleveation) and '\n", " '(ECCO_ALTITUDE_AVERAGE != ECCO_ALTITUDE_AVERAGE)')\n", "\n", "df = df[['Station_ID', 'Station_Code', 'Station_name', 'Country']]\n", "\n", "grpd = df.groupby(['Country'])\n", "mis_elev = grpd.count()[['Station_ID']]\n", "mis_elev.columns = ['Number of sites missing elevation data',]\n", "\n", "print 'Total number of sites without average elevation data:', len(df)\n", "\n", "mis_elev" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "(Aside: Note that one of the US sites appears to be labelled \"US\", whereas the others are all labelled \"United States\". I've corrected this in RESA2 via Access ODBC, so it shouldn't show up again).\n", "\n", "Of the 605 sites, 131 have missing entries in *both* the `Catchment_mean_eleveation` (sic) and `ECCO_ALTITUDE_AVERAGE` columns. Consider each country in turn.\n", "\n", "#### 3.2.1. United Kingdom\n", "\n", "The single UK site is Loch Coire Fionnaraich. As noted above, this does not appear in the spreadsheet of UK site metadata, so **check with Don to see whether this site should be included and, if so, ask for the mean catchment elevation**.\n", "\n", "#### 3.2.2. Norway\n", "\n", "I assume NIVA will be able to supply catchment properties for the 7 Norwegian sites pretty easily. The sites in question are listed below. Contact Heleen to see whether she knows of elevation data (or catchment boundaries) for these locations (e-mail sent 20/06/2016 at 17:09)." ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station_IDStation_CodeStation_nameCountry
35512082DALELVDalelvNorway
36912080STE01Storgama v. damNorway
37412025OVELV 19 23ØygardsbekkenNorway
3851291859-601StorvatnNorway
396114SVART01SvartetjernetNorway
40912081KAE01KÃ¥rvatn feltforskningsstasjonNorway
417221BIE01BirkenesNorway
\n", "
" ], "text/plain": [ " Station_ID Station_Code Station_name Country\n", "355 12082 DALELV Dalelv Norway\n", "369 12080 STE01 Storgama v. dam Norway\n", "374 12025 OVELV 19 23 Øygardsbekken Norway\n", "385 129 1859-601 Storvatn Norway\n", "396 114 SVART01 Svartetjernet Norway\n", "409 12081 KAE01 KÃ¥rvatn feltforskningsstasjon Norway\n", "417 221 BIE01 Birkenes Norway" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Norwegian stns with missing mean altitude\n", "df = stn_df.query('(Catchment_mean_eleveation != Catchment_mean_eleveation) and '\n", " '(ECCO_ALTITUDE_AVERAGE != ECCO_ALTITUDE_AVERAGE) and '\n", " '(Country == \"Norway\")')\n", "df = df[['Station_ID', 'Station_Code', 'Station_name', 'Country']]\n", "\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 3.2.3. Sweden\n", "\n", "The two Swedish sites without elevation data are shown below. Searching the web, I can find find data download pages for [Svinarydsjön](http://info1.ma.slu.se/ma/www_ma.acgi%24Station?ID=Intro&S=977) and [Gosjön](http://info1.ma.slu.se/ma/www_ma.acgi%24Station?ID=Intro&S=1218), but neither of these seem to have catchment characteristics such as mean elevation. Salar is probably a good person to ask about this initially - e-mail sent 20/06/2016 at 17:09." ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station_IDStation_CodeStation_nameCountry
29336804622803-144609SvinarydsjönSweden
33036757677506-156174GosjönSweden
\n", "
" ], "text/plain": [ " Station_ID Station_Code Station_name Country\n", "293 36804 622803-144609 Svinarydsjön Sweden\n", "330 36757 677506-156174 Gosjön Sweden" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Swedish stns with missing mean altitude\n", "df = stn_df.query('(Catchment_mean_eleveation != Catchment_mean_eleveation) and '\n", " '(ECCO_ALTITUDE_AVERAGE != ECCO_ALTITUDE_AVERAGE) and '\n", " '(Country == \"Sweden\")')\n", "df = df[['Station_ID', 'Station_Code', 'Station_name', 'Country']]\n", "\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### 3.2.4. United States\n", "\n", "The five US sites with missing elevation information are shown below." ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station_IDStation_CodeStation_nameCountryLatitudeLongitude
1937011X15:1364959RONDOUT CREEKUnited States41.9367-74.3764
2537014X15:1434025BISCUIT BROOKUnited States42.0111-74.4147
5337013X15:1434021W BR NEVERSINK R AT WUnited States41.9725-74.4483
6637012X15:143400680EAST BRANCH NEVERSINKUnited States41.9869-74.5031
6823709US74Mud Pond, MaineUnited States44.6306-65.0939
\n", "
" ], "text/plain": [ " Station_ID Station_Code Station_name Country Latitude \\\n", "19 37011 X15:1364959 RONDOUT CREEK United States 41.9367 \n", "25 37014 X15:1434025 BISCUIT BROOK United States 42.0111 \n", "53 37013 X15:1434021 W BR NEVERSINK R AT W United States 41.9725 \n", "66 37012 X15:143400680 EAST BRANCH NEVERSINK United States 41.9869 \n", "68 23709 US74 Mud Pond, Maine United States 44.6306 \n", "\n", " Longitude \n", "19 -74.3764 \n", "25 -74.4147 \n", "53 -74.4483 \n", "66 -74.5031 \n", "68 -65.0939 " ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# US stns with missing mean altitude\n", "df = stn_df.query('(Catchment_mean_eleveation != Catchment_mean_eleveation) and '\n", " '(ECCO_ALTITUDE_AVERAGE != ECCO_ALTITUDE_AVERAGE) and '\n", " '(Country == \"United States\")')\n", "df = df[['Station_ID', 'Station_Code', 'Station_name', 'Country', 'Latitude', 'Longitude']]\n", "\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In his e-mail sent 23/05/2016 at 16:24, John sent me a file containing the mean elevation and land use proportions for 86 US sites. Subsequently, some of these sites have been excluded (see John's e-mail from 26/05/2016 at 16:35), but the original file nevertheless includes land use proportions and mean elevations for the first four sites in the table above. However, although the station codes appear to match, some of the geographic co-ordinates are slightly different. The table below shows the co-ordinates in John's *LTM_WSHED_LANDCOVER.csv* file, which can be compared to the values in the table above (which are from RESA2, and which also match the figures in John's *US.sites.include.exclude.xlsx* spreadsheet). \n", "\n", "| SITE_ID | LATDD | LONDD |\n", "|:---------:|:-------:|:--------:|\n", "| 1364959 | 41.9367 | -74.3764 |\n", "| 1434025 | 41.9869 | -74.5031 |\n", "| 1434021 | 42.0111 | -74.4147 |\n", "| 143400680 | 41.9725 | -74.4483 |\n", "\n", "The differences in co-ordinates are small (< 0.1 degrees of longitude, which is approximately 11 km), and they are probably due to people using to slightly different co-ordinate transformations from the original (projected?) spatial reference system into WGS84. Nevertheless, **check with John** before using this spreadsheet to update the elevation and land use information for the US LTM sites. Also need to **ask John for elevation and land land use statistics for Mud Pond, Maine (US74)**. This station code doesn't appear in *LTM_WSHED_LANDCOVER.csv* (or, if it does, it's co-ordinates and station code are specified differently), so at present I don't have any land use or elevation data for this site.\n", "\n", "#### 3.2.5. Canada\n", "\n", "The majority of the sites with missing data are Canadian (116 sites in total), and the metadata files we currently have for Canada are on the network here:\n", "\n", "K:\\Prosjekter\\langtransporterte forurensninger\\O-23300 - ICP-WATERS - HWI\\Database\\2015 DOC analysis\\data delivery\\CA\n", "\n", "None of these files include catchment mean elevations, though (and most are missing land use information too - see below). Most of them *do* have the elevation of the sampling location, but in our meeting back in May Don didn't think this would be sufficient for the analysis. \n", "\n", "Strangely, there are only 109 Canadian sites in the raw data folder on the network, so where have the other 7 come from?\n", "\n", "| Country | Region code | No. of sites | Contact |\n", "|:-------:|:-----------:|:------------:|:---------------:|\n", "| Canada | Dorset | 8 | Andrew Paterson |\n", "| Canada | QC | 37 | Suzanne Couture |\n", "| Canada | Atl | 52 | Suzanne Couture |\n", "| Canada | NF | 12 | Suzanne Couture |\n", "| | | | |\n", "| **Total** | | 109 | |\n", "\n", "Sorting this out is likely to be fiddly. As a start, I've created a new Excel file (*canadian_raw_vs_resa2.xlsx*) and copied the raw data for the 109 sites into one sheet and the RESA2 data for the 116 sites into another. Unfortunately, the site codes, names and even co-ordinates are significantly different between the two sheets (!), so there's no robust way of matching them automatically. Linking by name using a simple `VLOOKUP` function in Excel returns 93 matches; doing the same using the site code (after stripping off the `X15:`) gets me another 5. The rest will need to be done manually. During this process I've discovered that `MOUNT TOM LAKE` appears twice in the raw data (in the file *Site characteristics ICP Waters trend analysis_Atl_final.xlsx*), so there are actually only 108 Canadian sites in the folder above.\n", "\n", "The overall conclusion here is that I need to **contact Suzanne and Andrew** to see if they have mean catchment elevation data for **all** their sites. In addition, there are another 8 Canadian sites $(= 116 - 108)$ where I don't know who supplied the original data. These sites are listed below. E-mail Heleen (20/06/2016 at 17:09) to ask if she knows where these data came from originally." ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station IDStrip_X15_CodeStation nameLatitudeLongitudeIn_Raw
10023467CA17Ontario,Lake23949.707-93.7200
10123466CA16Ontario,Lake22449.658-93.7170
10723453CA02Ontario, Algoma Region, Wishart Lake47.041-84.4020
10823452CA01Ontario, Algoma Region, Batchawana Lake47.060-84.3930
10923454CA03Ontario, Algoma Region, Little Turkey Lake47.041-84.4060
11023469CA20Ontario,Lake37349.740-93.7930
11223468CA19Ontario. Lake 30549.689-93.6860
11323455CA04Ontario, Algoma Region, Turkey Lake47.050-84.4080
\n", "
" ], "text/plain": [ " Station ID Strip_X15_Code Station name \\\n", "100 23467 CA17 Ontario,Lake239 \n", "101 23466 CA16 Ontario,Lake224 \n", "107 23453 CA02 Ontario, Algoma Region, Wishart Lake \n", "108 23452 CA01 Ontario, Algoma Region, Batchawana Lake \n", "109 23454 CA03 Ontario, Algoma Region, Little Turkey Lake \n", "110 23469 CA20 Ontario,Lake373 \n", "112 23468 CA19 Ontario. Lake 305 \n", "113 23455 CA04 Ontario, Algoma Region, Turkey Lake \n", "\n", " Latitude Longitude In_Raw \n", "100 49.707 -93.720 0 \n", "101 49.658 -93.717 0 \n", "107 47.041 -84.402 0 \n", "108 47.060 -84.393 0 \n", "109 47.041 -84.406 0 \n", "110 49.740 -93.793 0 \n", "112 49.689 -93.686 0 \n", "113 47.050 -84.408 0 " ] }, "execution_count": 32, "metadata": {}, "output_type": "execute_result" } ], "source": [ "can_xlsx = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W'\n", " r'\\ICP_Waters\\TOC_Trends_Analysis_2015\\Data\\canadian_raw_vs_resa2.xlsx')\n", "\n", "can_df = pd.read_excel(can_xlsx, sheetname='RESA2_CA')\n", "can_df = can_df[['Station ID', 'Strip_X15_Code', 'Station name', \n", " 'Latitude', 'Longitude', 'In_Raw']]\n", "can_df.query('In_Raw == 0')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 3.3. Sites with missing land use information\n", "\n", "It seems as though different countires have reported their land use in different ways, so I suspect this is going to be complicated. The best approach is probably going to be to consider each country in turn.\n", "\n", "#### 3.3.1. Canada\n", "\n", "There is a small amount of land use information present for the Canadian sites, but it's very patchy and the values don't add up to anything like 100%. As I need to ask for elevation information for all of these sites anyway, it's probably a good idea to **ask for land use at the same time**.\n", "\n", "#### 3.3.2. Czech Republic\n", "\n", "All the land use proportions add to 100%. Woohoo!\n", "\n", "#### 3.3.3. Finland\n", "\n", "Finland seems to have provided fairly comprehensive land use information, but the values rarely add up to 100% (108% in one case!). We can either query this with the Finns, or just assume the remaining land belongs to an \"Other\" category (not sure what to do with the 108% site though). **Ask Heleen what she'd like to do**.\n", "\n", "#### 3.3.4. Norway\n", "\n", "Like Finland, the Norwegian data seems rather patchy and rarely sums to 100%. **Ask Heleen where these values came from originally and whether she'd like to refine/improve them**.\n", "\n", "#### 3.3.5. Poland\n", "\n", "The Polish data is a mystery. Total land cover percentages range from 113% to 161% and the values for `Grassland` are identical to those for `Wetland`. Even allowing for this duplication, the numbers still don't make much sense. I also can't find the raw data on the network anywhere - **see if Heleen knows where the values come from?**\n", "\n", "#### 3.3.6. Slovenia\n", "\n", "The situation for Slovenia is very similar to Poland, with total land cover percentages well over 100%. Also, just like Poland, the `Grassland` and `Wetland` percentages are identical, which is obviously an error. This strongly suggests some kind of problem in the data upload procedure, but the issue isn't present for all countries. I'm not sure what's going on here yet, but **this is definitely something to watch out for**.\n", "\n", "Actually, I'm a bit surprised Slovenia is in here at all - it's not one of the countries listed in project codes at the start of section 3. Nor is Poland for that matter! After a quick check in RESA2, it seems that Poland and Slovenia are both grouped under the Czech Republic project. Hmm.\n", "\n", "As with Poland, I'm struggling to find the original metadata for the Slovenian sites. **Ask Heleen to see if she can point me in the right direction**.\n", "\n", "#### 3.3.7. Sweden\n", "\n", "The Swedish data look fairly complete, although there's no distinction made between deciduous and coniferous forestry (there's just an aggregated `Total forest` class. Most of the land use proportions add to somewhere close to 100%, but there are about 45 sites where the total is less than 90% and 19 sites where it's less than 50%. Some of these probably need following up. **Ask Salar if he knows where to get land use proportions for Swedish sites**.\n", "\n", "#### 3.3.8. United Kingdom\n", "\n", "Land use proportions for all but two of the UK sites sum to *exactly* 100%. It's late on a Friday afternoon, and this simple result makes me feel so grateful I could almost weep. It must be nearly home time! \n", "\n", "The two sites that need correcting are:\n", "\n", " 1. **Loch Coire Fionnaraich (station code `UK_26`)**, which has no land use (or elevation) data at all yet (but information is available from the [UK Lakes Portal](https://eip.ceh.ac.uk/apps/lakes/detail.html#wbid=17334)), and

\n", " \n", " 2. **Llyn Llagi (station code `UK_15`)**, where the summed proportions equal 105%. This error seems to stem from the raw metadata for the UK sites, which can be found here:\n", " \n", " K:\\Prosjekter\\langtransporterte forurensninger\\O-23300 - ICP-WATERS - HWI\\Database\\2015 DOC analysis\\data delivery\\UK\\copy of metadata UK from Don.xlsx\n", "\n", "**Ask Don if the data from the [UK Lakes Portal](https://eip.ceh.ac.uk/apps/lakes/detail.html#wbid=17334) is suitable and also whether he can supply corrected proportions for Llyn Llagi**.\n", "\n", "#### 3.3.9. United States\n", "\n", "The land use proportions for the US sites are almost complete and they sum to (very close to) 100%, which is great. There are two things to check:\n", "\n", " 1. The sum of the `Deciduous` and `Coniferous` forestry classes is often significantly less than for the `Total forest` class. The overall land use proportions only add to 100% if the `Total forest` class is used, rather than considering deciduous and coniferous classes separately.

\n", " \n", " 2. Land use proportions are missing for 5 US sites. These are the same sites identified above as having missing elevation data, but for completeness they are shown again in the table below." ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station_IDStation_CodeStation_nameCountryLatitudeLongitude
1937011X15:1364959RONDOUT CREEKUnited States41.9367-74.3764
2537014X15:1434025BISCUIT BROOKUnited States42.0111-74.4147
5337013X15:1434021W BR NEVERSINK R AT WUnited States41.9725-74.4483
6637012X15:143400680EAST BRANCH NEVERSINKUnited States41.9869-74.5031
6823709US74Mud Pond, MaineUnited States44.6306-65.0939
\n", "
" ], "text/plain": [ " Station_ID Station_Code Station_name Country Latitude \\\n", "19 37011 X15:1364959 RONDOUT CREEK United States 41.9367 \n", "25 37014 X15:1434025 BISCUIT BROOK United States 42.0111 \n", "53 37013 X15:1434021 W BR NEVERSINK R AT W United States 41.9725 \n", "66 37012 X15:143400680 EAST BRANCH NEVERSINK United States 41.9869 \n", "68 23709 US74 Mud Pond, Maine United States 44.6306 \n", "\n", " Longitude \n", "19 -74.3764 \n", "25 -74.4147 \n", "53 -74.4483 \n", "66 -74.5031 \n", "68 -65.0939 " ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# US stns with missing mean altitude\n", "df = stn_df.query('(Catchment_mean_eleveation != Catchment_mean_eleveation) and '\n", " '(ECCO_ALTITUDE_AVERAGE != ECCO_ALTITUDE_AVERAGE) and '\n", " '(Country == \"United States\")')\n", "df = df[['Station_ID', 'Station_Code', 'Station_name', 'Country', 'Latitude', 'Longitude']]\n", "\n", "df" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "John's file *LTM_WSHED_LANDCOVER.csv* contains proportions for the first 4 of these, but I'm still lacking land cover data for Mud Pond, Maine (station code US74). **Ask John for this data and also double check forestry proportions**.\n", "\n", "## 4. Distance to coast\n", "\n", "During the meeting on 27/05/2016, Don and John thought it would be helpful to know the distance from each site to the nearest piece of coastline (in any direction). In Euclidean co-ordinates this is a simple calculation, but at intercontinental scale using WGS84 we need to perform geodesic calculations on the ellipsoid, which are more complicated. The most recent versions of ArcGIS introduced a `method='GEODESIC'` option for exacltly this situation, but this software isn't yet available at NIVA. Major spatial database platforms such as Oracle Spatial and PostGIS also include this functionality, but the NIVA Oracle instance isn't spatially enabled and setting up a PostGIS server just for this calculation seems a bit over the top. I can think of two ways of doing this:\n", "\n", " 1. Code my own solution using the [Vincenty formula](https://en.wikipedia.org/wiki/Vincenty%27s_formulae). This is not too difficult in principle, but optimising it so that it runs efficiently might prove difficult.

\n", " \n", " 2. Use SpatiaLite, which is the spatially enabled version of SQLite. This should be much simpler to setup than PostGIS, but last time I used SpatiaLite for geodesic calculations (several years ago) I had some reservations about the accuracy of the output. These issues have likely been fixed in the meantime, but it would be good to check.\n", " \n", "I think the best way is to perfrom the calculation using SpatiaLite and then check the results are sensible using my own code as well. I can also compare my output to John's results for the 2006 analysis, althoigh I think John may have done something a bit more sophisticated, such as measuring distances in a particular direction depending on the prevailing weather.\n", "\n", "### 4.1. SpatiaLite\n", "\n", "Start off by downloading and installing SpatiaLite and the SpatiaLite GUI from [here](http://www.gaia-gis.it/gaia-sins/windows-bin-amd64/). Then obtain a medium resolution (1:50 million scale) global coastline dataset in WGS84 co-ordinates from [Natural Earth](http://www.naturalearthdata.com/downloads/50m-physical-vectors/) and, using ArcGIS, merge each of the separate coastline features into a single `MULTILINESTRING` object. Next, create a point shapefile (using the WGS84 spatial reference system) from the latitudes and longitudes in RESA2. Import both these shapefiles into a new SpatiaLite database called *dist_to_coast.sqlite*.\n", "\n", "The SpatiLite SQL code below calculates the distance from each station to the nearest point on the coast.\n", "\n", " CREATE TABLE distances AS\n", " SELECT \n", " s.Station_ID AS station_id, \n", " s.Station_Co AS station_code, \n", " s.Station_na AS station_name, \n", " s.Country AS country, \n", " ST_DISTANCE(c.Geometry, s.Geometry, 1) AS distance_m\n", " FROM ne_50m_coastline AS c, toc_2015_sites AS s;\n", " \n", "This table has been exported as *distance_to_coast.csv*." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
station_idstation_codestation_namecountrydistance_m
037017X15:1A1-052OARBUTUS LAKEUnited States119943.635281
137043X15:1C1-097SUNSETUnited States180382.850457
237020X15:1A1-087SWINDFALL POND STREAMUnited States133560.750095
336991X15:040210OWILLYS LAKE (HORSESHOUnited States116305.747093
437061X15:1E1-132LITTLE LONG PONDUnited States16462.380621
\n", "
" ], "text/plain": [ " station_id station_code station_name country \\\n", "0 37017 X15:1A1-052O ARBUTUS LAKE United States \n", "1 37043 X15:1C1-097 SUNSET United States \n", "2 37020 X15:1A1-087S WINDFALL POND STREAM United States \n", "3 36991 X15:040210O WILLYS LAKE (HORSESHO United States \n", "4 37061 X15:1E1-132 LITTLE LONG POND United States \n", "\n", " distance_m \n", "0 119943.635281 \n", "1 180382.850457 \n", "2 133560.750095 \n", "3 116305.747093 \n", "4 16462.380621 " ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Read distances to coastline table\n", "dist_csv = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W'\n", " r'\\ICP_Waters\\TOC_Trends_Analysis_2015\\Data\\distance_to_coast.csv')\n", "dist_df = pd.read_csv(dist_csv)\n", "\n", "dist_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.2. The Vincenty formula\n", "\n", "To check the results above, I've converted the Natural Earth coastline into a set of points spaced at 0.05 degree intervals. I've then deleted all the points that are very obviously far away from our stations of interest (e.g. Antarctica) and use the `Add XY Co-ordinates` tool to calculate the latitude and longitude for each of these points. This leaves me with 21,718 coastline points in total. A very naive and inefficent way to estimate the nearest point on the coast is therefore to calcualte the distances from each station to *all* 21,718 coastal points, and then choose the smallest value in each case. This is incredibly badly optimised and requires $605 * 21,718 = 13,139,390$ calculations, but I can let it run while I do other things and it should provide a useful check on the (hopefully more accurate) results from SpatiaLite.\n", "\n", "Begin by reading the site co-ordinates and coastal point co-ordinates into two dataframes, and then loop over all combinations." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Station IDStation CodeStation nameCountryLatitudeLongitudedistance_m
037017X15:1A1-052OARBUTUS LAKEUnited States43.9875-74.2417118967.318700
137043X15:1C1-097SUNSETUnited States42.9194-72.6833149850.928390
237020X15:1A1-087SWINDFALL POND STREAMUnited States43.8051-74.8310134266.908116
336991X15:040210OWILLYS LAKE (HORSESHOUnited States43.9722-74.9555117156.380590
437061X15:1E1-132LITTLE LONG PONDUnited States44.6375-68.078116284.663233
\n", "
" ], "text/plain": [ " Station ID Station Code Station name Country Latitude \\\n", "0 37017 X15:1A1-052O ARBUTUS LAKE United States 43.9875 \n", "1 37043 X15:1C1-097 SUNSET United States 42.9194 \n", "2 37020 X15:1A1-087S WINDFALL POND STREAM United States 43.8051 \n", "3 36991 X15:040210O WILLYS LAKE (HORSESHO United States 43.9722 \n", "4 37061 X15:1E1-132 LITTLE LONG POND United States 44.6375 \n", "\n", " Longitude distance_m \n", "0 -74.2417 118967.318700 \n", "1 -72.6833 149850.928390 \n", "2 -74.8310 134266.908116 \n", "3 -74.9555 117156.380590 \n", "4 -68.0781 16284.663233 " ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from geopy.distance import vincenty\n", "\n", "# File paths\n", "coast_path = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W'\n", " r'\\ICP_Waters\\TOC_Trends_Analysis_2015\\Data\\coast_points.csv')\n", "\n", "site_path = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W'\n", " r'\\ICP_Waters\\TOC_Trends_Analysis_2015\\Data\\sites_2015_locs.csv')\n", "\n", "# Read co-ords\n", "coast_df = pd.read_csv(coast_path)\n", "coast_df = coast_df[['POINT_Y', 'POINT_X']]\n", "coast_df.columns = ['lat', 'lon']\n", "\n", "site_df = pd.read_csv(site_path, delimiter=';')\n", "\n", "# List of min distances\n", "min_dists = []\n", "\n", "# Loop over sites\n", "for site in site_df.itertuples():\n", " s_lat, s_lon = site.Latitude, site.Longitude\n", " \n", " # Pre-allocate array for distances\n", " dists = np.zeros(shape=(len(coast_df)))\n", " \n", " # Loop over coast\n", " for cst_pt in coast_df.itertuples():\n", " # Co-ords on coast\n", " c_lat, c_lon = cst_pt.lat, cst_pt.lon\n", " \n", " # Index for array\n", " idx = cst_pt.Index\n", " \n", " # Insert into array\n", " dists[idx] = vincenty((s_lat, s_lon), \n", " (c_lat, c_lon)).meters\n", " \n", " \n", " # Append min distance\n", " min_dists.append(dists.min())\n", " \n", "# Add distance column to site_df\n", "site_df['distance_m'] = np.array(min_dists)\n", "\n", "site_df.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### 4.3. Comparison\n", "\n", "We can now compare the two distance estimates. They will not be exactly the same due to the way I've discretised the coastline for the Vincenty estimate, but they should be similar. " ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "
\n", "" ], "text/plain": [ "" ] }, "execution_count": 28, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# Compare Vincenty and SpatiaLite distance estimates\n", "\n", "# SpatiaLite data\n", "df1 = dist_df[['station_id', 'distance_m']]\n", "df1.columns =['stn_id', 'spatialite']\n", "\n", "# Vincenty data\n", "df2 = site_df[['Station ID', 'distance_m']]\n", "df2.columns =['stn_id', 'vincenty']\n", "\n", "# Combine\n", "df = pd.merge(df1, df2, how='outer', \n", " left_on='stn_id', right_on='stn_id')\n", "\n", "# Convert to km\n", "df['vincenty'] = df['vincenty'] / 1000.\n", "df['spatialite'] = df['spatialite'] / 1000.\n", "\n", "# Plot\n", "fig, ax = plt.subplots()\n", "\n", "# Get labels for points\n", "labs = list(df['stn_id'].values)\n", "labs = [str(i) for i in labs]\n", "\n", "# Scatter plot\n", "scatter = ax.scatter(df['vincenty'].values, df['spatialite'].values)\n", "tooltip = mpld3.plugins.PointLabelTooltip(scatter, labels=labs)\n", "mpld3.plugins.connect(fig, tooltip)\n", "ax.set_title(\"Distance to coast\")\n", "ax.set_xlabel(\"Vincenty distance (km)\")\n", "ax.set_ylabel(\"SpatiaLite distance (km)\")\n", "mpld3.display()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The plot above is \"interactive\": hovering the mouse over the plot area should display **pan** and **zoom** tools near the plot's bottom left hand corner, and **hovering the mouse over any point will display the station ID for that location**. These tools can be used to explore the plot. Most of the distance estimates are essentially identical, but a few are significnatly different. Lets plot those where the difference is large (> 75 km). " ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from mpl_toolkits.basemap import Basemap\n", "\n", "# Get sites where distance to coast estimates differ by > 100 km\n", "df['diff'] = np.absolute(df['spatialite'] - df['vincenty'])\n", "\n", "big_dif = df.query('diff > 75')\n", "\n", "big_dif = pd.merge(big_dif, site_df, how='left',\n", " left_on='stn_id', right_on='Station ID')\n", "\n", "fig = plt.figure(figsize=(10, 10))\n", "\n", "# Use a basic Mercator projection\n", "m = Basemap(projection='merc',\n", " llcrnrlat=50,\n", " urcrnrlat=70,\n", " llcrnrlon=0,\n", " urcrnrlon=40, \n", " lat_ts=20, \n", " resolution='i')\n", "\n", "# Add map components\n", "m.fillcontinents (color='darkkhaki', lake_color='darkkhaki')\n", "m.drawcountries(linewidth=1)\n", "m.drawmapboundary(fill_color='paleturquoise')\n", "\n", "# Map (long, lat) to (x, y) for plotting\n", "x, y = m(big_dif['Longitude'].values, big_dif['Latitude'].values)\n", "\n", "# Plot\n", "plt.plot(x, y, 'or', markersize=5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The sites with very large errors are mostly located well inland, approximately equidistant from two possible coastlines. The methods used to calculate these distances are numerical (i.e. iterative), so I suspect the differences I'm seeing are associated with convergence of the algorithms, combined with my coarse discretisation of the coastline in the case of Vincenty.\n", "\n", "For now, I'll **use the estimates from SpatiaLite**, as these should be more accurate.\n", "\n", "### 4.4. Comparison to John's 2006 estimates\n", "\n", "In his e-mail from 27/05/2016 at 14:42, John sent me the \"distance to coast\" dataset he created for the 2006 analysis. It's not easy to match sites between 2006 and 2015, but for those locations with a common site code we can easily compare the three estimates." ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 30, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Read John's distance data\n", "j_dist_path = (r'\\\\niva-of5\\osl-userdata$\\JES\\Documents\\James_Work\\Staff\\Heleen_d_W'\n", " r'\\ICP_Waters\\TOC_Trends_Analysis_2015\\Data\\Distance.from.coast.data.from.2006.xlsx')\n", "j_df = pd.read_excel(j_dist_path, sheetname='Sheet1')\n", "\n", "# Join to the other estimates\n", "df2 = pd.merge(df, j_df, how='inner',\n", " left_on='stn_id', right_on='SITE_NO')\n", "df2 = df2[['spatialite', 'vincenty', 'DIST_COAST']]\n", "df2.columns = ['spatialite', 'vincenty', 'john']\n", "df2.dropna(how='any', inplace=True)\n", "\n", "# Scatterplot matrix\n", "sn.pairplot(df2, kind='reg', diag_kind='kde')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Unsurprisingly, the distances aren't identical, but they do at least show a clear positive relationship. In general, John's estimates are larger than those from SpatiaLite or Vincenty, which probably reflects the fact that John calculated distances in a *particular direction*, rather than just going for the closest point on the coast as I've done here.\n", "\n", "Overall, I think these distance estimates seem reasonable, **add a new site parameter to RESA2 and upload the SpatiaLite values calculated above to the database**." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.6.6" } }, "nbformat": 4, "nbformat_minor": 2 }