diff --git a/index.html b/index.html index 3091c2600b..125e8f2ed3 100644 --- a/index.html +++ b/index.html @@ -82,6 +82,12 @@ background-size: cover; } + + + + + + @@ -178,6 +184,92 @@

On this page

Why a forecasting challenge?

We are using forecasts to compare the predictability of different ecosystem variables, in different ecosystem conditions to identify the fundamental predictability of freshwater ecosystems.



+
+
+
+
+
+
+
+
+
+
+
+
+

Total forecasts submitted to the NEON Challenge

+

323

+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+

Most recent data for model training

+2023-11-04 +
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+

Number of years of data for model training

+

10.35

+
+
+
+
+ +
+
+
+
+
+
+
+
+
+
+
+

Number of variables being forecasted

+

10

+
+
+
+
+ +
+
+
+
+



diff --git a/instructions.html b/instructions.html index 7c42ccf825..4071bcdf16 100644 --- a/instructions.html +++ b/instructions.html @@ -210,7 +210,10 @@

On this page

  • 4.1 Supported distributions
  • 4.2 Example forecasts
  • -
  • 5 Submission process
  • +
  • 5 Submission process +
  • 6 Post submission
  • 5 Submission process

    +
    +

    5.1 Timing

    Individual forecast files can be uploaded any time.

    -

    Teams will submit their forecast csv files through an R function.

    +

    Teams will submit their forecast csv files through an R function. The csv file can only contain one unique model_id and one unique project_id.

    The function is available using the following code

    remotes::install_github("eco4cast/neon4cast")
    @@ -382,6 +381,7 @@

    first_submission = FALSE)

    +

    6 Post submission

    diff --git a/performance.html b/performance.html index 9bd24bf9f2..9227418fd1 100644 --- a/performance.html +++ b/performance.html @@ -191,16 +191,16 @@

    Most recent forecasts

    -
    - +
    +
    -
    - +
    +
    @@ -214,16 +214,16 @@

    Most recent forecasts

    -
    - +
    +
    -
    - +
    +
    @@ -237,8 +237,8 @@

    Most recent forecasts

    -
    - +
    +
    @@ -275,80 +275,80 @@

    Forecast analysis

    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    @@ -369,56 +369,56 @@

    Aggregated scores

    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    -
    - +
    +
    diff --git a/search.json b/search.json index 63c0478806..a9408fcc11 100644 --- a/search.json +++ b/search.json @@ -18,7 +18,7 @@ "href": "index.html#why-a-forecasting-challenge", "title": "Forecasting Challenge", "section": "Why a forecasting challenge?", - "text": "Why a forecasting challenge?\nWe are using forecasts to compare the predictability of different ecosystem variables, in different ecosystem conditions to identify the fundamental predictability of freshwater ecosystems." + "text": "Why a forecasting challenge?\nWe are using forecasts to compare the predictability of different ecosystem variables, in different ecosystem conditions to identify the fundamental predictability of freshwater ecosystems.\n \n\n\n\n\n\n\n\n\n\n\n\n\nTotal forecasts submitted to the NEON Challenge\n323\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nMost recent data for model training\n2023-11-04\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nNumber of years of data for model training\n10.35\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nNumber of variables being forecasted\n10" }, { "objectID": "index.html#what-sites-are-being-forecasted", @@ -32,21 +32,21 @@ "href": "targets.html", "title": "What to forecast", "section": "", - "text": "library(tidyverse)" + "text": "The targets were specifically chosen to include ecosystem, community, and population dynamics. Targets are available at all relative NEON sites. If you are interested in forecasting a single site, we recommend the following focal sites." }, { "objectID": "targets.html#targets-files", "href": "targets.html#targets-files", "title": "What to forecast", "section": "Targets files", - "text": "Targets files\n\nTerrestrial fluxes\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/terrestrial_daily-targets.csv.gz\"\n\n\nterrestrial_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(terrestrial_targets)\n\nRows: 111,244\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"BART\", \"BART\", \"BART\", \"BART\", \"BART\", \"BART\", \"BART\", \"B…\n$ datetime <dttm> 2017-02-02, 2017-02-02, 2017-02-03, 2017-02-03, 2017-02-0…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n$ variable <chr> \"le\", \"nee\", \"le\", \"nee\", \"le\", \"nee\", \"le\", \"nee\", \"le\", …\n$ observation <dbl> 2.7087720, 0.5801368, 8.4720864, 0.6873984, 6.6410325, 0.6…\n\n\n\n\n\n\n\nvariable\nduration\nDescription\n\n\n\n\nle\nP1D\ndaily mean latent heat flux (W/m2)\n\n\nnee\nP1D\ndaily mean Net ecosystem exchange (gC/m2/day)\n\n\n\n\n\n\nterrestrial_targets |> \n filter(site_id %in% c(\"HARV\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\n\n\n\n\n\nAquatics\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/aquatics-targets.csv.gz\"\n\n\naquatics_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(aquatics_targets)\n\nRows: 58,082\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"A…\n$ datetime <dttm> 2016-08-17, 2016-08-18, 2016-08-19, 2016-08-20, 2016-08-2…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n$ variable <chr> \"temperature\", \"temperature\", \"temperature\", \"temperature\"…\n$ observation <dbl> 24.55817, 20.60144, 20.14269, 17.72215, 17.73065, 19.86279…\n\n\n\n\n\n\n\n\n\n\n\n\nvariable\nduration\nDescription\n\n\n\n\ntemperature\nP1D\nSurface Mean Daily Water Temperature (Celsius)\n\n\nchla\nP1D\ndaily mean Chlorophyll-a (ug/L)\n\n\noxygen\nP1D\nSurface Mean Daily Dissolved Oxygen Concentration (mgL)\n\n\n\n\n\n\naquatics_targets |> \n filter(site_id %in% c(\"BARC\", \"CRAM\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\nWarning: Removed 219 rows containing missing values (`geom_point()`).\n\n\n\n\n\n\n\nPhenology\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/phenology-targets.csv.gz\"\n\n\nphenology_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(phenology_targets)\n\nRows: 266,678\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"A…\n$ datetime <dttm> 2016-01-29, 2016-01-30, 2016-01-31, 2016-02-01, 2016-02-0…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n$ variable <chr> \"gcc_90\", \"gcc_90\", \"gcc_90\", \"gcc_90\", \"gcc_90\", \"gcc_90\"…\n$ observation <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…\n\n\n\n\n\n\n\nvariable\nduration\nDescription\n\n\n\n\ngcc_90\nP1D\nNA\n\n\nrcc_90\nP1D\nNA\n\n\n\n\n\n\nphenology_targets |> \n filter(site_id %in% c(\"HARV\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\nWarning: Removed 1672 rows containing missing values (`geom_point()`).\n\n\n\n\n\n\n\nBeetle communities\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/beetles-targets.csv.gz\"\n\n\nbeetles_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(beetles_targets)\n\nRows: 5,280\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"A…\n$ datetime <dttm> 2016-09-12, 2016-09-12, 2016-09-26, 2016-09-26, 2017-05-0…\n$ duration <chr> \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P…\n$ variable <chr> \"abundance\", \"richness\", \"abundance\", \"richness\", \"abundan…\n$ observation <dbl> 0.3599440, 14.0000000, 0.8171691, 13.0000000, 0.2012987, 1…\n\n\n\n\n\n\n\n\n\n\n\n\nvariable\nduration\nDescription\n\n\n\n\nabundance\nP1W\nTotal number of carabid individuals per trap-night, estimated each week of the year at each NEON site\n\n\nrichness\nP1W\nTotal number of unique ‘species’ in a sampling bout for each NEON site each week.\n\n\n\n\n\n\nbeetles_targets |> \n filter(site_id %in% c(\"HARV\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\n\n\n\n\n\nTick populations\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/ticks-targets.csv.gz\"\n\n\nticks_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(ticks_targets)\n\nRows: 622\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"B…\n$ datetime <dttm> 2015-04-20, 2015-05-11, 2015-06-01, 2015-06-08, 2015-06-2…\n$ duration <chr> \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P…\n$ variable <chr> \"amblyomma_americanum\", \"amblyomma_americanum\", \"amblyomma…\n$ observation <dbl> 0.000000, 9.815951, 10.000000, 19.393939, 3.137255, 3.6613…\n\n\n\n\n\n\n\nvariable\nduration\nDescription\n\n\n\n\n\n\n\n\nticks_targets |> \n filter(site_id %in% c(\"BLAN\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()" + "text": "Targets files\n\nTerrestrial fluxes\nInsert short description\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/terrestrial_daily-targets.csv.gz\"\n\n\nterrestrial_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(terrestrial_targets)\n\nRows: 111,244\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"BART\", \"BART\", \"BART\", \"BART\", \"BART\", \"BART\", \"BART\", \"B…\n$ datetime <dttm> 2017-02-02, 2017-02-02, 2017-02-03, 2017-02-03, 2017-02-0…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n$ variable <chr> \"le\", \"nee\", \"le\", \"nee\", \"le\", \"nee\", \"le\", \"nee\", \"le\", …\n$ observation <dbl> 2.7087720, 0.5801368, 8.4720864, 0.6873984, 6.6410325, 0.6…\n\n\n\n\n\n\n\n\n\n\n\n\n\nvariable\nduration\nDescription\nhorizon\n\n\n\n\nle\nP1D\ndaily mean latent heat flux (W/m2)\n30 days\n\n\nnee\nP1D\ndaily mean Net ecosystem exchange (gC/m2/day)\n30 days\n\n\n\n\n\n\nterrestrial_targets |> \n filter(site_id %in% c(\"HARV\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\n\n\n\nLearn more at: https://projects.ecoforecast.org/neon4cast-docs/Terrestrial.html\n\n\nAquatics\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/aquatics-targets.csv.gz\"\n\n\naquatics_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(aquatics_targets)\n\nRows: 58,082\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"A…\n$ datetime <dttm> 2016-08-17, 2016-08-18, 2016-08-19, 2016-08-20, 2016-08-2…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n$ variable <chr> \"temperature\", \"temperature\", \"temperature\", \"temperature\"…\n$ observation <dbl> 24.55817, 20.60144, 20.14269, 17.72215, 17.73065, 19.86279…\n\n\n\n\n\n\n\n\n\n\n\n\n\nvariable\nduration\nDescription\nhorizon\n\n\n\n\ntemperature\nP1D\nSurface Mean Daily Water Temperature (Celsius)\n30 days\n\n\nchla\nP1D\ndaily mean Chlorophyll-a (ug/L)\n30 days\n\n\noxygen\nP1D\nSurface Mean Daily Dissolved Oxygen Concentration (mgL)\n30 days\n\n\n\n\n\n\naquatics_targets |> \n filter(site_id %in% c(\"BARC\", \"CRAM\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\nWarning: Removed 219 rows containing missing values (`geom_point()`).\n\n\n\n\n\nLearn more at: https://projects.ecoforecast.org/neon4cast-docs/Aquatics.html\n\n\nPhenology\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/phenology-targets.csv.gz\"\n\n\nphenology_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(phenology_targets)\n\nRows: 266,678\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"A…\n$ datetime <dttm> 2016-01-29, 2016-01-30, 2016-01-31, 2016-02-01, 2016-02-0…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n$ variable <chr> \"gcc_90\", \"gcc_90\", \"gcc_90\", \"gcc_90\", \"gcc_90\", \"gcc_90\"…\n$ observation <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA…\n\n\n\n\n\n\n\n\n\n\n\n\n\nvariable\nduration\nDescription\nhorizon\n\n\n\n\ngcc_90\nP1D\nGreen chromatic coordinate is the ratio of the green digital number to the sum of the red, green, blue digital numbers from a digital camera.\n30 days\n\n\nrcc_90\nP1D\nRed chromatic coordinate is the ratio of the Red digital number to the sum of the red, green, blue digital numbers from a digital camera.\n30 days\n\n\n\n\n\n\nphenology_targets |> \n filter(site_id %in% c(\"HARV\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\nWarning: Removed 1672 rows containing missing values (`geom_point()`).\n\n\n\n\n\nLearn more at: https://projects.ecoforecast.org/neon4cast-docs/Phenology.html\n\n\nBeetle communities\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/beetles-targets.csv.gz\"\n\n\nbeetles_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(beetles_targets)\n\nRows: 5,280\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"ABBY\", \"A…\n$ datetime <dttm> 2016-09-12, 2016-09-12, 2016-09-26, 2016-09-26, 2017-05-0…\n$ duration <chr> \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P…\n$ variable <chr> \"abundance\", \"richness\", \"abundance\", \"richness\", \"abundan…\n$ observation <dbl> 0.3599440, 14.0000000, 0.8171691, 13.0000000, 0.2012987, 1…\n\n\n\n\n\n\n\n\n\n\n\n\n\nvariable\nduration\nDescription\nhorizon\n\n\n\n\nabundance\nP1W\nTotal number of carabid individuals per trap-night, estimated each week of the year at each NEON site\n1 year\n\n\nrichness\nP1W\nTotal number of unique ‘species’ in a sampling bout for each NEON site each week.\n1 year\n\n\n\n\n\n\nbeetles_targets |> \n filter(site_id %in% c(\"HARV\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\n\n\n\nLearn more at: https://projects.ecoforecast.org/neon4cast-docs/Beetles.html\n\n\nTick populations\n\nurl <- \"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/ticks-targets.csv.gz\"\n\n\nticks_targets <- read_csv(url, show_col_types = FALSE)\n\n\nglimpse(ticks_targets)\n\nRows: 622\nColumns: 6\n$ project_id <chr> \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4cast\", \"neon4…\n$ site_id <chr> \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"BLAN\", \"B…\n$ datetime <dttm> 2015-04-20, 2015-05-11, 2015-06-01, 2015-06-08, 2015-06-2…\n$ duration <chr> \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P1W\", \"P…\n$ variable <chr> \"amblyomma_americanum\", \"amblyomma_americanum\", \"amblyomma…\n$ observation <dbl> 0.000000, 9.815951, 10.000000, 19.393939, 3.137255, 3.6613…\n\n\n\n\n\n\n\nvariable\nduration\nDescription\nhorizon\n\n\n\n\n\n\n\n\nticks_targets |> \n filter(site_id %in% c(\"BLAN\", \"OSBS\")) |> \n ggplot(aes(x = datetime, y = observation)) +\n geom_point() +\n facet_grid(variable~site_id, scales = \"free_y\") +\n theme_bw()\n\n\n\n\nLearn more at: https://projects.ecoforecast.org/neon4cast-docs/Beetles.html" }, { "objectID": "targets.html#sites", "href": "targets.html#sites", "title": "What to forecast", "section": "Sites", - "text": "Sites\n\nsite_list <- read_csv(\"../neon4cast_field_site_metadata.csv\", show_col_types = FALSE) |> \n rename(site_id = field_site_id) |> \n select(site_id, field_site_name, terrestrial, aquatics, phenology, ticks, beetles) \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nsite_id\nfield_site_name\nterrestrial\naquatics\nphenology\nticks\nbeetles\n\n\n\n\nABBY\nAbby Road NEON\n1\n0\n1\n0\n1\n\n\nARIK\nArikaree River NEON\n0\n1\n0\n0\n0\n\n\nBARC\nLake Barco NEON\n0\n1\n0\n0\n0\n\n\nBARR\nUtqiaġvik NEON\n1\n0\n1\n0\n1\n\n\nBART\nBartlett Experimental Forest NEON\n1\n0\n1\n0\n1\n\n\nBIGC\nUpper Big Creek NEON\n0\n1\n0\n0\n0\n\n\nBLAN\nBlandy Experimental Farm NEON\n1\n0\n1\n1\n1\n\n\nBLDE\nBlacktail Deer Creek NEON\n0\n1\n0\n0\n0\n\n\nBLUE\nBlue River NEON\n0\n1\n0\n0\n0\n\n\nBLWA\nBlack Warrior River NEON\n0\n1\n0\n0\n0\n\n\nBONA\nCaribou-Poker Creeks Research Watershed NEON\n1\n0\n1\n0\n1\n\n\nCARI\nCaribou Creek NEON\n0\n1\n0\n0\n0\n\n\nCLBJ\nLyndon B. Johnson National Grassland NEON\n1\n0\n1\n0\n1\n\n\nCOMO\nComo Creek NEON\n0\n1\n0\n0\n0\n\n\nCPER\nCentral Plains Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nCRAM\nCrampton Lake NEON\n0\n1\n0\n0\n0\n\n\nCUPE\nRio Cupeyes NEON\n0\n1\n0\n0\n0\n\n\nDCFS\nDakota Coteau Field Site NEON\n1\n0\n1\n0\n1\n\n\nDEJU\nDelta Junction NEON\n1\n0\n1\n0\n1\n\n\nDELA\nDead Lake NEON\n1\n0\n1\n0\n1\n\n\nDSNY\nDisney Wilderness Preserve NEON\n1\n0\n1\n0\n1\n\n\nFLNT\nFlint River NEON\n0\n1\n0\n0\n0\n\n\nGRSM\nGreat Smoky Mountains National Park NEON\n1\n0\n1\n0\n1\n\n\nGUAN\nGuanica Forest NEON\n1\n0\n1\n0\n1\n\n\nGUIL\nRio Guilarte NEON\n0\n1\n0\n0\n0\n\n\nHARV\nHarvard Forest & Quabbin Watershed NEON\n1\n0\n1\n0\n1\n\n\nHEAL\nHealy NEON\n1\n0\n1\n0\n1\n\n\nHOPB\nLower Hop Brook NEON\n0\n1\n0\n0\n0\n\n\nJERC\nThe Jones Center At Ichauway NEON\n1\n0\n1\n0\n1\n\n\nJORN\nJornada Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nKING\nKings Creek NEON\n0\n1\n0\n0\n0\n\n\nKONA\nKonza Prairie Agroecosystem NEON\n1\n0\n1\n0\n1\n\n\nKONZ\nKonza Prairie Biological Station NEON\n1\n0\n1\n1\n1\n\n\nLAJA\nLajas Experimental Station NEON\n1\n0\n1\n0\n1\n\n\nLECO\nLeConte Creek NEON\n0\n1\n0\n0\n0\n\n\nLENO\nLenoir Landing NEON\n1\n0\n1\n1\n1\n\n\nLEWI\nLewis Run NEON\n0\n1\n0\n0\n0\n\n\nLIRO\nLittle Rock Lake NEON\n0\n1\n0\n0\n0\n\n\nMART\nMartha Creek NEON\n0\n1\n0\n0\n0\n\n\nMAYF\nMayfield Creek NEON\n0\n1\n0\n0\n0\n\n\nMCDI\nMcDiffett Creek NEON\n0\n1\n0\n0\n0\n\n\nMCRA\nMcRae Creek NEON\n0\n1\n0\n0\n0\n\n\nMLBS\nMountain Lake Biological Station NEON\n1\n0\n1\n0\n1\n\n\nMOAB\nMoab NEON\n1\n0\n1\n0\n1\n\n\nNIWO\nNiwot Ridge NEON\n1\n0\n1\n0\n1\n\n\nNOGP\nNorthern Great Plains Research Laboratory NEON\n1\n0\n1\n0\n1\n\n\nOAES\nMarvin Klemme Range Research Station NEON\n1\n0\n1\n0\n1\n\n\nOKSR\nOksrukuyik Creek NEON\n0\n1\n0\n0\n0\n\n\nONAQ\nOnaqui NEON\n1\n0\n1\n0\n1\n\n\nORNL\nOak Ridge NEON\n1\n0\n1\n1\n1\n\n\nOSBS\nOrdway-Swisher Biological Station NEON\n1\n0\n1\n1\n1\n\n\nPOSE\nPosey Creek NEON\n0\n1\n0\n0\n0\n\n\nPRIN\nPringle Creek NEON\n0\n1\n0\n0\n0\n\n\nPRLA\nPrairie Lake NEON\n0\n1\n0\n0\n0\n\n\nPRPO\nPrairie Pothole NEON\n0\n1\n0\n0\n0\n\n\nPUUM\nPu’u Maka’ala Natural Area Reserve NEON\n1\n0\n1\n0\n1\n\n\nREDB\nRed Butte Creek NEON\n0\n1\n0\n0\n0\n\n\nRMNP\nRocky Mountains NEON\n1\n0\n1\n0\n1\n\n\nSCBI\nSmithsonian Conservation Biology Institute NEON\n1\n0\n1\n1\n1\n\n\nSERC\nSmithsonian Environmental Research Center NEON\n1\n0\n1\n1\n1\n\n\nSJER\nSan Joaquin Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nSOAP\nSoaproot Saddle NEON\n1\n0\n1\n0\n1\n\n\nSRER\nSanta Rita Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nSTEI\nSteigerwaldt-Chequamegon NEON\n1\n0\n1\n0\n1\n\n\nSTER\nNorth Sterling NEON\n1\n0\n1\n0\n1\n\n\nSUGG\nLake Suggs NEON\n0\n1\n0\n0\n0\n\n\nSYCA\nSycamore Creek NEON\n0\n1\n0\n0\n0\n\n\nTALL\nTalladega National Forest NEON\n1\n0\n1\n1\n1\n\n\nTEAK\nLower Teakettle NEON\n1\n0\n1\n0\n1\n\n\nTECR\nTeakettle Creek - Watershed 2 NEON\n0\n1\n0\n0\n0\n\n\nTOMB\nLower Tombigbee River NEON\n0\n1\n0\n0\n0\n\n\nTOOK\nToolik Lake NEON\n0\n1\n0\n0\n0\n\n\nTOOL\nToolik Field Station NEON\n1\n0\n1\n0\n1\n\n\nTREE\nTreehaven NEON\n1\n0\n1\n0\n1\n\n\nUKFS\nUniversity of Kansas Field Station NEON\n1\n0\n1\n1\n1\n\n\nUNDE\nUniversity of Notre Dame Environmental Research Center NEON\n1\n0\n1\n0\n1\n\n\nWALK\nWalker Branch NEON\n0\n1\n0\n0\n0\n\n\nWLOU\nWest St Louis Creek NEON\n0\n1\n0\n0\n0\n\n\nWOOD\nChase Lake National Wildlife Refuge NEON\n1\n0\n1\n0\n1\n\n\nWREF\nWind River Experimental Forest NEON\n1\n0\n1\n0\n1\n\n\nYELL\nYellowstone National Park NEON\n1\n0\n1\n0\n1" + "text": "Sites\nThe following table lists all the sites in the NEON Ecological Forecasting Challenge along with the “themes” that it is included it.\n\nsite_list <- read_csv(\"../neon4cast_field_site_metadata.csv\", show_col_types = FALSE) |> \n rename(site_id = field_site_id) |> \n select(site_id, field_site_name, terrestrial, aquatics, phenology, ticks, beetles) \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nsite_id\nfield_site_name\nterrestrial\naquatics\nphenology\nticks\nbeetles\n\n\n\n\nABBY\nAbby Road NEON\n1\n0\n1\n0\n1\n\n\nARIK\nArikaree River NEON\n0\n1\n0\n0\n0\n\n\nBARC\nLake Barco NEON\n0\n1\n0\n0\n0\n\n\nBARR\nUtqiaġvik NEON\n1\n0\n1\n0\n1\n\n\nBART\nBartlett Experimental Forest NEON\n1\n0\n1\n0\n1\n\n\nBIGC\nUpper Big Creek NEON\n0\n1\n0\n0\n0\n\n\nBLAN\nBlandy Experimental Farm NEON\n1\n0\n1\n1\n1\n\n\nBLDE\nBlacktail Deer Creek NEON\n0\n1\n0\n0\n0\n\n\nBLUE\nBlue River NEON\n0\n1\n0\n0\n0\n\n\nBLWA\nBlack Warrior River NEON\n0\n1\n0\n0\n0\n\n\nBONA\nCaribou-Poker Creeks Research Watershed NEON\n1\n0\n1\n0\n1\n\n\nCARI\nCaribou Creek NEON\n0\n1\n0\n0\n0\n\n\nCLBJ\nLyndon B. Johnson National Grassland NEON\n1\n0\n1\n0\n1\n\n\nCOMO\nComo Creek NEON\n0\n1\n0\n0\n0\n\n\nCPER\nCentral Plains Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nCRAM\nCrampton Lake NEON\n0\n1\n0\n0\n0\n\n\nCUPE\nRio Cupeyes NEON\n0\n1\n0\n0\n0\n\n\nDCFS\nDakota Coteau Field Site NEON\n1\n0\n1\n0\n1\n\n\nDEJU\nDelta Junction NEON\n1\n0\n1\n0\n1\n\n\nDELA\nDead Lake NEON\n1\n0\n1\n0\n1\n\n\nDSNY\nDisney Wilderness Preserve NEON\n1\n0\n1\n0\n1\n\n\nFLNT\nFlint River NEON\n0\n1\n0\n0\n0\n\n\nGRSM\nGreat Smoky Mountains National Park NEON\n1\n0\n1\n0\n1\n\n\nGUAN\nGuanica Forest NEON\n1\n0\n1\n0\n1\n\n\nGUIL\nRio Guilarte NEON\n0\n1\n0\n0\n0\n\n\nHARV\nHarvard Forest & Quabbin Watershed NEON\n1\n0\n1\n0\n1\n\n\nHEAL\nHealy NEON\n1\n0\n1\n0\n1\n\n\nHOPB\nLower Hop Brook NEON\n0\n1\n0\n0\n0\n\n\nJERC\nThe Jones Center At Ichauway NEON\n1\n0\n1\n0\n1\n\n\nJORN\nJornada Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nKING\nKings Creek NEON\n0\n1\n0\n0\n0\n\n\nKONA\nKonza Prairie Agroecosystem NEON\n1\n0\n1\n0\n1\n\n\nKONZ\nKonza Prairie Biological Station NEON\n1\n0\n1\n1\n1\n\n\nLAJA\nLajas Experimental Station NEON\n1\n0\n1\n0\n1\n\n\nLECO\nLeConte Creek NEON\n0\n1\n0\n0\n0\n\n\nLENO\nLenoir Landing NEON\n1\n0\n1\n1\n1\n\n\nLEWI\nLewis Run NEON\n0\n1\n0\n0\n0\n\n\nLIRO\nLittle Rock Lake NEON\n0\n1\n0\n0\n0\n\n\nMART\nMartha Creek NEON\n0\n1\n0\n0\n0\n\n\nMAYF\nMayfield Creek NEON\n0\n1\n0\n0\n0\n\n\nMCDI\nMcDiffett Creek NEON\n0\n1\n0\n0\n0\n\n\nMCRA\nMcRae Creek NEON\n0\n1\n0\n0\n0\n\n\nMLBS\nMountain Lake Biological Station NEON\n1\n0\n1\n0\n1\n\n\nMOAB\nMoab NEON\n1\n0\n1\n0\n1\n\n\nNIWO\nNiwot Ridge NEON\n1\n0\n1\n0\n1\n\n\nNOGP\nNorthern Great Plains Research Laboratory NEON\n1\n0\n1\n0\n1\n\n\nOAES\nMarvin Klemme Range Research Station NEON\n1\n0\n1\n0\n1\n\n\nOKSR\nOksrukuyik Creek NEON\n0\n1\n0\n0\n0\n\n\nONAQ\nOnaqui NEON\n1\n0\n1\n0\n1\n\n\nORNL\nOak Ridge NEON\n1\n0\n1\n1\n1\n\n\nOSBS\nOrdway-Swisher Biological Station NEON\n1\n0\n1\n1\n1\n\n\nPOSE\nPosey Creek NEON\n0\n1\n0\n0\n0\n\n\nPRIN\nPringle Creek NEON\n0\n1\n0\n0\n0\n\n\nPRLA\nPrairie Lake NEON\n0\n1\n0\n0\n0\n\n\nPRPO\nPrairie Pothole NEON\n0\n1\n0\n0\n0\n\n\nPUUM\nPu’u Maka’ala Natural Area Reserve NEON\n1\n0\n1\n0\n1\n\n\nREDB\nRed Butte Creek NEON\n0\n1\n0\n0\n0\n\n\nRMNP\nRocky Mountains NEON\n1\n0\n1\n0\n1\n\n\nSCBI\nSmithsonian Conservation Biology Institute NEON\n1\n0\n1\n1\n1\n\n\nSERC\nSmithsonian Environmental Research Center NEON\n1\n0\n1\n1\n1\n\n\nSJER\nSan Joaquin Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nSOAP\nSoaproot Saddle NEON\n1\n0\n1\n0\n1\n\n\nSRER\nSanta Rita Experimental Range NEON\n1\n0\n1\n0\n1\n\n\nSTEI\nSteigerwaldt-Chequamegon NEON\n1\n0\n1\n0\n1\n\n\nSTER\nNorth Sterling NEON\n1\n0\n1\n0\n1\n\n\nSUGG\nLake Suggs NEON\n0\n1\n0\n0\n0\n\n\nSYCA\nSycamore Creek NEON\n0\n1\n0\n0\n0\n\n\nTALL\nTalladega National Forest NEON\n1\n0\n1\n1\n1\n\n\nTEAK\nLower Teakettle NEON\n1\n0\n1\n0\n1\n\n\nTECR\nTeakettle Creek - Watershed 2 NEON\n0\n1\n0\n0\n0\n\n\nTOMB\nLower Tombigbee River NEON\n0\n1\n0\n0\n0\n\n\nTOOK\nToolik Lake NEON\n0\n1\n0\n0\n0\n\n\nTOOL\nToolik Field Station NEON\n1\n0\n1\n0\n1\n\n\nTREE\nTreehaven NEON\n1\n0\n1\n0\n1\n\n\nUKFS\nUniversity of Kansas Field Station NEON\n1\n0\n1\n1\n1\n\n\nUNDE\nUniversity of Notre Dame Environmental Research Center NEON\n1\n0\n1\n0\n1\n\n\nWALK\nWalker Branch NEON\n0\n1\n0\n0\n0\n\n\nWLOU\nWest St Louis Creek NEON\n0\n1\n0\n0\n0\n\n\nWOOD\nChase Lake National Wildlife Refuge NEON\n1\n0\n1\n0\n1\n\n\nWREF\nWind River Experimental Forest NEON\n1\n0\n1\n0\n1\n\n\nYELL\nYellowstone National Park NEON\n1\n0\n1\n0\n1" }, { "objectID": "targets.html#additional-variables", @@ -109,21 +109,21 @@ "href": "instructions.html#forecast-file-format", "title": "How to forecast", "section": "3 Forecast file format", - "text": "3 Forecast file format\nThe file is a csv format with the following columns:\n\nproject_id: use neon4cast\nmodel_id: the short name of the model defined as the model_id in the file name (see below) and in your registration. The model_id should have no spaces. model_id should reflect a method to forecast one or a set of target variables and must be unique to the vera4cast Challenge\ndatetime: forecast timestamp. Format %Y-%m-%d %H:%M:%S with UTC as the time zone. Forecasts submitted with a %Y-%m-%d format will be converted to a full datetime assuming UTC mid-night.\nreference_datetime: The start of the forecast; this should be 0 times steps in the future. There should only be one value of reference_datetime in the file. Format is %Y-%m-%d %H:%M:%S with UTC as the time zone. Forecasts submitted with a %Y-%m-%d format will be converted to a full datetime assuming UTC mid-night.\nduration: the time-step of the forecast. Use the value of P1D for a daily forecast, P1W for a weekly forecast, and PT30M for 30 minute forecast. This value should match the duration of the target variable that you are forecasting. Formatted as ISO 8601 duration\nsite_id: code for site (bvre, fcre, or tubr)\nfamily name of the probability distribution that is described by the parameter values in the parameter column (see list below for accepted distribution). An ensemble forecast as a family of ensemble. See note below about family\nparameter the parameters for the distribution (see note below about parameter column) or the number of the ensemble member. For example the parameters for normal are mu and sigma.\nvariable: standardized variable name\nprediction: forecasted value for the parameter in the parameter column" + "text": "3 Forecast file format\nThe file is a csv format with the following columns:\n\nproject_id: use neon4cast\nmodel_id: the short name of the model defined as the model_id in the file name (see below) and in your registration. The model_id should have no spaces. model_id should reflect a method to forecast one or a set of target variables and must be unique to the vera4cast Challenge\ndatetime: forecast timestamp. Format %Y-%m-%d %H:%M:%S with UTC as the time zone. Forecasts submitted with a %Y-%m-%d format will be converted to a full datetime assuming UTC mid-night.\nreference_datetime: The start of the forecast; this should be 0 times steps in the future. There should only be one value of reference_datetime in the file. Format is %Y-%m-%d %H:%M:%S with UTC as the time zone. Forecasts submitted with a %Y-%m-%d format will be converted to a full datetime assuming UTC mid-night.\nduration: the time-step of the forecast. Use the value of P1D for a daily forecast, P1W for a weekly forecast, and PT30M for 30 minute forecast. This value should match the duration of the target variable that you are forecasting. Formatted as ISO 8601 duration\nsite_id: code for NEON site.\nfamily name of the probability distribution that is described by the parameter values in the parameter column (see list below for accepted distribution). An ensemble forecast as a family of ensemble. See note below about family\nparameter the parameters for the distribution (see note below about parameter column) or the number of the ensemble member. For example the parameters for normal are mu and sigma.\nvariable: standardized variable name\nprediction: forecasted value for the parameter in the parameter column" }, { "objectID": "instructions.html#representing-uncertainity", "href": "instructions.html#representing-uncertainity", "title": "How to forecast", "section": "4 Representing uncertainity", - "text": "4 Representing uncertainity\nUncertainty is represented through the family - parameter columns\n\n4.0.1 Parameteric forecast\nFor a parametric forecast with the normal distribution, the family column uses the word normal to designate a normal distribution and the parameter column must have values of mu and sigma for each forecasted variable, site_id, depth and time combination.\nParameteric forecasts for binary variables should use bernoulli as the distribution.\nThe following names and parameterization of the distribution are supported (family: parameters):\n\nlognormal: mu, sigma\nnormal: mu,sigma\nbernoulli: prob\nbeta: shape1, shape2\nuniform: min, max\ngamma: shape, rate\nlogistic: location, scale\nexponential: rate\npoisson: lambda\n\nIf you are submitting a forecast that is not in the supported list we recommend using the ensemble format and sampling from your distribution to generate a set of ensemble members that represents your distribution.\n\n\n4.0.2 Ensemble (or sample) forecast\nEnsemble (or sample) forecasts use the family value of ensemble and the parameter values are the ensemble index.\nWhen forecasts using the ensemble family are scored, we assume that the ensemble is a set of equally likely realizations that are sampled from a distribution is comparable to that of the observations (i.e., no broad adjustments are required to make the ensemble more consistent with observations). This is referred to as a “perfect ensemble” in Bröcker and Smith (2007). Ensemble (or sample) forecasts are transformed to a probability distribution function (e.g., dressed) using the default methods in the scoringRules R package (empirical version of the quantile decomposition for the crps and kernel density estimation using a Gaussian kernel for the logs). Kernel density estimation uses the default bandwidth produced by the bw.nrd function in the R stats package.\n\n\n4.1 Supported distributions\nThe following names and parameterization of the distribution are supported (family: parameters):\n\nlognormal: mu, sigma\nnormal: mu,sigma\nbernoulli: prob\nbeta: shape1, shape2\nuniform: min, max\ngamma: shape, rate\nlogistic: location, scale\nexponential: rate\npoisson: lambda\n\n\n\n4.2 Example forecasts\nHere is an example of a forecast that uses a normal distribution:\n\ndf <- readr::read_csv(\"https://renc.osn.xsede.org/bio230121-bucket01/vera4cast/forecasts/raw/T20231001231345_daily-2023-10-01-climatology.csv.gz\", show_col_types = FALSE)\ndplyr::glimpse(df)\n\nRows: 288\nColumns: 11\n$ model_id <chr> \"climatology\", \"climatology\", \"climatology\", \"clima…\n$ datetime <date> 2023-10-02, 2023-10-02, 2023-10-02, 2023-10-02, 20…\n$ reference_datetime <date> 2023-10-01, 2023-10-01, 2023-10-01, 2023-10-01, 20…\n$ site_id <chr> \"bvre\", \"bvre\", \"bvre\", \"bvre\", \"bvre\", \"bvre\", \"bv…\n$ variable <chr> \"Chla_ugL_mean\", \"Chla_ugL_mean\", \"Temp_C_mean\", \"T…\n$ family <chr> \"normal\", \"normal\", \"normal\", \"normal\", \"normal\", \"…\n$ parameter <chr> \"mu\", \"sigma\", \"mu\", \"sigma\", \"mu\", \"sigma\", \"mu\", …\n$ prediction <dbl> 10.041987, 2.587292, 18.331126, 2.531732, 9.541139,…\n$ depth_m <dbl> 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1…\n$ project_id <chr> \"vera4cast\", \"vera4cast\", \"vera4cast\", \"vera4cast\",…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…\n\n\nFor an ensemble (or sample) forecast, the family column uses the word ensemble to designate that it is a ensemble forecast and the parameter column is the ensemble member number (1, 2, 3 …)\n\ndf <- readr::read_csv(\"https://renc.osn.xsede.org/bio230121-bucket01/vera4cast/forecasts/raw/T20231001231348_daily-2023-10-01-persistenceRW.csv.gz\", show_col_types = FALSE)\ndplyr::glimpse(df)\n\nRows: 28,800\nColumns: 11\n$ model_id <chr> \"persistenceRW\", \"persistenceRW\", \"persistenceRW\", …\n$ datetime <dttm> 2023-10-02, 2023-10-03, 2023-10-04, 2023-10-05, 20…\n$ reference_datetime <dttm> 2023-10-01, 2023-10-01, 2023-10-01, 2023-10-01, 20…\n$ site_id <chr> \"bvre\", \"bvre\", \"bvre\", \"bvre\", \"bvre\", \"bvre\", \"bv…\n$ family <chr> \"ensemble\", \"ensemble\", \"ensemble\", \"ensemble\", \"en…\n$ parameter <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …\n$ variable <chr> \"Chla_ugL_mean\", \"Chla_ugL_mean\", \"Chla_ugL_mean\", …\n$ prediction <dbl> 10.59539, 13.04463, 13.86989, 13.81281, 14.09787, 1…\n$ depth_m <dbl> 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1.5, 1…\n$ project_id <chr> \"vera4cast\", \"vera4cast\", \"vera4cast\", \"vera4cast\",…\n$ duration <chr> \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P1D\", \"P…" + "text": "4 Representing uncertainity\nUncertainty is represented through the family - parameter columns\n\n4.0.1 Parameteric forecast\nFor a parametric forecast with the normal distribution, the family column uses the word normal to designate a normal distribution and the parameter column must have values of mu and sigma for each forecasted variable, site_id, depth and time combination.\nParameteric forecasts for binary variables should use bernoulli as the distribution.\nThe following names and parameterization of the distribution are supported (family: parameters):\n\nlognormal: mu, sigma\nnormal: mu,sigma\nbernoulli: prob\nbeta: shape1, shape2\nuniform: min, max\ngamma: shape, rate\nlogistic: location, scale\nexponential: rate\npoisson: lambda\n\nIf you are submitting a forecast that is not in the supported list we recommend using the ensemble format and sampling from your distribution to generate a set of ensemble members that represents your distribution.\n\n\n4.0.2 Ensemble (or sample) forecast\nEnsemble (or sample) forecasts use the family value of ensemble and the parameter values are the ensemble index.\nWhen forecasts using the ensemble family are scored, we assume that the ensemble is a set of equally likely realizations that are sampled from a distribution is comparable to that of the observations (i.e., no broad adjustments are required to make the ensemble more consistent with observations). This is referred to as a “perfect ensemble” in Bröcker and Smith (2007). Ensemble (or sample) forecasts are transformed to a probability distribution function (e.g., dressed) using the default methods in the scoringRules R package (empirical version of the quantile decomposition for the crps and kernel density estimation using a Gaussian kernel for the logs). Kernel density estimation uses the default bandwidth produced by the bw.nrd function in the R stats package.\n\n\n4.1 Supported distributions\nThe following names and parameterization of the distribution are supported (family: parameters):\n\nlognormal: mu, sigma\nnormal: mu,sigma\nbernoulli: prob\nbeta: shape1, shape2\nuniform: min, max\ngamma: shape, rate\nlogistic: location, scale\nexponential: rate\npoisson: lambda\n\n\n\n4.2 Example forecasts\nHere is an example of a forecast that uses a normal distribution:\n\ndf <- readr::read_csv(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/forecasts/raw/T20231102190926_aquatics-2023-10-19-climatology.csv.gz\", show_col_types = FALSE)\ndplyr::glimpse(df)\n\nRows: 4,456\nColumns: 8\n$ model_id <chr> \"climatology\", \"climatology\", \"climatology\", \"clima…\n$ datetime <date> 2023-10-20, 2023-10-20, 2023-10-20, 2023-10-20, 20…\n$ reference_datetime <date> 2023-10-19, 2023-10-19, 2023-10-19, 2023-10-19, 20…\n$ site_id <chr> \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"ARIK\", \"AR…\n$ family <chr> \"normal\", \"normal\", \"normal\", \"normal\", \"normal\", \"…\n$ parameter <chr> \"mu\", \"sigma\", \"mu\", \"sigma\", \"mu\", \"sigma\", \"mu\", …\n$ variable <chr> \"oxygen\", \"oxygen\", \"temperature\", \"temperature\", \"…\n$ prediction <dbl> 4.542862, 1.448393, 8.070854, 1.330059, 4.194895, 1…\n\n\nFor an ensemble (or sample) forecast, the family column uses the word ensemble to designate that it is a ensemble forecast and the parameter column is the ensemble member number (1, 2, 3 …)\n\ndf <- readr::read_csv(\"https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/forecasts/raw/T20231102190926_aquatics-2023-10-19-persistenceRW.csv.gz\", show_col_types = FALSE)\ndplyr::glimpse(df)\n\nRows: 530,400\nColumns: 8\n$ model_id <chr> \"persistenceRW\", \"persistenceRW\", \"persistenceRW\", …\n$ datetime <date> 2023-10-20, 2023-10-21, 2023-10-22, 2023-10-23, 20…\n$ reference_datetime <date> 2023-10-19, 2023-10-19, 2023-10-19, 2023-10-19, 20…\n$ site_id <chr> \"BARC\", \"BARC\", \"BARC\", \"BARC\", \"BARC\", \"BARC\", \"BA…\n$ family <chr> \"ensemble\", \"ensemble\", \"ensemble\", \"ensemble\", \"en…\n$ parameter <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, …\n$ variable <chr> \"chla\", \"chla\", \"chla\", \"chla\", \"chla\", \"chla\", \"ch…\n$ prediction <dbl> 3.7956520, 4.1800958, 3.2470058, 3.4550993, 3.48348…" }, { "objectID": "instructions.html#submission-process", "href": "instructions.html#submission-process", "title": "How to forecast", "section": "5 Submission process", - "text": "5 Submission process\nIndividual forecast files can be uploaded any time.\nTeams will submit their forecast csv files through an R function.\nThe function is available using the following code\n\nremotes::install_github(\"eco4cast/neon4cast\")\n\nThe submit function is\n\nlibrary(neon4cast)\nneon4cast::submit(forecast_file = \"your_file.csv\")\n\nIf you will be submitting multiple forecasts using the same model_id, use the following\n\nneon4cast::submit(forecast_file = \"your_file.csv\",\n first_submission = FALSE)" + "text": "5 Submission process\n\n5.1 Timing\nIndividual forecast files can be uploaded any time.\nTeams will submit their forecast csv files through an R function. The csv file can only contain one unique model_id and one unique project_id.\nThe function is available using the following code\n\nremotes::install_github(\"eco4cast/neon4cast\")\n\nThe submit function is\n\nlibrary(neon4cast)\nneon4cast::submit(forecast_file = \"your_file.csv\")\n\nIf you will be submitting multiple forecasts using the same model_id, use the following\n\nneon4cast::submit(forecast_file = \"your_file.csv\",\n first_submission = FALSE)" }, { "objectID": "instructions.html#post-submission", diff --git a/targets.html b/targets.html index bde3c6e28f..42a220b4a5 100644 --- a/targets.html +++ b/targets.html @@ -217,21 +217,27 @@

    On this page

    -
    -
    library(tidyverse)
    -
    +

    The targets were specifically chosen to include ecosystem, community, and population dynamics. Targets are available at all relative NEON sites. If you are interested in forecasting a single site, we recommend the following focal sites.

    +
      +
    • Terrestrial: HARV
    • +
    • Aquatics: BARC
    • +
    • Phenology: HARV
    • +
    • Beetles:
    • +
    • Ticks:
    • +

    Targets files

    Terrestrial fluxes

    +

    Insert short description

    -
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/terrestrial_daily-targets.csv.gz"
    +
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/terrestrial_daily-targets.csv.gz"
    -
    terrestrial_targets <- read_csv(url, show_col_types = FALSE)
    +
    terrestrial_targets <- read_csv(url, show_col_types = FALSE)
    -
    glimpse(terrestrial_targets)
    +
    glimpse(terrestrial_targets)
    Rows: 111,244
     Columns: 6
    @@ -246,11 +252,18 @@ 

    Terrestrial fluxes

    ++++++ + @@ -258,38 +271,41 @@

    Terrestrial fluxes

    + +
    variable duration Descriptionhorizon
    le P1D daily mean latent heat flux (W/m2)30 days
    nee P1D daily mean Net ecosystem exchange (gC/m2/day)30 days
    -
    terrestrial_targets |> 
    -  filter(site_id %in% c("HARV", "OSBS")) |> 
    -  ggplot(aes(x = datetime, y = observation)) +
    -  geom_point() +
    -  facet_grid(variable~site_id, scales = "free_y") +
    -  theme_bw()
    +
    terrestrial_targets |> 
    +  filter(site_id %in% c("HARV", "OSBS")) |> 
    +  ggplot(aes(x = datetime, y = observation)) +
    +  geom_point() +
    +  facet_grid(variable~site_id, scales = "free_y") +
    +  theme_bw()

    +

    Learn more at: https://projects.ecoforecast.org/neon4cast-docs/Terrestrial.html

    Aquatics

    -
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/aquatics-targets.csv.gz"
    +
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/aquatics-targets.csv.gz"
    -
    aquatics_targets <- read_csv(url, show_col_types = FALSE)
    +
    aquatics_targets <- read_csv(url, show_col_types = FALSE)
    -
    glimpse(aquatics_targets)
    +
    glimpse(aquatics_targets)
    Rows: 58,082
     Columns: 6
    @@ -305,15 +321,17 @@ 

    Aquatics

    ---++++ + @@ -321,28 +339,31 @@

    Aquatics

    + + +
    variable duration Descriptionhorizon
    temperature P1D Surface Mean Daily Water Temperature (Celsius)30 days
    chla P1D daily mean Chlorophyll-a (ug/L)30 days
    oxygen P1D Surface Mean Daily Dissolved Oxygen Concentration (mgL)30 days
    -
    aquatics_targets |> 
    -  filter(site_id %in% c("BARC", "CRAM")) |> 
    -  ggplot(aes(x = datetime, y = observation)) +
    -  geom_point() +
    -  facet_grid(variable~site_id, scales = "free_y") +
    -  theme_bw()
    +
    aquatics_targets |> 
    +  filter(site_id %in% c("BARC", "CRAM")) |> 
    +  ggplot(aes(x = datetime, y = observation)) +
    +  geom_point() +
    +  facet_grid(variable~site_id, scales = "free_y") +
    +  theme_bw()
    Warning: Removed 219 rows containing missing values (`geom_point()`).
    @@ -350,17 +371,18 @@

    Aquatics

    +

    Learn more at: https://projects.ecoforecast.org/neon4cast-docs/Aquatics.html

    Phenology

    -
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/phenology-targets.csv.gz"
    +
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1D/phenology-targets.csv.gz"
    -
    phenology_targets <- read_csv(url, show_col_types = FALSE)
    +
    phenology_targets <- read_csv(url, show_col_types = FALSE)
    -
    glimpse(phenology_targets)
    +
    glimpse(phenology_targets)
    Rows: 266,678
     Columns: 6
    @@ -375,35 +397,44 @@ 

    Phenology

    ++++++ + - + + - + +
    variable duration Descriptionhorizon
    gcc_90 P1DNAGreen chromatic coordinate is the ratio of the green digital number to the sum of the red, green, blue digital numbers from a digital camera.30 days
    rcc_90 P1DNARed chromatic coordinate is the ratio of the Red digital number to the sum of the red, green, blue digital numbers from a digital camera.30 days
    -
    phenology_targets |> 
    -  filter(site_id %in% c("HARV", "OSBS")) |> 
    -  ggplot(aes(x = datetime, y = observation)) +
    -  geom_point() +
    -  facet_grid(variable~site_id, scales = "free_y") +
    -  theme_bw()
    +
    phenology_targets |> 
    +  filter(site_id %in% c("HARV", "OSBS")) |> 
    +  ggplot(aes(x = datetime, y = observation)) +
    +  geom_point() +
    +  facet_grid(variable~site_id, scales = "free_y") +
    +  theme_bw()
    Warning: Removed 1672 rows containing missing values (`geom_point()`).
    @@ -411,17 +442,18 @@

    Phenology

    +

    Learn more at: https://projects.ecoforecast.org/neon4cast-docs/Phenology.html

    Beetle communities

    -
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/beetles-targets.csv.gz"
    +
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/beetles-targets.csv.gz"
    -
    beetles_targets <- read_csv(url, show_col_types = FALSE)
    +
    beetles_targets <- read_csv(url, show_col_types = FALSE)
    -
    glimpse(beetles_targets)
    +
    glimpse(beetles_targets)
    Rows: 5,280
     Columns: 6
    @@ -437,15 +469,17 @@ 

    Beetle communities

    --+++ + @@ -453,38 +487,41 @@

    Beetle communities

    + +
    variable duration Descriptionhorizon
    abundance P1W Total number of carabid individuals per trap-night, estimated each week of the year at each NEON site1 year
    richness P1W Total number of unique ‘species’ in a sampling bout for each NEON site each week.1 year
    -
    beetles_targets |> 
    -  filter(site_id %in% c("HARV", "OSBS")) |> 
    -  ggplot(aes(x = datetime, y = observation)) +
    -  geom_point() +
    -  facet_grid(variable~site_id, scales = "free_y") +
    -  theme_bw()
    +
    beetles_targets |> 
    +  filter(site_id %in% c("HARV", "OSBS")) |> 
    +  ggplot(aes(x = datetime, y = observation)) +
    +  geom_point() +
    +  facet_grid(variable~site_id, scales = "free_y") +
    +  theme_bw()

    +

    Learn more at: https://projects.ecoforecast.org/neon4cast-docs/Beetles.html

    Tick populations

    -
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/ticks-targets.csv.gz"
    +
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=P1W/ticks-targets.csv.gz"
    -
    ticks_targets <- read_csv(url, show_col_types = FALSE)
    +
    ticks_targets <- read_csv(url, show_col_types = FALSE)
    -
    glimpse(ticks_targets)
    +
    glimpse(ticks_targets)
    Rows: 622
     Columns: 6
    @@ -504,6 +541,7 @@ 

    Tick populations

    variable duration Description +horizon @@ -512,24 +550,26 @@

    Tick populations

    -
    ticks_targets |> 
    -  filter(site_id %in% c("BLAN", "OSBS")) |> 
    -  ggplot(aes(x = datetime, y = observation)) +
    -  geom_point() +
    -  facet_grid(variable~site_id, scales = "free_y") +
    -  theme_bw()
    +
    ticks_targets |> 
    +  filter(site_id %in% c("BLAN", "OSBS")) |> 
    +  ggplot(aes(x = datetime, y = observation)) +
    +  geom_point() +
    +  facet_grid(variable~site_id, scales = "free_y") +
    +  theme_bw()

    +

    Learn more at: https://projects.ecoforecast.org/neon4cast-docs/Beetles.html

    Sites

    +

    The following table lists all the sites in the NEON Ecological Forecasting Challenge along with the “themes” that it is included it.

    -
    site_list <- read_csv("../neon4cast_field_site_metadata.csv", show_col_types = FALSE) |> 
    -  rename(site_id = field_site_id) |> 
    -  select(site_id, field_site_name, terrestrial, aquatics, phenology, ticks, beetles) 
    +
    site_list <- read_csv("../neon4cast_field_site_metadata.csv", show_col_types = FALSE) |> 
    +  rename(site_id = field_site_id) |> 
    +  select(site_id, field_site_name, terrestrial, aquatics, phenology, ticks, beetles) 
    @@ -1295,10 +1335,10 @@

    Additional variables<

    Hourly water temperature

    Daily time-step variables measured in the monitored stream (Tunnel Branch; site_id = tubr)

    -
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=PT1H/aquatics-expanded-observations.csv.gz"
    -
    -aquatics_expanded <- read_csv(url, show_col_types = FALSE)
    -glimpse(aquatics_expanded)
    +
    url <- "https://sdsc.osn.xsede.org/bio230014-bucket01/challenges/targets/project_id=neon4cast/duration=PT1H/aquatics-expanded-observations.csv.gz"
    +
    +aquatics_expanded <- read_csv(url, show_col_types = FALSE)
    +glimpse(aquatics_expanded)
    Rows: 1,412,364
     Columns: 6