Skip to contents

Imputes landings to represent individual catches of species from a trip, and redistributes selected values over the imputed landings. This mimics a situation where landings are reported for each catch rather than each trip. This is useful to obtain a higher resolution on some grouping variables and consolidate logbook records with landing records, while preserving data for landings not reported in logbooks, and preserving the total value equal to that in landings.

Usage

imputeCatchesLandings(
  landings,
  logbooks,
  tripIdCol = "tripid",
  catchIdCol,
  speciesColLand = "Art FAO (kode)",
  speciesColLog = "FANGSTART_FAO",
  weightCol = "RUNDVEKT",
  valueColumns = c("Bruttovekt", "Produktvekt", "Rundvekt")
)

Arguments

landings

data.table containing landings records, and a column identifying the trip that caught the landed catch ('tripIdCol').

logbooks

data.table containing logbook records, and columns identifying the trip ('tripIdCol') and catch ('catchIdCol').

tripIdCol

character() that identifies the column in 'landings' and 'logbooks' that contain trip ids

catchIdCol

character() that identifies the column in 'logbooks' that contain catch ids

speciesColLand

character() that identifies the column in 'landings' that contain species ids

speciesColLog

character() that identifies the column in 'logbooks' that contain species ids

weightCol

character() that identifies the column in 'logbooks' that contain the weights to use for redistribution of value columns.

valueColumns

character() vector with names of columns that should be redistributed over the imputed landings

Value

data.table with 'landings' that have artificial landings imputed, each catch identified by the added column 'catchIdCol'.

Details

The result of imputation have added lines for each corresponding catch in logbooks, and 'valueColumns' redistributed to reflect the fraction of 'weightCol' that each catch contributes to the total trip catch of the species ('speciesColLog').

Important: columns in landings that are not in 'valueColumns' will be duplicated exactly for the imputed catches. That means that any weight-column not in 'valueColumns' will result in duplicated total weights for that column. That also means that any identifiers / keys may be copied and thus be rendered non-unique in the imputed landings.

Landings for which no trip can be found in 'logbooks' are left untouched. logbook entries with no corresponding landings are ignored.

Default values for parameters 'speciesCol' and 'valueColumns' are suitable for data read with readLssFile. Default values for 'tripIdCol' corresponds to defaults for makeTripIds, appendTripIdLandings, and appendTripIdLogbooks.

See also

makeTripIds, appendTripIdLandings, and appendTripIdLogbooks for obtaining 'landings' with trip-ids.