Station metadata#
import pandas as pd
import uscrn
Load#
We use uscrn.load_meta()
to load the station metadata from NCEI.
%time
meta = uscrn.load_meta()
CPU times: user 2 µs, sys: 1 µs, total: 3 µs
Wall time: 5.25 µs
meta
wban | country | state | location | vector | name | latitude | longitude | elevation | status | commissioning | closing | operation | pairing | network | station_id | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 03047 | US | TX | Monahans | 6 ENE | Sandhills State Park | 31.62 | -102.80 | 2724.0 | Commissioned | 2004-01-12 | NaT | Operational | NaN | USCRN | 1019 |
1 | 03048 | US | NM | Socorro | 20 N | Sevilleta National Wildlife Refuge (LTER Site) | 34.35 | -106.88 | 4847.0 | Commissioned | 2004-01-12 | NaT | Operational | NaN | USCRN | 1020 |
2 | 03054 | US | TX | Muleshoe | 19 S | Muleshoe National Wildlife Refuge (Headquarter... | 33.95 | -102.77 | 3742.0 | Commissioned | 2004-04-23 | NaT | Operational | NaN | USCRN | 1067 |
3 | 03055 | US | OK | Goodwell | 2 E | OK Panhandle Research & Extn. Center (Native ... | 36.59 | -101.59 | 3266.0 | Commissioned | 2004-04-23 | NaT | Operational | NaN | USCRN | 1068 |
4 | 03060 | US | CO | Montrose | 11 ENE | Black Canyon of the Gunnison National Park (Ve... | 38.54 | -107.69 | 8402.0 | Commissioned | 2004-09-08 | NaT | Operational | NaN | USCRN | 1109 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
249 | NaN | US | AK | Ruby | 44 ESE | FWS, Nowitna National Wildlife Refuge (Lake Site) | 64.50 | -154.12 | 259.0 | Commissioned | 2015-09-29 | NaT | Operational | NaN | USCRN | 7792 |
250 | NaN | US | AK | Selawik | 28 E | FWS, Selawik National Wildlife Refuge (Cabin S... | 66.56 | -159.00 | 22.0 | Commissioned | 2016-09-07 | NaT | Operational | NaN | USCRN | 7795 |
251 | NaN | US | AK | Tok | 70 SE | FWS, Tetlin National Wildlife Refuge (Seaton R... | 62.73 | -141.20 | 2000.0 | Commissioned | 2012-09-24 | NaT | Operational | NaN | USCRN | 7779 |
252 | NaN | US | AK | Toolik Lake | 5 ENE | BLM, Toolik Field Station | 68.64 | -149.39 | 2461.0 | Commissioned | 2018-09-18 | NaT | Operational | NaN | USCRN | 7799 |
253 | NaN | US | TN | Oakridge | 0 N | ATDD test site | 36.00 | -84.24 | NaN | Test-site | NaT | NaT | Non-operational | NaN | USCRN | 1147 |
254 rows × 16 columns
meta.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 254 entries, 0 to 253
Data columns (total 16 columns):
# Column Non-Null Count Dtype
--- ------ -------------- -----
0 wban 237 non-null object
1 country 254 non-null object
2 state 254 non-null object
3 location 254 non-null object
4 vector 254 non-null object
5 name 254 non-null object
6 latitude 254 non-null float64
7 longitude 254 non-null float64
8 elevation 253 non-null float64
9 status 254 non-null object
10 commissioning 151 non-null datetime64[ns]
11 closing 79 non-null datetime64[ns]
12 operation 254 non-null object
13 pairing 14 non-null object
14 network 254 non-null object
15 station_id 254 non-null object
dtypes: datetime64[ns](2), float64(3), object(11)
memory usage: 31.9+ KB
list(meta.attrs)
['created']
Examine#
(A bit.)
First, we look at the status breakdown.
meta.status.value_counts()
status
Commissioned 151
Non-comissioned 81
Experimental 20
Test-site 2
Name: count, dtype: int64
meta.operation.value_counts()
operation
Operational 174
Closed 78
Abandoned 1
Non-operational 1
Name: count, dtype: int64
Most, but not all, sites are in the US.
meta.country.value_counts()
country
US 252
RS 1
CA 1
Name: count, dtype: int64
meta.query("country != 'US'")
wban | country | state | location | vector | name | latitude | longitude | elevation | status | commissioning | closing | operation | pairing | network | station_id | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
92 | 37201 | RS | SA | Tiksi | 4 SSE | Roshydromet Observatory at Tiksi | 71.58 | 128.91 | 30.0 | Non-comissioned | NaT | 2018-11-06 | Closed | NaN | USCRN | 1789 |
199 | 64757 | CA | ON | Egbert | 1 W | Environment Canada CARE site | 44.23 | -79.78 | 807.0 | Experimental | NaT | NaT | Operational | NaN | USCRN | 1112 |
Technically there are a few different networks.
meta.network.value_counts()
network
USCRN 162
USRCRN 75
Alabama-USRCRN 17
Name: count, dtype: int64
meta.query("operation == 'Operational'").network.value_counts()
network
USCRN 158
Alabama-USRCRN 16
Name: count, dtype: int64
meta.query("operation == 'Operational' and not wban.isnull()").network.value_counts()
network
USCRN 143
Alabama-USRCRN 16
Name: count, dtype: int64
👆 This should be the number of sites we get when we use uscrn.get_data()
(for a time period that the currently reported operational status is accurate for).
Sites with “closing” in the past are not marked as operational (good).
meta[meta.closing < pd.Timestamp.now()].operation.value_counts()
operation
Closed 78
Abandoned 1
Name: count, dtype: int64
Alaska has the most sites.
meta.state.value_counts().head(10)
state
AK 40
NM 25
AZ 23
CO 23
AL 20
UT 19
TX 8
CA 7
MT 5
SD 4
Name: count, dtype: int64
There is a range of elevations.
meta.elevation.plot.hist()
<Axes: ylabel='Frequency'>
Most of the sites that are high above sea-level are in NM/CO/UT/AZ. CO/WY/UT/NM/NV are the top five highest states overall, in that order.
meta.query("elevation > 4000").state.value_counts().head(5)
state
NM 23
CO 22
UT 18
AZ 10
WY 3
Name: count, dtype: int64
Most sites have elevation recorded.
meta[meta.elevation.isnull()]
wban | country | state | location | vector | name | latitude | longitude | elevation | status | commissioning | closing | operation | pairing | network | station_id | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
253 | NaN | US | TN | Oakridge | 0 N | ATDD test site | 36.0 | -84.24 | NaN | Test-site | NaT | NaT | Non-operational | NaN | USCRN | 1147 |
Some sites don’t have a WBAN (but do have a station ID). Presumably these sites aren’t included in the data archives.
assert not meta.station_id.isnull().sum()
meta[meta.wban.isnull()]
wban | country | state | location | vector | name | latitude | longitude | elevation | status | commissioning | closing | operation | pairing | network | station_id | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
237 | NaN | US | VA | Sterling | 0 N | Sterling HCN | 38.97 | -77.48 | 287.0 | Test-site | NaT | 2008-02-20 | Closed | NaN | USCRN | 1305 |
238 | NaN | US | AK | Aleknagik | 1 NNE | City of Aleknagik, Aleknagik Airport | 59.28 | -158.61 | 80.0 | Commissioned | 2020-10-13 | NaT | Operational | NaN | USCRN | 7801 |
239 | NaN | US | AK | Bethel | 87 WNW | FWS, Yukon Delta National Wildlife Refuge (Sou... | 61.34 | -164.07 | 153.0 | Commissioned | 2019-09-23 | NaT | Operational | NaN | USCRN | 7800 |
240 | NaN | US | AK | Cordova | 14 ESE | Eyak Corporation, Cordova | 60.47 | -145.35 | 83.0 | Commissioned | 2018-09-18 | NaT | Operational | NaN | USCRN | 7798 |
241 | NaN | US | AK | Deadhorse | 3 S | AK Department of Natural Resources, Haul Road) | 70.16 | -148.46 | 30.0 | Commissioned | 2015-09-29 | NaT | Operational | NaN | USCRN | 7793 |
242 | NaN | US | AK | Denali | 27 N | NPS, Denali National Park (Wonder Lake Campgro... | 63.45 | -150.87 | 2225.0 | Commissioned | 2016-09-07 | NaT | Operational | NaN | USCRN | 7794 |
243 | NaN | US | AK | Galena | 44 SW | Innoko National Wildlife Refuge | 64.34 | -158.08 | 131.0 | Non-comissioned | NaT | NaT | Operational | NaN | USCRN | 7802 |
244 | NaN | US | AK | Glennallen | 64 N | BLM, Paxson Airport | 63.02 | -145.50 | 2669.0 | Commissioned | 2014-07-21 | NaT | Operational | NaN | USCRN | 7790 |
245 | NaN | US | AK | Gustavus | 2 NE | The Nature Conservancy, Gustavus Forelands Pre... | 58.42 | -135.69 | 20.0 | Commissioned | 2013-07-25 | NaT | Operational | NaN | USCRN | 7780 |
246 | NaN | US | AK | Huslia | 27 E | Koyukuk National Wildlife Refuge | 65.65 | -155.47 | 207.0 | Non-comissioned | NaT | NaT | Operational | NaN | USCRN | 7803 |
247 | NaN | US | AK | Ivotuk | 1 NNE | Arctic Slope Regional Corporation, Ivotuk Airs... | 68.48 | -155.75 | 1909.0 | Commissioned | 2015-09-29 | NaT | Operational | NaN | USCRN | 7791 |
248 | NaN | US | AK | King Salmon | 42 SE | NPS, Katmai National Park (Contact Creek) | 58.20 | -155.92 | 661.0 | Commissioned | 2013-07-25 | NaT | Operational | NaN | USCRN | 7788 |
249 | NaN | US | AK | Ruby | 44 ESE | FWS, Nowitna National Wildlife Refuge (Lake Site) | 64.50 | -154.12 | 259.0 | Commissioned | 2015-09-29 | NaT | Operational | NaN | USCRN | 7792 |
250 | NaN | US | AK | Selawik | 28 E | FWS, Selawik National Wildlife Refuge (Cabin S... | 66.56 | -159.00 | 22.0 | Commissioned | 2016-09-07 | NaT | Operational | NaN | USCRN | 7795 |
251 | NaN | US | AK | Tok | 70 SE | FWS, Tetlin National Wildlife Refuge (Seaton R... | 62.73 | -141.20 | 2000.0 | Commissioned | 2012-09-24 | NaT | Operational | NaN | USCRN | 7779 |
252 | NaN | US | AK | Toolik Lake | 5 ENE | BLM, Toolik Field Station | 68.64 | -149.39 | 2461.0 | Commissioned | 2018-09-18 | NaT | Operational | NaN | USCRN | 7799 |
253 | NaN | US | TN | Oakridge | 0 N | ATDD test site | 36.00 | -84.24 | NaN | Test-site | NaT | NaT | Non-operational | NaN | USCRN | 1147 |