gadget_stockfile {mfdb} | R Documentation |
Gadget stock files
Description
Structures representing a GADGET stock file
Usage
gadget_stockfile_extremes(stock_name, data)
gadget_stockfile_refweight(stock_name, data)
gadget_stockfile_initialconditions(stock_name, data)
gadget_stockfile_recruitment(stock_name, data)
Arguments
stock_name |
A name, e.g. |
data |
A data.frame used to generate the data. See details. |
Details
The columns required in the data
varies depends on which function you
are using.
gadget_stockfile_extremes
requires age
and length
columns
and populates minlength
, minage
, maxlength
, maxage
.
The values are obtained by the grouping used, rather than the
maximum values in the data. If you want the minimum and maximum from the data,
query with length = NULL, age = NULL
, so the table contains "all"
and the grouping contains the actual minimum and maximum.
gadget_stockfile_refweight
requires a length
column and a
mean
column representing mean weight for that length group. It populates
the refweightfile
and dl
.
gadget_stockfile_initialconditions
requires area
, age
,
length
, number
and mean
(weight) columns. Populates
initialconditions minlength
, minage
, maxlength
, maxage
,
dl
and the numberfile
. As before, the min/max values are populated
using the groupings you specify, not the min/max available data.
gadget_stockfile_recruitment
requires year
, step
, area
,
age
, length
, number
and mean
(weight) columns. Populates
doesrenew
, minlength
, maxlength
, dl
, numberfile
.
Value
The return value is a gadget_stockfile
object that can be written
to the filesystem with gadget_dir_write
.
Examples
mdb <- mfdb(tempfile(fileext = '.duckdb'))
# Define 2 areacells of equal size
mfdb_import_area(mdb, data.frame(name=c("divA", "divB"), size=1))
# Make up some samples
samples <- expand.grid(
year = 1998,
month = c(1:12),
areacell = c("divA", "divB"),
species = 'COD',
age = c(1:5),
length = c(0,40,80))
samples$count <- runif(nrow(samples), 20, 90)
mfdb_import_survey(mdb, data_source = "x", samples)
imm_data <- mfdb_sample_meanweight(mdb, c('age', 'length'), list(
age = NULL, # The age column will say 'all', but will know the min/max
length = mfdb_step_interval('', 10, to = 100),
species = 'COD'))
# Write both min/max and refweighfile into our gadget directory
component <- gadget_stockfile_extremes('cod.imm', imm_data[[1]])
component
component <- gadget_stockfile_refweight('cod.imm', imm_data[[1]])
component
gadget_dir_write(gadget_directory(tempfile()), component)
mfdb_disconnect(mdb)