fawda123 / ebase Goto Github PK
View Code? Open in Web Editor NEWEstuarine Bayesian Single-station Estimation
Home Page: https://fawda123.github.io/EBASE
License: Creative Commons Zero v1.0 Universal
Estuarine Bayesian Single-station Estimation
Home Page: https://fawda123.github.io/EBASE
License: Creative Commons Zero v1.0 Universal
There are cases where a researcher may want to estimate production and respiration with no air-sea diffusion, such as for a sonde that is located at the bottom of the water column. In the comparable ecometab() function from the WtRegDO package, this feature is accomplished by setting bott_stat=TRUE. It is possible to approximate the result using the following code, but it is clunky, and a dedicated option to remove air-sea diffusion would be more intuitive.
library(EBASE)
library(dplyr)
library(lubridate)
library(doParallel)
# get four days of data
dat <- exdat %>%
filter(month(DateTimeStamp) == 6 & day(DateTimeStamp) %in% 1:4)
##
# run ebase with defaults
# setup parallel backend
cl <- makeCluster(2)
registerDoParallel(cl)
res <- ebase(dat, interval = 900, Z = 1.85, bprior=c(0, 0.001))
stopCluster(cl)
Have to install jags...
Should be similar to BASEmetab
Use examples from Appalachicola and Fwoxy
Replace arng, brng, and rvar with asd, bsd, and rsd, add arguments for amean, bmean, and rmean.
The ebase()
function will not work if there are dangling days at the beginning or end of the input data. An obscure JAGS error will be returned to the console, something like this:
Error in { :
task 8 failed - "4 nodes produced errors; first error: 'names' attribute [1] must be the same length as the vector [0]"
The ebase_prep()
function needs to include a fix to cut these dangling days and return a warning indicating these records are removed.
This can be used to provide justification for the chosen defaults as defined in literature and what creates a reasonable result for Fwoxy. Make sure to back-transform means and tau at the time step to correct units from inputs.
Including required inputs, JAGS model, units for I/O
For time series with multiple missing days, interp = TRUE
with maxgap = 1e6
or some other large number must be used for ebase()
to work. This will set the timestep consistently based on the value passed to interval
. However, these large gaps will be estimated by ebase()
and need to be removed from the output. The isinterp
column added from ebase_prep()
could be used to filter these days, but must not filter interpolated values for days that have data.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.