Requirements for Observations
bbakernoaa opened this issue · 1 comments
Requirements for Observations
Requirements for new observations are to be described here for now.
-
Point observations should have a pandas dataframe such as aqs.df
-
Ways to read and retrieve if possible. CRN, AIRNOW, AQS as examples retrieve data if needed. IMPROVE can read data downloaded manually.
method retrieve
determine filename and FTP address from inputs
if download==False then
return ftp address and filename.
if download==True then
check to see if file already exists.
if it doesn't, then retrieve the file from ftp site (or other location)
return filename
method load
load data into pandas dataframe.
input may be an ftp address or a filename.
If an ftp address then data should be read directly into dataframe not
downloaded first.
method str
return string with pertinent information about the observations.
may include default url for ftp retrievals. -
Units are required for all measurements in a separate field. The units need to be converted to:
- Kelvin
- ppbv
- dobson
- ug/m3
- w/m2
- m/s
-
Observations should have a column with
"latitude"
and"longitude"
if a surface measurement with a pandas dataframe. -
Point measurements need a
"siteid"
data column identifying the measurement site. This could be a float int or string. -
Observations should have a time column which is the GMT date
-
All observations should have a objtype attribute which describes the dataset. For instance, airnow has
self.objtype = 'AirNow'