hoenig: Age-Length Key by the Hoening _et al._ (1993, 1994) method

Description Usage Arguments Details Value References See Also Examples

View source: R/hoenig.r

Description

Generation of Age-Length Keys (ALK) using incomplete data, by the method proposed by Hoenig et al. (1993, 1994).

Usage

1
2
3
hoenig(Ak, fik, fiz, threshold = 1, maxiter = 2000,
  age_classes = colnames(Ak[[1]]), length_classes = rownames(Ak[[1]]),
  name = "", description = "")

Arguments

Ak

A list of k equally dimensioned matrices, so that A[[k]][i, j] is the count of individuals of length i and age j on sample k.

fik

A list of k vectors of equal length (i), so that fik[[k]][i] is the total number of fish in the length-class i on the population from which Ak[[k]] was sampled.

fiz

A list of vectors of equal length (i) where fiz[[z]][i] is the number of fish in the length-class i on population z, for which no age data is available.

age_classes

A vector with the name of each age class.

length_classes

A vector with the name of each age class.

threshold

The value at which convergence is considered to be achieved: see ‘details’.

maxiter

The maximum number of iterations of the EM algorithm: see ‘details’.

name

A string with the name of the ALK.

description

A string describing the ALK.

Details

Calculates an ALK using the generalized method proposed by Hoenig et al. (1993, 1994), which uses an undefined number of data sets with known and unknown age information.

The returned ALKr object contains information on the convergence threshold that was used, the number of iterations ran, and if convergence was reached.

Convergence

The method proposed by Hoenig et al. (1993, 1994) is based on the EM algorithm as defined by Dempster et al. (1997), and it generates the ALK by a series of iterations which are repeated until convergence is acheived.

Let Nz be a list of matrices containing the number of fish in each length and age class for each of the z populations with unknown age information and with length distribution specified by fiz. Convergence is tested by evaluating the greatest of the absolute differences between all pairs of Nz matrices generated on the current and previous iterations: max(mapply("-", Nz, Nz.old)).

Value

A list of ALKr objects, one for each item in the fiz list, each containing a matrix with the probability of an individual of age j having length i, i.e. P(i|j), the vectors of age and length classes, and information about the method used to generate the key.

References

Dempster, A.P., Laird, N.M., Rubin, D.B. (1977). Maximum Likelihood from Incomplete Data via the EM Algorithm. Journal of the Royal Statistical Society. Series B (Methodological), 39/1, 1-38. DOI: 10.2307/2984875

Hoenig, J.M., Heisey, D.M., Hanumara, R.C. (1993). Using Prior and Current Information to Estimate Age Composition: a new kind of age-length key. ICES CM Documents 1993, 10.

Hoenig, J.M., Heisey, D.M., Hanumara, R.C. (1994). A computationally simple approach to using current and past data in age-length key. ICES CM Documents 1994, 5.

See Also

inverse_ALK kimura_chikuni hoenig_heisey gascuel

Examples

1
2
3
4
5
data(hom)

hoenig(Ak = hom$otoliths[1:10],
       fik = replicate(10, hom$F1992, simplify = FALSE),
       fiz = list(hom$F1993))

Example output

[[1]]
            0           1           2          3           4           5
7  0.85711153 0.142888470 0.000000000 0.00000000 0.000000000 0.000000000
8  0.78448170 0.215518302 0.000000000 0.00000000 0.000000000 0.000000000
9  0.82905531 0.170944694 0.000000000 0.00000000 0.000000000 0.000000000
10 0.81434969 0.185650315 0.000000000 0.00000000 0.000000000 0.000000000
11 0.79104174 0.208958256 0.000000000 0.00000000 0.000000000 0.000000000
12 0.75768002 0.225203979 0.017116003 0.00000000 0.000000000 0.000000000
13 0.73377618 0.256594766 0.009629055 0.00000000 0.000000000 0.000000000
14 0.69553853 0.293634027 0.010827443 0.00000000 0.000000000 0.000000000
15 0.64168466 0.334757600 0.023557744 0.00000000 0.000000000 0.000000000
16 0.58960677 0.386734685 0.013293825 0.01036472 0.000000000 0.000000000
17 0.47786139 0.427413133 0.094725480 0.00000000 0.000000000 0.000000000
18 0.33363991 0.437781378 0.217551962 0.01102675 0.000000000 0.000000000
19 0.22413009 0.402880045 0.305365255 0.06762461 0.000000000 0.000000000
20 0.07364994 0.314562035 0.536844220 0.06667674 0.008267065 0.000000000
21 0.06592822 0.199764035 0.554441017 0.10719058 0.050238517 0.000000000
22 0.03020500 0.091264141 0.600896326 0.20565725 0.067622997 0.004354286
23 0.00000000 0.021042030 0.481022880 0.32495379 0.088608295 0.018252849
24 0.00000000 0.000000000 0.392528056 0.36267636 0.144979929 0.041864787
25 0.00000000 0.008593014 0.213033074 0.42890376 0.191286009 0.071532911
26 0.00000000 0.000000000 0.121320762 0.36471030 0.224063135 0.090991910
27 0.00000000 0.000000000 0.020607381 0.30031486 0.248424421 0.119933040
28 0.00000000 0.000000000 0.019916007 0.22699423 0.258932357 0.126545982
29 0.00000000 0.000000000 0.022564813 0.16249450 0.154534774 0.087937068
30 0.00000000 0.000000000 0.000000000 0.00000000 0.067322538 0.087764395
31 0.00000000 0.000000000 0.000000000 0.03489926 0.075143247 0.043286952
32 0.00000000 0.000000000 0.000000000 0.00000000 0.071039090 0.058615654
33 0.00000000 0.000000000 0.000000000 0.00000000 0.015927205 0.075962521
34 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.026757349
35 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.033686042
36 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.000000000
37 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.000000000
38 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.000000000
39 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.000000000
40 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.000000000
41 0.00000000 0.000000000 0.000000000 0.00000000 0.000000000 0.000000000
            6          7          8           9           10          11
7  0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
8  0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
9  0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
10 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
11 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
12 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
13 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
14 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
15 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
16 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
17 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
18 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
19 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
20 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
21 0.02243763 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
22 0.00000000 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
23 0.06612015 0.00000000 0.00000000 0.000000000 0.0000000000 0.000000000
24 0.03783253 0.02011834 0.00000000 0.000000000 0.0000000000 0.000000000
25 0.06034344 0.01333602 0.01024878 0.002722993 0.0000000000 0.000000000
26 0.13030531 0.05997379 0.00000000 0.008284878 0.0003499159 0.000000000
27 0.14637793 0.12095108 0.03643287 0.006347507 0.0006109141 0.000000000
28 0.15843762 0.18473223 0.01878552 0.003626368 0.0003220595 0.001707634
29 0.34587163 0.13170543 0.07240125 0.016630611 0.0039151070 0.001615938
30 0.43984134 0.26425236 0.09157217 0.041814889 0.0048374497 0.002532769
31 0.39985130 0.20520164 0.17904869 0.048653754 0.0075308433 0.005837737
32 0.42998168 0.22065989 0.14822623 0.052103484 0.0100435459 0.008253477
33 0.37256507 0.18751146 0.24707725 0.079773691 0.0136910561 0.006385123
34 0.18535044 0.29166083 0.31321962 0.143232147 0.0254480414 0.013350811
35 0.26697989 0.26055180 0.24164349 0.137434228 0.0394196264 0.018933568
36 0.40393972 0.15071983 0.24039367 0.115345739 0.0636961020 0.021536478
37 0.15591390 0.08900722 0.26527645 0.364231080 0.0646141662 0.049159412
38 0.00000000 0.21624423 0.32772586 0.263571274 0.1017975199 0.073796379
39 0.00000000 0.14834305 0.23635705 0.325307913 0.1531386606 0.116330697
40 0.00000000 0.00000000 0.49026457 0.250716358 0.1007458594 0.125028214
41 0.00000000 0.00000000 0.00000000 0.433869623 0.2737372594 0.222074675
             12           13           14           15
7  0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
8  0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
9  0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
10 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
11 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
12 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
13 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
14 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
15 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
16 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
17 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
18 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
19 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
20 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
21 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
22 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
23 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
24 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
25 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
26 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
27 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
28 0.000000e+00 0.0000000000 0.000000e+00 0.000000e+00
29 2.035454e-05 0.0002214859 8.705414e-05 0.000000e+00
30 6.208951e-05 0.0000000000 0.000000e+00 0.000000e+00
31 6.948634e-05 0.0004770979 0.000000e+00 0.000000e+00
32 1.673187e-04 0.0009096322 0.000000e+00 0.000000e+00
33 2.448375e-04 0.0007312945 1.304978e-04 0.000000e+00
34 2.760759e-04 0.0005178517 1.868343e-04 0.000000e+00
35 5.886320e-04 0.0007627247 0.000000e+00 0.000000e+00
36 9.247649e-04 0.0018808011 1.562898e-03 0.000000e+00
37 2.030698e-03 0.0082508082 1.504058e-03 1.220935e-05
38 1.633753e-03 0.0117091509 3.512600e-03 9.237708e-06
39 5.598296e-03 0.0111003244 3.824008e-03 0.000000e+00
40 4.924730e-03 0.0240528818 4.254083e-03 1.329952e-05
41 1.487509e-02 0.0511978060 4.106927e-03 1.386193e-04

Method: Hoenig et al. 
                     Value
ConvergenceThreshold 1    
Iterations           119  
Converged            TRUE 

ALKr documentation built on May 30, 2017, 7:42 a.m.