diff --git a/jupyterbook/content/code_gallery/data_access_notebooks/2016-10-12-fetching_data.ipynb b/jupyterbook/content/code_gallery/data_access_notebooks/2016-10-12-fetching_data.ipynb
index 947f9649..7ffcb595 100644
--- a/jupyterbook/content/code_gallery/data_access_notebooks/2016-10-12-fetching_data.ipynb
+++ b/jupyterbook/content/code_gallery/data_access_notebooks/2016-10-12-fetching_data.ipynb
@@ -4,752 +4,632 @@
"cell_type": "markdown",
"metadata": {},
"source": [
- "# Fetching data from CO-OPS SOS with Python tools\n",
+ "# Fetching data from CO-OPS ERDDAP with Python tools\n",
"\n",
"Created: 2016-10-12\n",
"\n",
- "Updated: 2022-05-25"
- ]
- },
- {
- "cell_type": "markdown",
- "metadata": {},
- "source": [
- "[Pyoos](https://github.com/ioos/pyoos) is a high level data collection library for met/ocean data publicly available through many different websites and webservices.\n",
+ "Updated: 2022-05-26\n",
"\n",
- "In this post we will use `pyoos` to find\n",
- "and download data from the [Center for Operational Oceanographic Products and Services (CO-OPS)](http://opendap.co-ops.nos.noaa.gov/ioos-dif-sos/) using OGC's SOS.\n",
+ "In this post we will use `erddapy` to find and download data from the\n",
+ "[Center for Operational Oceanographic Products and Services (CO-OPS)](https://opendap.co-ops.nos.noaa.gov/erddap/) ERDDAP server.\n",
"\n",
- "\n",
- "- OGC: [Open Geospatial Consortium](http://www.opengeospatial.org/)\n",
- "- SOS: [Sensor Observation Service](http://www.opengeospatial.org/standards/sos)\n",
- "\n",
- "First we have to define a time span.\n",
- "Here we will fetch data during the [hurricane Matthew](https://en.wikipedia.org/wiki/Hurricane_Matthew) passage over the southeast states from 2016-10-05 to 2016-10-12."
+ "Here we will fetch data during the [hurricane Matthew](https://en.wikipedia.org/wiki/Hurricane_Matthew) passage over the southeast states from 2016-10-05 to 2016-10-12. The first step is to instantiate the server object and then add the constraints for our query."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
- "collapsed": true,
"jupyter": {
"outputs_hidden": true
}
},
"outputs": [],
"source": [
- "from datetime import datetime, timedelta\n",
+ "from erddapy import ERDDAP\n",
"\n",
- "event_date = datetime(2016, 10, 9)\n",
"\n",
- "start_time = event_date - timedelta(days=4)\n",
- "end_time = event_date + timedelta(days=3)"
+ "e = ERDDAP(\n",
+ " server=\"https://opendap.co-ops.nos.noaa.gov/erddap\",\n",
+ " protocol=\"tabledap\",\n",
+ ")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "The geographical bounding box includes all the states in the [SECOORA](http://secoora.org/) region: Florida, Georgia, South and North Carolina.\n",
- "\n",
- "The variable of choice is sea level and we will convert any elevation units to `meters`."
+ "The geographical bounding box includes all the states in the [SECOORA](http://secoora.org/) region: Florida, Georgia, South and North Carolina. "
]
},
{
"cell_type": "code",
"execution_count": 2,
- "metadata": {
- "collapsed": true,
- "jupyter": {
- "outputs_hidden": true
- }
- },
+ "metadata": {},
"outputs": [],
"source": [
- "import cf_units\n",
+ "min_lat, max_lat = 24.25, 36.70\n",
+ "min_lon, max_lon = -87.40, -74.70"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 3,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
Make this Notebook Trusted to load map: File -> Trust Notebook
"
+ ],
+ "text/plain": [
+ ""
+ ]
+ },
+ "execution_count": 3,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "import folium\n",
+ "\n",
"\n",
- "units = cf_units.Unit(\"meters\")\n",
+ "lon = (min_lon + max_lon) / 2\n",
+ "lat = (min_lat + max_lat) / 2\n",
"\n",
- "bbox = [-87.40, 24.25, -74.70, 36.70]\n",
+ "m = folium.Map(location=[lat, lon], tiles=\"OpenStreetMap\", zoom_start=5)\n",
+ "\n",
+ "folium.Polygon([(min_lat,min_lon), (max_lat,min_lon), (max_lat,max_lon), (min_lat,max_lon)],\n",
+ " fill=True).add_to(m)\n",
"\n",
- "sos_name = \"water_surface_height_above_reference_datum\""
+ "m"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "In this example we will use only the `CoopsSos`,\n",
- "but it is worth mentioning that `pyoos` has other collectors like IOOS SWE,\n",
- "NcSOS, 52N, NERRS, NDBC, etc.\n",
- "\n",
- "Pyoos' usage is quite simple, all we have to do is:\n",
- "\n",
- "- create an instance of the collector we will use and,\n",
- "- feed the instance with the data for the collection."
+ "Unfortunately, as you'll notice below, adding the bounding box as a constraint won't help because this ERDDAP server requires the `STATION_ID` number as a mandatory argument for the request. "
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "So, this means we need to know them before making the request and we cannot get them from the server."
]
},
{
"cell_type": "code",
- "execution_count": 3,
- "metadata": {
- "collapsed": true,
- "jupyter": {
- "outputs_hidden": true
- }
- },
+ "execution_count": 4,
+ "metadata": {},
"outputs": [],
"source": [
- "from pyoos.collectors.coops.coops_sos import CoopsSos\n",
+ "e.constraints = {\n",
+ " \"BEGIN_DATE=\": \"2016-10-04\",\n",
+ " \"END_DATE=\": \"2016-10-12\",\n",
+ " \"DATUM=\": \"MSL\",\n",
+ "}"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "We can check all the `dataset_id` that are available within those constraints with the search URL."
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 5,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "0 allDatasets\n",
+ "1 IOOS_Air_Gap\n",
+ "2 IOOS_Raw_Currents_Header\n",
+ "3 IOOS_Raw_Currents\n",
+ "4 IOOS_Air_Temperature\n",
+ "5 IOOS_Barometric_Pressure\n",
+ "6 IOOS_Conductivity\n",
+ "7 IOOS_Relative_Humidity\n",
+ "8 IOOS_Visibility\n",
+ "9 IOOS_Water_Temperature\n",
+ "10 IOOS_Wind\n",
+ "11 IOOS_Raw_One_Min_Water_Level\n",
+ "12 IOOS_Raw_Water_Level\n",
+ "13 IOOS_Daily_Verified_Water_Level\n",
+ "14 IOOS_High_Low_Verified_Water_Level\n",
+ "15 IOOS_Hourly_Height_Verified_Water_Level\n",
+ "16 IOOS_Monthly_Verified_Water_Level\n",
+ "17 IOOS_SixMin_Verified_Water_Level\n",
+ "Name: Dataset ID, dtype: object"
+ ]
+ },
+ "execution_count": 5,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "import pandas as pd\n",
"\n",
- "collector = CoopsSos()\n",
"\n",
- "collector.set_bbox(bbox)\n",
- "collector.end_time = end_time\n",
- "collector.start_time = start_time\n",
- "collector.variables = [sos_name]"
+ "df = pd.read_csv(e.get_search_url(response=\"csv\"))\n",
+ "df[\"Dataset ID\"]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "Let's check we we got with the search above."
+ "We want the `dataset_id` = `IOOS_Hourly_Height_Verified_Water_Level` to check the hourly sea surface height time-series. However, we still do not know the actual variable name. Unfortunately, the [Climate and Forecast conventions (CF)](https://cfconventions.org/) do not define the **variable names** but it does define some variable metadata attributes like `standard_name`, making it easy to check what is in a dataset. The data we are looking for should be associated with the CF `standard_name` = [`water_surface_height_above_reference_datum`](https://cfconventions.org/Data/cf-standard-names/current/build/cf-standard-name-table.html).\n",
+ "\n",
+ "In `erddapy` one can query the available variables for a standard name with the method `get_var_by_attr`."
]
},
{
"cell_type": "code",
- "execution_count": 4,
+ "execution_count": 6,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
- "Collector offerings\n",
- "NOAA.NOS.CO-OPS SOS: 1188 offerings\n"
+ "Found WL_VALUE variable(s) in the dataset.\n"
]
}
],
"source": [
- "ofrs = collector.server.offerings\n",
- "title = collector.server.identification.title\n",
+ "dataset_id = \"IOOS_Hourly_Height_Verified_Water_Level\"\n",
+ "std_name = \"water_surface_height_above_reference_datum\"\n",
+ "\n",
+ "e.dataset_id = dataset_id\n",
"\n",
- "print(\"Collector offerings\")\n",
- "print(\"{}: {} offerings\".format(title, len(ofrs)))"
+ "variables = e.get_var_by_attr(\n",
+ " standard_name=std_name\n",
+ ")\n",
+ "\n",
+ "print(f\"Found {','.join(variables)} variable(s) in the dataset.\")\n",
+ "\n",
+ "\n",
+ "variables.extend([\"time\"]) # we also want to download the time.\n",
+ "e.variables = variables"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "OK... That is quite misleading. We did not find 1113 stations with that search.\n",
- "\n",
- "That number is probably all the CO-OPS SOS stations available.\n",
- "\n",
- "In order to find out what we really get from that search we need to download the data. In the next two cells we will use a custom function to go from the collector object to a list of observations and a pandas `DataFrame` with all the data.\n",
+ "We found 1 variable, which makes our job easier, and now we can query the data for it.\n",
"\n",
- "(Check the code for [`collector2table`](http://bit.ly/2eiUozm) for the implementation details.)"
+ "Now we need to get a list of stations that are within our bounding box.\n",
+ "If we look the `STATION_ID` metadata we see a link to a page with the stations and their sensors listing."
]
},
{
"cell_type": "code",
- "execution_count": 5,
+ "execution_count": 7,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"
\n",
- "\n",
"
\n",
" \n",
"
\n",
"
\n",
- "
depth
\n",
- "
lat
\n",
- "
lon
\n",
- "
sensor
\n",
- "
station_code
\n",
- "
\n",
- "
\n",
- "
station_name
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
- "
\n",
+ "
Row Type
\n",
+ "
Variable Name
\n",
+ "
Attribute Name
\n",
+ "
Data Type
\n",
+ "
Value
\n",
"
\n",
" \n",
" \n",
"
\n",
- "
Duck, NC
\n",
- "
None
\n",
- "
36.1833
\n",
- "
-75.7467
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8651370:A1
\n",
- "
8651370
\n",
- "
\n",
- "
\n",
- "
Oregon Inlet Marina, NC
\n",
- "
None
\n",
- "
35.7950
\n",
- "
-75.5481
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8652587:A1
\n",
- "
8652587
\n",
- "
\n",
- "
\n",
- "
USCG Station Hatteras, NC
\n",
- "
None
\n",
- "
35.2086
\n",
- "
-75.7042
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8654467:A1
\n",
- "
8654467
\n",
- "
\n",
- "
\n",
- "
Beaufort, NC
\n",
- "
None
\n",
- "
34.7200
\n",
- "
-76.6700
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8656483:A1
\n",
- "
8656483
\n",
- "
\n",
- "
\n",
- "
Wilmington, NC
\n",
- "
None
\n",
- "
34.2275
\n",
- "
-77.9536
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8658120:B1
\n",
- "
8658120
\n",
- "
\n",
- "
\n",
- "
Wrightsville Beach, NC
\n",
- "
None
\n",
- "
34.2133
\n",
- "
-77.7867
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8658163:A1
\n",
- "
8658163
\n",
- "
\n",
- "
\n",
- "
Springmaid Pier, SC
\n",
- "
None
\n",
- "
33.6550
\n",
- "
-78.9183
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8661070:Y1
\n",
- "
8661070
\n",
- "
\n",
- "
\n",
- "
Oyster Landing (N Inlet Estuary), SC
\n",
- "
None
\n",
- "
33.3517
\n",
- "
-79.1867
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8662245:A1
\n",
- "
8662245
\n",
- "
\n",
- "
\n",
- "
Charleston, Cooper River Entrance, SC
\n",
- "
None
\n",
- "
32.7808
\n",
- "
-79.9236
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8665530:A1
\n",
- "
8665530
\n",
- "
\n",
- "
\n",
- "
Fort Pulaski, GA
\n",
- "
None
\n",
- "
32.0367
\n",
- "
-80.9017
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8670870:A1
\n",
- "
8670870
\n",
- "
\n",
- "
\n",
- "
Fernandina Beach, FL
\n",
- "
None
\n",
- "
30.6714
\n",
- "
-81.4658
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8720030:Y1
\n",
- "
8720030
\n",
+ "
15
\n",
+ "
variable
\n",
+ "
STATION_ID
\n",
+ "
NaN
\n",
+ "
String
\n",
+ "
NaN
\n",
"
\n",
"
\n",
- "
Mayport (Bar Pilots Dock), FL
\n",
- "
None
\n",
- "
30.3982
\n",
- "
-81.4279
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8720218:A1
\n",
- "
8720218
\n",
+ "
16
\n",
+ "
attribute
\n",
+ "
STATION_ID
\n",
+ "
cf_role
\n",
+ "
String
\n",
+ "
timeseries_id
\n",
"
\n",
"
\n",
- "
Dames Point, FL
\n",
- "
None
\n",
- "
30.3872
\n",
- "
-81.5592
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8720219:A1
\n",
- "
8720219
\n",
+ "
17
\n",
+ "
attribute
\n",
+ "
STATION_ID
\n",
+ "
comment
\n",
+ "
String
\n",
+ "
To view the station id listing go to: https://...
\n",
"
\n",
"
\n",
- "
Southbank Riverwalk, St Johns River, FL
\n",
- "
None
\n",
- "
30.3205
\n",
- "
-81.6591
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8720226:B1
\n",
- "
8720226
\n",
+ "
18
\n",
+ "
attribute
\n",
+ "
STATION_ID
\n",
+ "
ioos_category
\n",
+ "
String
\n",
+ "
Identifier
\n",
"
\n",
"
\n",
- "
Racy Point, St Johns River, FL
\n",
- "
None
\n",
- "
29.8002
\n",
- "
-81.5498
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8720625:A1
\n",
- "
8720625
\n",
- "
\n",
- "
\n",
- "
Trident Pier, Port Canaveral, FL
\n",
- "
None
\n",
- "
28.4158
\n",
- "
-80.5931
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8721604:A1
\n",
- "
8721604
\n",
- "
\n",
- "
\n",
- "
Lake Worth Pier, Atlantic Ocean, FL
\n",
- "
None
\n",
- "
26.6128
\n",
- "
-80.0342
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8722670:N1
\n",
- "
8722670
\n",
- "
\n",
- "
\n",
- "
Virginia Key, Biscayne Bay, FL
\n",
- "
None
\n",
- "
25.7317
\n",
- "
-80.1617
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8723214:A1
\n",
- "
8723214
\n",
- "
\n",
- "
\n",
- "
Vaca Key, Florida Bay, FL
\n",
- "
None
\n",
- "
24.7110
\n",
- "
-81.1065
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8723970:A1
\n",
- "
8723970
\n",
- "
\n",
- "
\n",
- "
Key West, FL
\n",
- "
None
\n",
- "
24.5557
\n",
- "
-81.8079
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8724580:A1
\n",
- "
8724580
\n",
- "
\n",
- "
\n",
- "
Naples, Gulf of Mexico, FL
\n",
- "
None
\n",
- "
26.1317
\n",
- "
-81.8075
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8725110:A1
\n",
- "
8725110
\n",
- "
\n",
- "
\n",
- "
Fort Myers, Caloosahatchee River, FL
\n",
- "
None
\n",
- "
26.6480
\n",
- "
-81.8710
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8725520:B1
\n",
- "
8725520
\n",
- "
\n",
- "
\n",
- "
Port Manatee, FL
\n",
- "
None
\n",
- "
27.6383
\n",
- "
-82.5625
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8726384:A1
\n",
- "
8726384
\n",
- "
\n",
- "
\n",
- "
St Petersburg, Tampa Bay, FL
\n",
- "
None
\n",
- "
27.7606
\n",
- "
-82.6269
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8726520:Y1
\n",
- "
8726520
\n",
- "
\n",
- "
\n",
- "
Old Port Tampa, FL
\n",
- "
None
\n",
- "
27.8578
\n",
- "
-82.5528
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8726607:A1
\n",
- "
8726607
\n",
- "
\n",
- "
\n",
- "
Mckay Bay Entrance, FL
\n",
- "
None
\n",
- "
27.9130
\n",
- "
-82.4250
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8726667:A1
\n",
- "
8726667
\n",
- "
\n",
- "
\n",
- "
Clearwater Beach, FL
\n",
- "
None
\n",
- "
27.9783
\n",
- "
-82.8317
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8726724:A1
\n",
- "
8726724
\n",
- "
\n",
- "
\n",
- "
Cedar Key, FL
\n",
- "
None
\n",
- "
29.1336
\n",
- "
-83.0309
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8727520:A1
\n",
- "
8727520
\n",
- "
\n",
- "
\n",
- "
Apalachicola, FL
\n",
- "
None
\n",
- "
29.7244
\n",
- "
-84.9806
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8728690:A1
\n",
- "
8728690
\n",
- "
\n",
- "
\n",
- "
Panama City, FL
\n",
- "
None
\n",
- "
30.1523
\n",
- "
-85.7000
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8729108:A1
\n",
- "
8729108
\n",
- "
\n",
- "
\n",
- "
Panama City Beach, FL
\n",
- "
None
\n",
- "
30.2133
\n",
- "
-85.8783
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8729210:A1
\n",
- "
8729210
\n",
- "
\n",
- "
\n",
- "
Pensacola, FL
\n",
- "
None
\n",
- "
30.4044
\n",
- "
-87.2100
\n",
- "
urn:ioos:sensor:NOAA.NOS.CO-OPS:8729840:A1
\n",
- "
8729840
\n",
+ "
19
\n",
+ "
attribute
\n",
+ "
STATION_ID
\n",
+ "
long_name
\n",
+ "
String
\n",
+ "
REQUIRED 7-character Station ID surrounded in ...
\n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
- " depth lat lon \\\n",
- "station_name \n",
- "Duck, NC None 36.1833 -75.7467 \n",
- "Oregon Inlet Marina, NC None 35.7950 -75.5481 \n",
- "USCG Station Hatteras, NC None 35.2086 -75.7042 \n",
- "Beaufort, NC None 34.7200 -76.6700 \n",
- "Wilmington, NC None 34.2275 -77.9536 \n",
- "Wrightsville Beach, NC None 34.2133 -77.7867 \n",
- "Springmaid Pier, SC None 33.6550 -78.9183 \n",
- "Oyster Landing (N Inlet Estuary), SC None 33.3517 -79.1867 \n",
- "Charleston, Cooper River Entrance, SC None 32.7808 -79.9236 \n",
- "Fort Pulaski, GA None 32.0367 -80.9017 \n",
- "Fernandina Beach, FL None 30.6714 -81.4658 \n",
- "Mayport (Bar Pilots Dock), FL None 30.3982 -81.4279 \n",
- "Dames Point, FL None 30.3872 -81.5592 \n",
- "Southbank Riverwalk, St Johns River, FL None 30.3205 -81.6591 \n",
- "Racy Point, St Johns River, FL None 29.8002 -81.5498 \n",
- "Trident Pier, Port Canaveral, FL None 28.4158 -80.5931 \n",
- "Lake Worth Pier, Atlantic Ocean, FL None 26.6128 -80.0342 \n",
- "Virginia Key, Biscayne Bay, FL None 25.7317 -80.1617 \n",
- "Vaca Key, Florida Bay, FL None 24.7110 -81.1065 \n",
- "Key West, FL None 24.5557 -81.8079 \n",
- "Naples, Gulf of Mexico, FL None 26.1317 -81.8075 \n",
- "Fort Myers, Caloosahatchee River, FL None 26.6480 -81.8710 \n",
- "Port Manatee, FL None 27.6383 -82.5625 \n",
- "St Petersburg, Tampa Bay, FL None 27.7606 -82.6269 \n",
- "Old Port Tampa, FL None 27.8578 -82.5528 \n",
- "Mckay Bay Entrance, FL None 27.9130 -82.4250 \n",
- "Clearwater Beach, FL None 27.9783 -82.8317 \n",
- "Cedar Key, FL None 29.1336 -83.0309 \n",
- "Apalachicola, FL None 29.7244 -84.9806 \n",
- "Panama City, FL None 30.1523 -85.7000 \n",
- "Panama City Beach, FL None 30.2133 -85.8783 \n",
- "Pensacola, FL None 30.4044 -87.2100 \n",
- "\n",
- " sensor \\\n",
- "station_name \n",
- "Duck, NC urn:ioos:sensor:NOAA.NOS.CO-OPS:8651370:A1 \n",
- "Oregon Inlet Marina, NC urn:ioos:sensor:NOAA.NOS.CO-OPS:8652587:A1 \n",
- "USCG Station Hatteras, NC urn:ioos:sensor:NOAA.NOS.CO-OPS:8654467:A1 \n",
- "Beaufort, NC urn:ioos:sensor:NOAA.NOS.CO-OPS:8656483:A1 \n",
- "Wilmington, NC urn:ioos:sensor:NOAA.NOS.CO-OPS:8658120:B1 \n",
- "Wrightsville Beach, NC urn:ioos:sensor:NOAA.NOS.CO-OPS:8658163:A1 \n",
- "Springmaid Pier, SC urn:ioos:sensor:NOAA.NOS.CO-OPS:8661070:Y1 \n",
- "Oyster Landing (N Inlet Estuary), SC urn:ioos:sensor:NOAA.NOS.CO-OPS:8662245:A1 \n",
- "Charleston, Cooper River Entrance, SC urn:ioos:sensor:NOAA.NOS.CO-OPS:8665530:A1 \n",
- "Fort Pulaski, GA urn:ioos:sensor:NOAA.NOS.CO-OPS:8670870:A1 \n",
- "Fernandina Beach, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8720030:Y1 \n",
- "Mayport (Bar Pilots Dock), FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8720218:A1 \n",
- "Dames Point, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8720219:A1 \n",
- "Southbank Riverwalk, St Johns River, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8720226:B1 \n",
- "Racy Point, St Johns River, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8720625:A1 \n",
- "Trident Pier, Port Canaveral, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8721604:A1 \n",
- "Lake Worth Pier, Atlantic Ocean, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8722670:N1 \n",
- "Virginia Key, Biscayne Bay, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8723214:A1 \n",
- "Vaca Key, Florida Bay, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8723970:A1 \n",
- "Key West, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8724580:A1 \n",
- "Naples, Gulf of Mexico, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8725110:A1 \n",
- "Fort Myers, Caloosahatchee River, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8725520:B1 \n",
- "Port Manatee, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8726384:A1 \n",
- "St Petersburg, Tampa Bay, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8726520:Y1 \n",
- "Old Port Tampa, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8726607:A1 \n",
- "Mckay Bay Entrance, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8726667:A1 \n",
- "Clearwater Beach, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8726724:A1 \n",
- "Cedar Key, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8727520:A1 \n",
- "Apalachicola, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8728690:A1 \n",
- "Panama City, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8729108:A1 \n",
- "Panama City Beach, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8729210:A1 \n",
- "Pensacola, FL urn:ioos:sensor:NOAA.NOS.CO-OPS:8729840:A1 \n",
- "\n",
- " station_code \n",
- "station_name \n",
- "Duck, NC 8651370 \n",
- "Oregon Inlet Marina, NC 8652587 \n",
- "USCG Station Hatteras, NC 8654467 \n",
- "Beaufort, NC 8656483 \n",
- "Wilmington, NC 8658120 \n",
- "Wrightsville Beach, NC 8658163 \n",
- "Springmaid Pier, SC 8661070 \n",
- "Oyster Landing (N Inlet Estuary), SC 8662245 \n",
- "Charleston, Cooper River Entrance, SC 8665530 \n",
- "Fort Pulaski, GA 8670870 \n",
- "Fernandina Beach, FL 8720030 \n",
- "Mayport (Bar Pilots Dock), FL 8720218 \n",
- "Dames Point, FL 8720219 \n",
- "Southbank Riverwalk, St Johns River, FL 8720226 \n",
- "Racy Point, St Johns River, FL 8720625 \n",
- "Trident Pier, Port Canaveral, FL 8721604 \n",
- "Lake Worth Pier, Atlantic Ocean, FL 8722670 \n",
- "Virginia Key, Biscayne Bay, FL 8723214 \n",
- "Vaca Key, Florida Bay, FL 8723970 \n",
- "Key West, FL 8724580 \n",
- "Naples, Gulf of Mexico, FL 8725110 \n",
- "Fort Myers, Caloosahatchee River, FL 8725520 \n",
- "Port Manatee, FL 8726384 \n",
- "St Petersburg, Tampa Bay, FL 8726520 \n",
- "Old Port Tampa, FL 8726607 \n",
- "Mckay Bay Entrance, FL 8726667 \n",
- "Clearwater Beach, FL 8726724 \n",
- "Cedar Key, FL 8727520 \n",
- "Apalachicola, FL 8728690 \n",
- "Panama City, FL 8729108 \n",
- "Panama City Beach, FL 8729210 \n",
- "Pensacola, FL 8729840 "
+ " Row Type Variable Name Attribute Name Data Type \\\n",
+ "15 variable STATION_ID NaN String \n",
+ "16 attribute STATION_ID cf_role String \n",
+ "17 attribute STATION_ID comment String \n",
+ "18 attribute STATION_ID ioos_category String \n",
+ "19 attribute STATION_ID long_name String \n",
+ "\n",
+ " Value \n",
+ "15 NaN \n",
+ "16 timeseries_id \n",
+ "17 To view the station id listing go to: https://... \n",
+ "18 Identifier \n",
+ "19 REQUIRED 7-character Station ID surrounded in ... "
]
},
- "execution_count": 5,
+ "execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
- "import pandas as pd\n",
- "from ioos_tools.ioos import collector2table\n",
- "\n",
- "config = dict(units=units, sos_name=sos_name,)\n",
- "\n",
- "data = collector2table(\n",
- " collector=collector,\n",
- " config=config,\n",
- " col=\"water_surface_height_above_reference_datum (m)\",\n",
- ")\n",
- "\n",
- "# Clean the table.\n",
- "table = dict(\n",
- " station_name=[s._metadata.get(\"station_name\") for s in data],\n",
- " station_code=[s._metadata.get(\"station_code\") for s in data],\n",
- " sensor=[s._metadata.get(\"sensor\") for s in data],\n",
- " lon=[s._metadata.get(\"lon\") for s in data],\n",
- " lat=[s._metadata.get(\"lat\") for s in data],\n",
- " depth=[s._metadata.get(\"depth\") for s in data],\n",
- ")\n",
+ "info = pd.read_csv(e.get_info_url(response=\"csv\"))\n",
+ "station_id_info = info.loc[info[\"Variable Name\"] == \"STATION_ID\"]\n",
"\n",
- "table = pd.DataFrame(table).set_index(\"station_name\")\n",
- "\n",
- "table"
+ "station_id_info"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 8,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "To view the station id listing go to: https://opendap.co-ops.nos.noaa.gov/stations/index.jsp\n"
+ ]
+ }
+ ],
+ "source": [
+ "print(station_id_info.loc[station_id_info[\"Attribute Name\"] == \"comment\"][\"Value\"].squeeze())"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "In the next cell we will re-sample all the observation from CO-OPS' original frequency (6 minutes) to 15 minutes to reduce the amount of data and hopefully some of the noise too."
+ "In that page we have the option to view stations information as XML (`stationsXML`).\n",
+ "Luckily we can easily parse the stationsXML file and filter out the stations we want."
]
},
{
"cell_type": "code",
- "execution_count": 6,
- "metadata": {
- "collapsed": true,
- "jupyter": {
- "outputs_hidden": true
- }
- },
+ "execution_count": 9,
+ "metadata": {},
"outputs": [],
"source": [
- "index = pd.date_range(\n",
- " start=start_time.replace(tzinfo=None),\n",
- " end=end_time.replace(tzinfo=None),\n",
- " freq=\"15min\",\n",
+ "url = \"https://opendap.co-ops.nos.noaa.gov/stations/stationsXML.jsp\"\n",
+ "\n",
+ "\n",
+ "names = pd.read_xml(\n",
+ " url,\n",
+ " namespaces={\"xsi\": \"http://www.w3.org/2001/XMLSchema-instance\"},\n",
+ ")[[\"name\", \"ID\"]]\n",
+ "\n",
+ "\n",
+ "locations = pd.read_xml(\n",
+ " url,\n",
+ " xpath=\"//*[contains(name(),\\\"location\\\")]\"\n",
")\n",
"\n",
- "# Re-index and rename series.\n",
- "observations = []\n",
- "for series in data:\n",
- " _metadata = series._metadata\n",
- " series.index = series.index.tz_localize(None)\n",
- " obs = series.reindex(index=index, limit=1, method=\"nearest\")\n",
- " obs._metadata = _metadata\n",
- " obs.name = _metadata[\"station_name\"]\n",
- " observations.append(obs)"
+ "df = pd.concat([names, locations], axis=1)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "We can now check the station with the highest sea elevation."
+ "Now we can filter the stations that are inside our bounding box."
]
},
{
"cell_type": "code",
- "execution_count": 7,
+ "execution_count": 10,
"metadata": {},
"outputs": [
{
- "data": {
- "image/png": "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\n",
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "We filtered out all stations but those from SC, GA, NC, FL states.\n"
+ ]
}
],
"source": [
- "%matplotlib inline\n",
- "\n",
- "df = pd.DataFrame(observations).T\n",
+ "mask = (\n",
+ " (df[\"lat\"] >= min_lat) &\n",
+ " (df[\"lat\"] <= max_lat) &\n",
+ " (df[\"long\"] >= min_lon) &\n",
+ " (df[\"long\"] <= max_lon)\n",
+ ")\n",
"\n",
- "station = df.max(axis=0).idxmax()\n",
+ "df = df[mask]\n",
"\n",
- "ax = df[station].plot(figsize=(7, 2.25))\n",
- "title = ax.set_title(station)"
+ "print(f\"We filtered out all stations but those from {', '.join(filter(None, set(df['state'])))} states.\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "Oops. That does not look right! The data are near-real time,\n",
- "so some QA/QC may be needed before we move forward.\n",
- "\n",
- "We can filter spikes with a simple first difference rule.\n",
- "\n",
- "(Check the code for [`first_difference`](http://bit.ly/2fAtuos) for the implementation details.)"
+ "That looks correct. We want only the stations that are part of the [SECOORA region](https://secoora.org/)."
]
},
{
"cell_type": "code",
- "execution_count": 8,
- "metadata": {},
+ "execution_count": 11,
+ "metadata": {
+ "jupyter": {
+ "outputs_hidden": true
+ }
+ },
"outputs": [
{
- "data": {
- "image/png": "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\n",
- "text/plain": [
- ""
- ]
- },
- "metadata": {},
- "output_type": "display_data"
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "Could not get data for Don Holt Bridge Air Gap id 8664753 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8664753\"\n",
+ "\n",
+ "Could not get data for Ravenel Bridge Air Gap id 8665353 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8665353\"\n",
+ "\n",
+ "Could not get data for Talmadge Memorial Bridge Air Gap id 8670674 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8670674\"\n",
+ "\n",
+ "Could not get data for Navy Fuel Depot id 8720215 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8720215\"\n",
+ "\n",
+ "Could not get data for Little Jetties Visibility id 8720228 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8720228\"\n",
+ "\n",
+ "Could not get data for Blount Island Command id 8720233 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8720233\"\n",
+ "\n",
+ "Could not get data for Jacksonville University id 8720245 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8720245\"\n",
+ "\n",
+ "Could not get data for Dames Point Bridge Air Gap id 8720376 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8720376\"\n",
+ "\n",
+ "Could not get data for South Port Everglades id 8722956 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8722956\"\n",
+ "\n",
+ "Could not get data for Sunshine Skyway Bridge Air Gap id 8726371 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726371\"\n",
+ "\n",
+ "Could not get data for Middle Tampa Bay id 8726412 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726412\"\n",
+ "\n",
+ "Could not get data for Gadsden Cut, Tampa Bay id 8726524 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726524\"\n",
+ "\n",
+ "Could not get data for Sparkman Channel Entrance id 8726671 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726671\"\n",
+ "\n",
+ "Could not get data for East Bay id 8726674 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726674\"\n",
+ "\n",
+ "Could not get data for East Bay Causeway id 8726679 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726679\"\n",
+ "\n",
+ "Could not get data for TPA Cruise Terminal 2 id 8726694 using the URL:\n",
+ "\n",
+ "https://opendap.co-ops.nos.noaa.gov/erddap/tabledap/IOOS_Hourly_Height_Verified_Water_Level.html?WL_VALUE,time&BEGIN_DATE=\"2016-10-04\"&END_DATE=\"2016-10-12\"&DATUM=\"MSL\"&STATION_ID=\"8726694\"\n",
+ "\n"
+ ]
}
],
"source": [
- "from ioos_tools.qaqc import first_difference\n",
+ "data = {}\n",
"\n",
- "mask = df.apply(first_difference, args=(0.99,))\n",
+ "for station_id in df[\"ID\"]:\n",
+ " e.constraints.update({\"STATION_ID=\": f\"{station_id}\"})\n",
+ " try:\n",
+ " series = e.to_pandas(index_col=\"time (UTC)\", parse_dates=True)\n",
+ " data.update({station_id: series})\n",
+ " except Exception:\n",
+ " missing = df.loc[df[\"ID\"] == station_id][[\"name\", \"ID\"]].squeeze().tolist()\n",
+ " print(\n",
+ " f\"Could not get data for {missing[0]} id {missing[1]} using the URL:\\n\\n\"\n",
+ " f\"{e.get_download_url()}\\n\"\n",
+ " )\n",
+ " pass\n",
"\n",
- "df = df[~mask].interpolate()\n",
+ "water_level = pd.concat(data, axis=1)\n",
"\n",
- "ax = df[station].plot(figsize=(7, 2.25))\n",
- "title = ax.set_title(station)"
+ "# Remove the units and leave only the station number.\n",
+ "water_level.columns = [col[0] for col in water_level.columns]"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
- "That is much better!\n",
- "Now we can plot the station that actually registered the highest sea elevation."
+ "Many requests failed because we don't know if the data for that station exists in the date range we requested. That ERDDAP server is not configured to use what ERDDAP does best, high queries using the metadata.\n",
+ "\n",
+ "Now that we have the data we can, for example, check the station with the highest sea elevation."
]
},
{
"cell_type": "code",
- "execution_count": 9,
+ "execution_count": 12,
"metadata": {},
"outputs": [
{
"data": {
- "image/png": "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\n",
+ "image/png": "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\n",
"text/plain": [
- ""
+ "