library(tidyverse)
library(extraDistr)
library(kableExtra)
library(ggplot2)
<- function(mean_val, sd_val) {
sample_beta <- 10000
n # calculate alpha and beta parameters
<- sd_val^2
var_val <- ((1 - mean_val) / var_val - 1 / mean_val) * mean_val^2
alpha <- alpha * (1 / mean_val - 1)
beta # Check and adjust alpha and beta to ensure they are valid for the beta distribution
if (alpha <= 0 | beta <= 0) {
stop("Invalid shape parameters: alpha and beta must be greater than 0.")
}# randomization seed for replicability
set.seed(123)
# sample from beta distribution
<- rbeta(n, alpha, beta)
sample_beta #sample_beta[sample_beta < 0] <- 0
return(sample_beta)
}
# function to print tables
=function(x){
show.tablekable(x, table.attr = 'data-quarto-disable-processing="true"') %>%
::kable_styling(full_width=FALSE, position="center", font_size=12,
kableExtrabootstrap_options = c("condensed"))
}
2 Quantitative literature analysis
This chapter compares our estimate from the first chapter with those found in the wider academic and gray literature. To do so, we review several different estimates of the survival rate of shrimp to the end of a given stage of production.
There are two strategies for estimating pre-slaughter mortality rates. The first is to take overall estimates, aggregated across production types, weighting them proportional to how credible each source is. The second is to break down the pre-slaughter mortality rates according to the production style of the farm, as rates may differ according to how intensive production is. Then, we can aggregate the results by weighting them according to what percentage of shrimp comes from each production type. One can carry out a similar approach by breaking down mortality rates by species, and then weighing the aggregate results by the proportion of overall farmed shrimp production that each species represents.
We start by uploading packages and functions.
2.1 Studies
Most sources provide ranges, but do not indicate how much of the total variability the ranges are intended to capture. In such cases, we assume that the ranges intend to capture what is typical, rather than true ranges. Consequently, we interpret the mid-point of the range as the mean and the half-length as one standard deviation. The exception was when the authors made it clear that they included atypical outcomes, in which case we treat the range as covering two standard deviations.
2.1.1 FAO, 2009
On super-intensive systems, FAO (2009) reports that ongrowing ponds have a survival rate of 55-91 percent.
We treated the survival rate range as two standard deviations given how large it is.
<-mean(c(1-.55, 1-.91)) # midpoint mortality rate
FAO_mortality_mean<- ((1-.55)- FAO_mortality_mean)/2 # length between midpoint and either end is *two* sds
FAO_mortality_sd
<-data.frame(
FAOReference = c("FAO, 2009"),
Mean_Mortality = c(FAO_mortality_mean),
SD_Mortality = c(FAO_mortality_sd),
Stage = c("Juvenile-subadult"),
Production_Type = c("Super-Intensive"),
Species = c("P. vannamei"),
Country = c("Not Specified"))
show.table(FAO)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
FAO, 2009 | 0.27 | 0.09 | Juvenile-subadult | Super-Intensive | P. vannamei | Not Specified |
2.1.2 Gonzalez, 2019
Gonzalez (2019) reports:
“In Texas, the 2017 survival rates of stocked shrimps ranged from 4 to 68 percent. On average, farmers see survival rates of 56 percent, data from TPWD show.”
This presumably covers all species farmed in Texas, though it is unclear. Because the mean is so much closer than the high end of the range the low end, we assume 4 percent survival is an outlier. We assume that the upper end of the range is three standard deviations above the mean.
<- (.68-.56)/3
Gonzalez_sd
<-data.frame(
GonzalezReference = c("Gonzalez, 2019"),
Mean_Mortality = c(1-.56),
SD_Mortality = c(Gonzalez_sd),
Stage = c("Juvenile-subadult"),
Production_Type = c("All"),
Species = c("All"),
Country = c("Not Specified"))
show.table(Gonzalez)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Gonzalez, 2019 | 0.44 | 0.04 | Juvenile-subadult | All | All | Not Specified |
2.1.3 Fast, 1992
On page 346, Fast (1992) reports that the survival rate on ongrowing farms differs by production style. Survival on extensive farms is “<60”%, “60 to 80” on semi-intensive farms, “80-90” on intensive farms, and “80-90”on super-intensive farms. In the absence of better information, we treated “<60%” as a mean of 40%, with a standard deviation of 10%.
<- mean(c(1-.60, 1-.80))
Fast_semiintensive_mean<- (1-.60) - Fast_semiintensive_mean
Fast_semiintensive_sd<- mean(c(1-.80, 1-.90))
Fast_intensive_mean<- (1-.80) - Fast_intensive_mean
Fast_intensive_sd<- mean(c(1-.80, 1-.90))
Fast_superintensive_mean<- (1-.80) - Fast_superintensive_mean
Fast_superintensive_sd
<-data.frame(
FastReference = c("Fast, 1992","Fast, 1992","Fast, 1992","Fast, 1992"),
Mean_Mortality = c((1-.40),Fast_semiintensive_mean, Fast_intensive_mean, Fast_superintensive_mean),
SD_Mortality = c(.10, Fast_semiintensive_sd, Fast_intensive_sd, Fast_superintensive_sd),
Stage = c("Juvenile-subadult", "Juvenile-subadult","Juvenile-subadult","Juvenile-subadult"),
Production_Type = c("Extensive", "Semi-Intensive", "Intensive", "Super-Intensive"),
Species = c("Penaeids", "Penaeids","Penaeids","Penaeids"),
Country = c("Not Specified","Not Specified","Not Specified","Not Specified"))
show.table(Fast)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Fast, 1992 | 0.60 | 0.10 | Juvenile-subadult | Extensive | Penaeids | Not Specified |
Fast, 1992 | 0.30 | 0.10 | Juvenile-subadult | Semi-Intensive | Penaeids | Not Specified |
Fast, 1992 | 0.15 | 0.05 | Juvenile-subadult | Intensive | Penaeids | Not Specified |
Fast, 1992 | 0.15 | 0.05 | Juvenile-subadult | Super-Intensive | Penaeids | Not Specified |
2.1.4 Kongkeo, 2005
In an overview of P. monodon aquaculture, Kongkeo (2005) writes:
“Nauplii are usually stocked at 100 000/tonne and cultured up to late mysis or early PL with approximately 70-80 percent survival rate. They are then transferred to a new tank and cultured up to PL 12-15; a further 70-80 percent survival rate is achieved in this stage.”
<- mean(c(1-.70, 1-.80))
Kongkeo_larval_mean<- (1.-.70) - Kongkeo_larval_mean
Kongkeo_larval_sd<- mean(c(1-.70, 1-.80))
Kongkeo_postlarval_mean<- (1.-.70) - Kongkeo_larval_mean
Kongkeo_postlarval_sd
<-data.frame(
KongkeoReference = c("Kongkeo, 2005","Kongkeo,2005"),
Mean_Mortality = c(Kongkeo_larval_mean,Kongkeo_postlarval_mean),
SD_Mortality = c(.05,.05),
Stage = c("Larval", "Postlarval"),
Production_Type = c("All", "All"),
Species = c("P. monodon", "P. monodon"),
Country = c("Not Specified", "Not specified"))
show.table(Kongkeo)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Kongkeo, 2005 | 0.25 | 0.05 | Larval | All | P. monodon | Not Specified |
Kongkeo,2005 | 0.25 | 0.05 | Postlarval | All | P. monodon | Not specified |
2.1.5 Kona Bay
To our knowledge, Kona Bay only produces P. vannamei broodstock. They have three breeds, one focused on growth, another on survival, and another one that is balanced between the two. Here, we take performance data from the “balance” production line, which claims a 70% survival rate to the postlarval stage and a 75%-85% survival rate from the postlarval stage to slaughter. We apply the standard deviation of the latter to the former, as zero variability in larval mortality is implausible.
<- mean(c(1-.75,1-.85))
Kona_pl_mean<- (1-.75)- Kona_pl_mean
Kona_pl_sd
<-data.frame(
KonaReference = c("Kona Bay","Kona Bay"),
Mean_Mortality = c((1-.70),Kona_pl_mean),
SD_Mortality = c(Kona_pl_sd,Kona_pl_sd),
Stage = c("Larval", "Postlarval, Juvenile-subadult"),
Production_Type = c("All", "All"),
Species = c("P. vannamei", "P. vannamei"),
Country = c("Not Specified","Not specified"))
<- 1-((1-sample_beta(Kona[1,"Mean_Mortality"],Kona[1,"SD_Mortality"]))* (1-sample_beta(Kona[2,"Mean_Mortality"],Kona[2,"SD_Mortality"])))
overall_mortality_kona
<-data.frame(
overall_konaReference = c("Kona Bay"),
Mean_Mortality = c(mean(overall_mortality_kona)),
SD_Mortality = c(sd(overall_mortality_kona)),
Stage = c("All"),
Production_Type = c("All"),
Species = c("P. vannamei"),
Country = c("Not Specified"))
<-rbind(Kona, overall_kona)
Konashow.table(Kona)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Kona Bay | 0.3000000 | 0.0500000 | Larval | All | P. vannamei | Not Specified |
Kona Bay | 0.2000000 | 0.0500000 | Postlarval, Juvenile-subadult | All | P. vannamei | Not specified |
Kona Bay | 0.4400035 | 0.0534816 | All | All | P. vannamei | Not Specified |
2.1.6 American Penaeid
American Penaeid uses P. vannamei broodstock only. Its stated survival rate is 75-80%, which we confirmed via a phone call represents the postlarval stage onwards (i.e., it doesn’t include the larval stage). The operator we spoke with couldn’t confirm what exactly the range reported represented, but we interpret it as what is typical given that she said it was based on 10 years of experience.
<- mean(c(1-.75, 1-.80))
AP_mean<- (1.-.75) - AP_mean
AP_sd
<-data.frame(
APReference = c("American Penaeid"),
Mean_Mortality = c(AP_mean),
SD_Mortality = c(AP_sd),
Stage = c("Postlarval, Juvenile-subadult"),
Production_Type = c("Intensive and Super-Intensive"),
Species = c("P. vannamei"),
Country = c("Not Specified"))
show.table(AP)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
American Penaeid | 0.225 | 0.025 | Postlarval, Juvenile-subadult | Intensive and Super-Intensive | P. vannamei | Not Specified |
2.1.7 Boyd et al., 2017
Boyd et al. (2017) conducted a survey that “included 34 farms for whiteleg shrimp, Litopenaeus vannamei, and five farms for black tiger shrimp, Penaeus monodon, in Thailand and 28 farms for whiteleg shrimp and 24 farms for black tiger shrimp in Vietnam” (p. 203). All production types were sampled (except super-intensive facilities, which are thought to be rare in Vietnam and Thailand): “The interview teams…selected possible farms in proportion to the percentage of extensive, semi-intensive, and intensive shrimp culture thought to occur in each country” (p. 203).
The survival rates are reported below (note that they quantify variability using standard errors rather than standard deviations):
P. vannamei: “Farmers reported average survival of shrimp from stocking to harvest of 73.9% (1.7%) in Thailand and 70.8% (4.4%) in Vietnam” (p. 209).
Page 214 (on P. monodon): “The survival of shrimp from stocking to harvest varied from less than 10% to nearly 100% with an average of 58.4% (6.1%)”
The authors discuss postlarvae, so we interpret the mortality rates to apply from the PL stage onwards, and to exclude larvae.
#convert SEs to SDs using the sample sizes
<- .017*sqrt(34)
vannamei_thailand_sd<- .044*sqrt(28)
vannamei_vietnam_sd<- .061*sqrt((24))
monodon_sd
<-data.frame(
BoydReference = c("Boyd et al., 2017","Boyd et al., 2017","Boyd et al., 2017"),
Mean_Mortality = c((1-.739),(1-.708),(1-.584)),
SD_Mortality = c((vannamei_thailand_sd),(vannamei_vietnam_sd),(monodon_sd)),
Stage = c("Postlarval, Juvenile-subadult", "Postlarval, Juvenile-subadult", "Postlarval, Juvenile-subadult"),
Production_Type = c("Extensive, Semi-Intensive, and Intensive","Extensive, Semi-Intensive, and Intensive","Semi-Intensive and Intensive"),
Species = c("P. vannamei", "P. vannamei", "P. monodon"),
Country = c("Thailand", "Vietnam", "Vietnam"))
show.table(Boyd)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Boyd et al., 2017 | 0.261 | 0.0991262 | Postlarval, Juvenile-subadult | Extensive, Semi-Intensive, and Intensive | P. vannamei | Thailand |
Boyd et al., 2017 | 0.292 | 0.2328261 | Postlarval, Juvenile-subadult | Extensive, Semi-Intensive, and Intensive | P. vannamei | Vietnam |
Boyd et al., 2017 | 0.416 | 0.2988377 | Postlarval, Juvenile-subadult | Semi-Intensive and Intensive | P. monodon | Vietnam |
2.1.8 Boyd et al., 2018
Boyd et al. (2018) surveyed 89 P. vannamei and 11 P. monodon farms in India.
They report that “in this study, values ranged from nil at two farms to 100% at another L. vannamei farm—the average was 75.8 ± 1.57%. Survival of P. monodon ranged from 10 to 80% (\(\bar{X}\) = 41.4 ± 5.9%)” (p. 558).
As this report is an extension of Boyd et al. (2017), we assume the reported figures are means and standard errors.
<- .0157*sqrt(89)
vannamei_india_sd<- .059*sqrt((11))
monodon_india_sd
<-data.frame(
Boyd2018Reference = c("Boyd et al., 2018","Boyd et al., 2018"),
Mean_Mortality = c((1-.758),(1-.414)),
SD_Mortality = c((vannamei_india_sd),(monodon_india_sd)),
Stage = c("Postlarval, Juvenile-subadult", "Postlarval, Juvenile-subadult"),
Production_Type = c("Extensive, Semi-Intensive, and Intensive","Extensive, Semi-Intensive, and Intensive"),
Species = c("P. vannamei", "P. monodon"),
Country = c("India", "India"))
show.table(Boyd2018)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Boyd et al., 2018 | 0.242 | 0.1481135 | Postlarval, Juvenile-subadult | Extensive, Semi-Intensive, and Intensive | P. vannamei | India |
Boyd et al., 2018 | 0.586 | 0.1956809 | Postlarval, Juvenile-subadult | Extensive, Semi-Intensive, and Intensive | P. monodon | India |
2.1.9 Thakur et al., 2018
In Table 2 of Thakur et al. (2018), the authors report that from stocking to harvest survival rates at intensive P. vannamei farms in Vietnam average 73.83% with a standard deviation of 19.29%.
<-data.frame(
ThakurReference = c("Thakur et al., 2018"),
Mean_Mortality = 1-.7383,
SD_Mortality = .1929,
Stage = c("Postlarval, Juvenile-subadult"),
Production_Type = c("Intensive"),
Species = c("P. vannamei"),
Country = c("Vietnam"))
show.table(Thakur)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Thakur et al., 2018 | 0.2617 | 0.1929 | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Vietnam |
2.1.10 Mandro et al., 2021
In their Package of Aquaculture Practices, the department of fisheries of the government of Kerala (Mandro et al., 2021) details expected survival of P. monodon and M. rosenbergii at different life stages.
Fo P. monodon they report:
- “In general, the survival rate during the larval rearing is 40-50%” (p. 195)
- “The survival rate from larva to PL is 65-75%” (p. 196)
- “Total production of 1.4-1.9 t/ha can be expected per crop with a survival rate of about 80%.” (p. 205)
For the latter we assume the same standard deviation as that of the larva–postlarva period. We infer the overall survival rate by sampling from the rates at each stage.
For M. rosenbergii they report:
- Postlarva “attains 16-21 mm size by next 15 days with a survival rate of 70-80%” (p. 223)
They did not report a survival rate for after the postlarval stage for M. rosenbergii.
<-mean(c(1-.40, 1-.50)) #midpoint mortality rate
Mandro_larval_monodon_mean<- (1-.40) - Mandro_larval_monodon_mean # length between midpoint and either end is *one* sd
Mandro_larval_monodon_sd
<-mean(c(1-.65, 1-.75))
Mandro_postlarval_monodon_mean<- (1-.65) - Mandro_postlarval_monodon_mean
Mandro_postlarval_monodon_sd
<-mean(c(1-.70, 1-.80))
Mandro_postlarval_macrobrachium_mean<- (1-.70) - Mandro_postlarval_macrobrachium_mean
Mandro_postlarval_macrobrachium_sd
<- .80
Mandro_adult_monodon_mean<- Mandro_postlarval_monodon_sd
Mandro_adult_monodon_sd
<-data.frame(
MandroReference = c("Mandro et al., 2021", "Mandro et al., 2021", "Mandro et al., 2021", "Mandro et al., 2021"),
Mean_Mortality = c(Mandro_larval_monodon_mean, Mandro_postlarval_monodon_mean, Mandro_postlarval_macrobrachium_mean, Mandro_adult_monodon_mean),
SD_Mortality = c(Mandro_larval_monodon_sd, Mandro_postlarval_monodon_sd, Mandro_postlarval_macrobrachium_sd, Mandro_adult_monodon_sd),
Stage = c("Larval","Postlarval","Postlarval",
"Juvenile-subadult"),
Production_Type = c("All", "All", "All", "All"),
Species = c("P. monodon", "P. monodon", "M. rosenbergii",
"P. monodon"),
Country = c("Not Specified","Not Specified","Not Specified", "Not Specified"))
<- 1-((1-sample_beta(Mandro[1,"Mean_Mortality"],Mandro[1,"SD_Mortality"]))* (1-sample_beta(Mandro[2,"Mean_Mortality"],Mandro[2,"SD_Mortality"]))*
overall_mortality_monodon1-sample_beta(Mandro[4,"Mean_Mortality"],Mandro[4,"SD_Mortality"])))
(
<-data.frame(
overall_monReference = c("Mandro et al., 2021"),
Mean_Mortality = c(mean(overall_mortality_monodon)),
SD_Mortality = c(sd(overall_mortality_monodon)),
Stage = c("All"),
Production_Type = c("All"),
Species = c("P. monodon"),
Country = c("Not Specified"))
<-rbind(Mandro, overall_mon)
Mandroshow.table(Mandro)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Mandro et al., 2021 | 0.5500000 | 0.0500000 | Larval | All | P. monodon | Not Specified |
Mandro et al., 2021 | 0.3000000 | 0.0500000 | Postlarval | All | P. monodon | Not Specified |
Mandro et al., 2021 | 0.2500000 | 0.0500000 | Postlarval | All | M. rosenbergii | Not Specified |
Mandro et al., 2021 | 0.8000000 | 0.0500000 | Juvenile-subadult | All | P. monodon | Not Specified |
Mandro et al., 2021 | 0.9369562 | 0.0181689 | All | All | P. monodon | Not Specified |
2.1.11 New, 2002
In a manual for farming M. rosenbergii, New (2002, p.70) reports for survival from larva to postlarva that “40-60% is more normal in practice”.
<-mean(c(1-.40, 1-.60))
New_larval_mean<- (1-.40) - New_larval_mean
New_larval_sd
<-data.frame(
NewReference = c("New, 2002"),
Mean_Mortality = c(New_larval_mean),
SD_Mortality = c(New_larval_sd),
Stage = c("Larval"),
Production_Type = c("All"),
Species = c("M. rosenbergii"),
Country = c("Not specified"))
show.table(New)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
New, 2002 | 0.5 | 0.1 | Larval | All | M. rosenbergii | Not specified |
2.1.12 KSU, 2002
The Kentucky State University Aquaculture Program report that survival of M. rosenbergii in Kentucky varies between 60% and 80% (p. 28). Earlier in the manual (p. 5) they report “The hatchery and nursery procedures required to grow 30- to 60-day-old freshwater shrimp juveniles for pond stocking are complex”, so we assume they are referring to the juvenile stage and categorize this as “Juvenile-subadult.”
<- mean(c(1-.60, 1-.80))
KSU_mean<- (1.-.60) - KSU_mean
KSU_sd
<-data.frame(
KSUReference = c("KSU, 2002"),
Mean_Mortality = c(KSU_mean),
SD_Mortality = c(KSU_sd),
Stage = c("Juvenile-subadult"),
Production_Type = c("All"),
Species = c("M. rosenbergii"),
Country = c("USA"))
show.table(KSU)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
KSU, 2002 | 0.3 | 0.1 | Juvenile-subadult | All | M. rosenbergii | USA |
2.1.13 GK Aqua, 2023
In an interview in the magazine Aquaculture Asia Pacific, the founder of an M. rosenbergii hatchery, GK Aqua, said “Overall, our average survival rates gradually reached 30% which is an industry standard”. In the prior sentence the author writes “The breakthrough was in 2020 [when it achieved mass production, stocking 150 larvae/L and […] consistently obtaining 50-60% survival rates”. We therefore assume survival rates are between 30% and 60%. As they are a hatchery, we assume these rates apply to the larval stage.
<- mean(c(1-.30, 1-.60))
GKAqua_mean<- (1.-.30) - GKAqua_mean
GKAqua_sd
<-data.frame(
GKAquaReference = c("GK Aqua, 2023"),
Mean_Mortality = c(GKAqua_mean),
SD_Mortality = c(GKAqua_sd),
Stage = c("Larval"),
Production_Type = c("All"),
Species = c("M. rosenbergii"),
Country = c("Malaysia"))
show.table(GKAqua)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
GK Aqua, 2023 | 0.55 | 0.15 | Larval | All | M. rosenbergii | Malaysia |
2.1.14 Shrimp Welfare Project, 2022
Shrimp Welfare Project conducted field visits in Vietnam. They report survival rates from different production styles in Vietnam, based on “obtained through interviews with farmers, researchers and other stakeholders” (p. 21). A personal correspondence confirms that the rates are from the ongrowing stage, and thus covers onwards from the postlarval stage. Table 3 (p.21) reports average survival rates of 5% (extensive), 60% (semi-intensive), 80% (intensive), and 85% (super-intensive). On page 28, the authors add ranges:
“Among the farms that we visited, including those whose water quality data were and were not collected, the reported survival rates varied among different farming models:
Intensive & super-intensive: between 75% and 90% Semi-intensive: between 60% and 70% Extensive: between 0.5% and 5%” These could be interpreted as true ranges, although some of them imply distributions that are at odds with the averages reported on page 21. Our interpretation of the discrepancy is that the averages also included the estimates of researchers and “other stakeholders,” whereas the ranges come from farmers only. As a compromise solution, we rely on the ranges provided by farmers only, but treat them as covering two standard deviations around the mean only.
<- mean(c(1-.005,1-.05))
SWP_extensive_mean<- (1-.005) - SWP_extensive_mean
SWP_extensive_sd
<- mean(c(1-.60,1-.70))
SWP_semiintensive_mean<-(1-.60) - SWP_semiintensive_mean
SWP_semiintensive_sd
<- mean(c(1-.75,1-.90))
SWP_intensive_mean<- (1-.75) - SWP_intensive_mean
SWP_intensive_sd
<- mean(c(1-.75,1-.90))
SWP_superintensive_mean<- (1-.75) - SWP_superintensive_mean
SWP_superintensive_sd
<-data.frame(
SWPReference = c("SWP, 2022","SWP, 2022","SWP, 2022", "SWP, 2022"),
Mean_Mortality = c(SWP_extensive_mean,SWP_semiintensive_mean,SWP_intensive_mean,SWP_superintensive_mean),
SD_Mortality = c(SWP_extensive_sd,SWP_semiintensive_sd,SWP_intensive_sd,SWP_superintensive_sd),
Stage = c("Postlarval, Juvenile-subadult", "Postlarval, Juvenile-subadult", "Postlarval, Juvenile-subadult","Postlarval, Juvenile-subadult"),
Production_Type = c("Extensive","Semi-Intensive","Intensive", "Super-Intensive"),
Species = c("P. monodon", "P. monodon", "P. vannamei", "P. vannamei"), #The table says "mostly monodon" and "mostly vannamei", so these designations are simplifications.
Country = c("Vietnam", "Vietnam", "Vietnam", "Vietnam"))
show.table(SWP)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
SWP, 2022 | 0.9725 | 0.0225 | Postlarval, Juvenile-subadult | Extensive | P. monodon | Vietnam |
SWP, 2022 | 0.3500 | 0.0500 | Postlarval, Juvenile-subadult | Semi-Intensive | P. monodon | Vietnam |
SWP, 2022 | 0.1750 | 0.0750 | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Vietnam |
SWP, 2022 | 0.1750 | 0.0750 | Postlarval, Juvenile-subadult | Super-Intensive | P. vannamei | Vietnam |
2.1.15 Point estimates
We also found several sources that only reported an average or point estimate. These include:
- Table 3 in Engle et al. (2017), production intensities were estimated from stocking densities, compared to those reported in Table 1 of our previous report
- Boyd et al. (2021, p.780)
- Juárez et al. (2022, p. 7, p.9), production intensities were estimated in the same way as for Engle et al. (2017)
- New (2002), who reports that in postlarval indoor nurseries “survival rates of about 90% can be obtained up to 20 days” (p. 82), and in outdoor nurseries “survival from stocking (or re-stocking) until removal from the nursery ponds should be at least 75%” (p. 83). The latter applies to “newly metamorphosed postlarvae (PL) from hatcheries, or with juveniles from primary nurseries”, though we categorize this estimate as ‘postlarval’, for simplicity.
<-data.frame(
point.estReference = c(rep("Engle et al., 2017", 13), "Boyd et al., 2021", "Juárez et al., 2022", "Juárez et al., 2022", "New, 2002", "New, 2002"),
Mean_Mortality = c(1-.49,1-.74,1-.83,1-.7, 1-.23,1-.75,1-.81,1-.81, 1-.2,1-.75,1-.67,1-.73,1-.8, 1-.573, 1-.145, 1-.725, 1-0.9, 1-0.75),
SD_Mortality = c(rep(NA, 18)),
Stage = c(rep("Postlarval, Juvenile-subadult ", 16), "Postlarval ", "Postlarval "),
Production_Type = c("Semi-intensive", "Semi-intensive", "Intensive", "Intensive", "Semi-intensive", "Semi-intensive", "Intensive", "Intensive", "Extensive", "Intensive", "Intensive", "Intensive", "Intensive", "Mixed/All", "Extensive", "Intensive", "Mixed/All", "Mixed/All"),
Species = c("P. monodon", "P. monodon","P. monodon","P. monodon", "P. vannamei", "P. vannamei", "P. vannamei", "P. vannamei", "P. monodon", "P. vannamei", "P. vannamei", "P. vannamei", "P. vannamei", "P. vannamei", "P. monodon", "P. vannamei", "M. rosenbergii", "M. rosenbergii"),
Country = c("Vietnam", "Vietnam","Vietnam","Vietnam","Vietnam","Vietnam","Vietnam","Vietnam", "Thailand", "Thailand", "Thailand", "Thailand", "Thailand", "Ecuador", "Indonesia", "Indonesia", "Not specified", "Not specified"))
show.table(point.est)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country |
---|---|---|---|---|---|---|
Engle et al., 2017 | 0.510 | NA | Postlarval, Juvenile-subadult | Semi-intensive | P. monodon | Vietnam |
Engle et al., 2017 | 0.260 | NA | Postlarval, Juvenile-subadult | Semi-intensive | P. monodon | Vietnam |
Engle et al., 2017 | 0.170 | NA | Postlarval, Juvenile-subadult | Intensive | P. monodon | Vietnam |
Engle et al., 2017 | 0.300 | NA | Postlarval, Juvenile-subadult | Intensive | P. monodon | Vietnam |
Engle et al., 2017 | 0.770 | NA | Postlarval, Juvenile-subadult | Semi-intensive | P. vannamei | Vietnam |
Engle et al., 2017 | 0.250 | NA | Postlarval, Juvenile-subadult | Semi-intensive | P. vannamei | Vietnam |
Engle et al., 2017 | 0.190 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Vietnam |
Engle et al., 2017 | 0.190 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Vietnam |
Engle et al., 2017 | 0.800 | NA | Postlarval, Juvenile-subadult | Extensive | P. monodon | Thailand |
Engle et al., 2017 | 0.250 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Thailand |
Engle et al., 2017 | 0.330 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Thailand |
Engle et al., 2017 | 0.270 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Thailand |
Engle et al., 2017 | 0.200 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Thailand |
Boyd et al., 2021 | 0.427 | NA | Postlarval, Juvenile-subadult | Mixed/All | P. vannamei | Ecuador |
Juárez et al., 2022 | 0.855 | NA | Postlarval, Juvenile-subadult | Extensive | P. monodon | Indonesia |
Juárez et al., 2022 | 0.275 | NA | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Indonesia |
New, 2002 | 0.100 | NA | Postlarval | Mixed/All | M. rosenbergii | Not specified |
New, 2002 | 0.250 | NA | Postlarval | Mixed/All | M. rosenbergii | Not specified |
2.2 Results
The data is largely not based on any specific dataset, but instead on testimony and perceptions of general consensus. There is no guarantee that the different estimates are fully independent of one another. Thus, we do not conduct a meta-analysis. Instead, we present the mean and 95% credible intervals in a forest plot by sampling from the beta distribution using each study’s mean and standard deviation. Since we do not have access to event counts and totals, the sampling approach ensures that the distributions are bounded between 0 and 1. We combine the datasets made above and clean the data ready for plotting.
#combine datasets
<-data.frame(rbind(
preslaughtermortality
FAO, Fast, Gonzalez, Kongkeo,Kona,AP,Boyd, Boyd2018,
Thakur, Mandro, New, KSU, GKAqua, SWP))
# sample distributions based on means and standard deviations
<- mapply(sample_beta, preslaughtermortality$Mean_Mortality, preslaughtermortality$SD_Mortality)
preslaughtersamples_list
#extract the central 95% of the data and attach it
<-t(data.frame(apply(preslaughtersamples_list, 2, function(x) c(mean = mean(x), quantile(x, probs = c(0.025, 0.975))))))
preslaughtersamples<-cbind(preslaughtermortality, preslaughtersamples)
preslaughtermortality# add row number as a variable for the summary figure
<- preslaughtermortality %>% mutate(ID = row_number())
preslaughtermortality
# Sort from lowest to highest production density for figure
$Production_Type<- ifelse((preslaughtermortality$Production_Type == "Semi-Intensive and Intensive"|preslaughtermortality$Production_Type == "Intensive and Super-Intensive"|preslaughtermortality$Production_Type == "Extensive, Semi-Intensive, and Intensive"|preslaughtermortality$Production_Type == "All"), "Mixed/All", preslaughtermortality$Production_Type)
preslaughtermortality
$Production_Type<- ifelse((preslaughtermortality$Production_Type == "Semi-Intensive"), "Semi-intensive", preslaughtermortality$Production_Type)
preslaughtermortality
<- c("Extensive", "Semi-intensive", "Intensive", "Super-Intensive","Mixed/All")
custom_order
$Production_Type <- factor(preslaughtermortality$Production_Type, levels = custom_order)
preslaughtermortality<- preslaughtermortality[order(preslaughtermortality$Production_Type), ]
preslaughtermortality
# Sort from earliest to latest life stage for summary figure facet wrap
<- c("All", "Larval", "Postlarval",
custom_order "Juvenile-subadult", "Postlarval, Juvenile-subadult", "Postlarval, Juvenile-subadult ")
$Stage <- factor(preslaughtermortality$Stage, levels = custom_order)
preslaughtermortality<- preslaughtermortality[order(preslaughtermortality$Stage), ]
preslaughtermortality
$Species<-factor(preslaughtermortality$Species,
preslaughtermortalitylevels=c("P. vannamei", "P. monodon",
"M. rosenbergii", "Penaeids", "All"))
Finally, we want to get our estimates form the survival curves model to compare to the literature review.
# load the data
## cumulative rates
<-read.csv("../data/survival_curves/vannamei_model_slaughter_probs.csv", header=TRUE, sep=",")
vannamei.cumulative<-read.csv("../data/survival_curves/monodon_model_slaughter_probs.csv", header=TRUE, sep=",")
monodon.cumulative<-read.csv("../data/survival_curves/macro_model_slaughter_probs.csv", header=TRUE, sep=",")
macro.cumulative
## stage-specific rates
<-read.csv("../data/survival_curves/bystage_farmed_shrimp_model_probs.csv", header=TRUE, sep=",")
bystage.farm.shrimp
<- split(bystage.farm.shrimp, bystage.farm.shrimp$species) # split up the farmed shrimp by species so we can calculate averages by species
bystage.df<-bystage.df$vannamei
bystage.vannamei<-bystage.df$monodon
bystage.monodon<-bystage.df$macrobrachium # these are stage specific rates
bystage.macro
## adding our results from the survival curves model to the dataset
<-data.frame(Reference=rep("Survival curves model", 12),
shrimp.mortStage=c(rep("All", 3), rep("Larval", 3),
rep("Postlarval", 3),
rep("Juvenile-subadult", 3)),
Species=rep(c("P. vannamei","P. monodon", "Macrobrachium"), 4),
mean=c((1-mean(vannamei.cumulative$slaughter.age)), # calculate mean survival for each species, minus this from 1 to get mortality instead of survival
1-mean(monodon.cumulative$slaughter.age)),
(1-mean(macro.cumulative$slaughter.age)),
(mean(bystage.vannamei$larval),
mean(bystage.monodon$larval),
mean(bystage.macro$larval),
mean(bystage.vannamei$postlarval),
mean(bystage.monodon$postlarval),
mean(bystage.macro$postlarval),
mean(bystage.vannamei$juvenile.adult),
mean(bystage.monodon$juvenile.adult),
mean(bystage.macro$juvenile.adult)),
'2.5%'=c((1-quantile(vannamei.cumulative$slaughter.age, probs=0.975)), # get the lower bound of our 95% credible intervals
1-quantile(monodon.cumulative$slaughter.age, probs=0.975)),
(1-quantile(macro.cumulative$slaughter.age, probs=0.975)),
(quantile(bystage.vannamei$larval, probs=0.025),
quantile(bystage.monodon$larval, probs=0.025),
quantile(bystage.macro$larval, probs=0.025),
quantile(bystage.vannamei$postlarval, probs=0.025),
quantile(bystage.monodon$postlarval, probs=0.025),
quantile(bystage.macro$postlarval, probs=0.025),
quantile(bystage.vannamei$juvenile.adult, probs=0.025),
quantile(bystage.monodon$juvenile.adult, probs=0.025),
quantile(bystage.macro$juvenile.adult, probs=0.025)),
'97.5%'=c((1-quantile(vannamei.cumulative$slaughter.age, probs=0.025)), # get the upper bound of our 95% credible intervals
1-quantile(monodon.cumulative$slaughter.age, probs=0.025)),
(1-quantile(macro.cumulative$slaughter.age, probs=0.025)),
(quantile(bystage.vannamei$larval, probs=0.975),
quantile(bystage.monodon$larval, probs=0.975),
quantile(bystage.macro$larval, probs=0.975),
quantile(bystage.vannamei$postlarval, probs=0.975),
quantile(bystage.monodon$postlarval, probs=0.975),
quantile(bystage.macro$postlarval, probs=0.975),
quantile(bystage.vannamei$juvenile.adult, probs=0.975),
quantile(bystage.monodon$juvenile.adult, probs=0.975),
quantile(bystage.macro$juvenile.adult, probs=0.975)),
ID=rep(NA, 12),
check.names=FALSE)
# join the survival curves estimates to the literature review data
<-plyr::rbind.fill(shrimp.mort, preslaughtermortality)
all.dat
# organize the life stage categories in order
$Stage<-factor(all.dat$Stage, levels=c( "All", "Larval", "Postlarval", "Juvenile-subadult", "Postlarval, Juvenile-subadult"))
all.dat
# make sure the text can wrap by putting a space in the word, to ensure a clean graph
$Stage<-ifelse((point.est$Stage == "Postlarval "), yes="Post- larval", no=point.est$Stage)
point.est$Stage<-ifelse((point.est$Stage == "Postlarval, Juvenile-subadult "), yes="Postlarval, Juvenile- subadult ", no=point.est$Stage)
point.est
$Stage<-factor(point.est$Stage, levels=c("Post- larval", "Postlarval, Juvenile- subadult ")) point.est
Now we can plot the results.
<-ggplot(all.dat) +
lit.review.w.modelgeom_pointrange(aes(y = Reference, x = mean*100,
xmin = `2.5%`*100, xmax = `97.5%`*100,
color = Species), size=.45, linewidth=.85,
position = position_dodge2(width = 1, padding = 2))+
geom_point(data=point.est,
aes(x=Mean_Mortality*100, y=Reference, color=Species),
shape=4, stroke=1.2, show.legend=FALSE) +
facet_grid(Stage~.,
scales = "free", space = "free_y", labeller = label_wrap_gen(width=2)) +
scale_colour_manual(values=c("#000000", "#CC79A7", "#009E73", "#56B4E9","#E69F00", "#0072B2"),
labels=c("Unspecified", expression(italic("M. rosenbergii")),
expression(italic("Macrobrachium")),
expression(italic("P. monodon")),
expression(italic("P. vannamei")),
"Penaeids")) +
labs(caption = "Circles are means and error bars are 95% credible intervals. Crosses are point estimates.",x="Died before end of stage (%)") +
guides(color=guide_legend(nrow=1,byrow=TRUE)) +
theme(legend.position="bottom",
legend.title=element_blank(),
legend.key.size = unit(6, "mm"),
legend.text=element_text(size=10, hjust=0),
legend.spacing.x = unit(2, "mm"),
strip.text = element_text(size = 9, face="bold"),
plot.caption = element_text(hjust = .5, size=9),
axis.text=element_text(size=10),
axis.title.x=element_text(size=10, face="bold"),
axis.title.y=element_blank(),
legend.box.spacing = unit(1, "mm"),
plot.margin = unit(c(1,1,1,1), "mm"),
panel.spacing = unit(1.5, "mm"))
lit.review.w.model
#ggsave(lit.review.w.model, file="lit.review2.png", width=7.5, height=10.5, unit="in")
2.2.1 Farm intensity
Now we can see how mortality varies by production intensity. We restrict this analysis to the estimates from specific farm intensities. We provide error bars of 95% credible intervals for estimates that had ranges.
# duplicate the data so that we preserve it
<-preslaughtermortality
preslaughtermortality2
# get the point estimate data and label it the same as the data with ranges
<-point.est
point.est2$mean<-point.est2$Mean_Mortality
point.est2$`2.5%`<-NA
point.est2$`97.5%`<-NA
point.est2$ID<-NA
point.est2
# join them
<-rbind(preslaughtermortality2, point.est2)
intensity.data
# remove data from farms not of a specific intensity
<-intensity.data %>%
intensity.datafilter(!Production_Type=="Mixed/All")
# order the whole data frame from extensive to super intensive farms
<- intensity.data[order(intensity.data$Production_Type), ]
intensity.data
# put species in the order we want them to appear
$Species<-factor(
intensity.data$Species, levels=c("P. vannamei", "P. monodon",
intensity.data"M. rosenbergii", "Penaeids", "All"))
# wrap some of the longer labels
$Prod.Type<-factor(intensity.data$Production_Type,
intensity.datalevels = c( "Super-Intensive", "Intensive", "Semi-intensive", "Extensive"), labels=c("Super-\nintensive", "Intensive", "Semi-\nintensive", "Extensive"))
# plot the results
ggplot(intensity.data, aes(x=Prod.Type, y=mean*100, fill=Species)) +
geom_bar(position = position_dodge2(preserve = "single", padding=0.1, width=2), stat="identity") +
geom_errorbar(aes(ymin=`2.5%`*100, ymax=`97.5%`*100),
position=position_dodge2(preserve = "single", padding=0.1), linewidth=.3) +
scale_fill_manual(values=c("#E69F00", "#56B4E9", "#cc79a7"),
labels=c(expression(italic("P. vannamei")),
expression(italic("P. monodon")),
"Penaeids")) +
xlab("") +
ylab("Mortality (%)") +
theme(legend.position="bottom",
legend.title=element_blank(),
legend.key.size = unit(5, "mm"),
legend.text=element_text(size=10, hjust=0),
legend.spacing.x = unit(2, "mm"),
axis.text=element_text(size=10),
axis.title.y=element_text(size=10, face="bold"),
axis.title.x=element_blank(),
legend.box.spacing = unit(1, "mm"),
plot.margin = unit(c(1,1,1,1), "mm")) +
coord_flip()
# show the underlying data
show.table(intensity.data)
Reference | Mean_Mortality | SD_Mortality | Stage | Production_Type | Species | Country | mean | 2.5% | 97.5% | ID | Prod.Type | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
X2 | Fast, 1992 | 0.6000 | 0.1000 | Juvenile-subadult | Extensive | Penaeids | Not Specified | 0.6002081 | 0.3994682 | 0.7891720 | 2 | Extensive |
X27 | SWP, 2022 | 0.9725 | 0.0225 | Postlarval, Juvenile-subadult | Extensive | P. monodon | Vietnam | 0.9723862 | 0.9133818 | 0.9982326 | 27 | Extensive |
9 | Engle et al., 2017 | 0.8000 | NA | Postlarval, Juvenile- subadult | Extensive | P. monodon | Thailand | 0.8000000 | NA | NA | NA | Extensive |
15 | Juárez et al., 2022 | 0.8550 | NA | Postlarval, Juvenile- subadult | Extensive | P. monodon | Indonesia | 0.8550000 | NA | NA | NA | Extensive |
X3 | Fast, 1992 | 0.3000 | 0.1000 | Juvenile-subadult | Semi-intensive | Penaeids | Not Specified | 0.2998896 | 0.1228835 | 0.5099302 | 3 | Semi- intensive |
X28 | SWP, 2022 | 0.3500 | 0.0500 | Postlarval, Juvenile-subadult | Semi-intensive | P. monodon | Vietnam | 0.3499971 | 0.2538515 | 0.4499964 | 28 | Semi- intensive |
1 | Engle et al., 2017 | 0.5100 | NA | Postlarval, Juvenile- subadult | Semi-intensive | P. monodon | Vietnam | 0.5100000 | NA | NA | NA | Semi- intensive |
2 | Engle et al., 2017 | 0.2600 | NA | Postlarval, Juvenile- subadult | Semi-intensive | P. monodon | Vietnam | 0.2600000 | NA | NA | NA | Semi- intensive |
5 | Engle et al., 2017 | 0.7700 | NA | Postlarval, Juvenile- subadult | Semi-intensive | P. vannamei | Vietnam | 0.7700000 | NA | NA | NA | Semi- intensive |
6 | Engle et al., 2017 | 0.2500 | NA | Postlarval, Juvenile- subadult | Semi-intensive | P. vannamei | Vietnam | 0.2500000 | NA | NA | NA | Semi- intensive |
X4 | Fast, 1992 | 0.1500 | 0.0500 | Juvenile-subadult | Intensive | Penaeids | Not Specified | 0.1500973 | 0.0645443 | 0.2591028 | 4 | Intensive |
X18 | Thakur et al., 2018 | 0.2617 | 0.1929 | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Vietnam | 0.2627923 | 0.0112165 | 0.7109977 | 18 | Intensive |
X29 | SWP, 2022 | 0.1750 | 0.0750 | Postlarval, Juvenile-subadult | Intensive | P. vannamei | Vietnam | 0.1751624 | 0.0535604 | 0.3433782 | 29 | Intensive |
3 | Engle et al., 2017 | 0.1700 | NA | Postlarval, Juvenile- subadult | Intensive | P. monodon | Vietnam | 0.1700000 | NA | NA | NA | Intensive |
4 | Engle et al., 2017 | 0.3000 | NA | Postlarval, Juvenile- subadult | Intensive | P. monodon | Vietnam | 0.3000000 | NA | NA | NA | Intensive |
7 | Engle et al., 2017 | 0.1900 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Vietnam | 0.1900000 | NA | NA | NA | Intensive |
8 | Engle et al., 2017 | 0.1900 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Vietnam | 0.1900000 | NA | NA | NA | Intensive |
10 | Engle et al., 2017 | 0.2500 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Thailand | 0.2500000 | NA | NA | NA | Intensive |
11 | Engle et al., 2017 | 0.3300 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Thailand | 0.3300000 | NA | NA | NA | Intensive |
12 | Engle et al., 2017 | 0.2700 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Thailand | 0.2700000 | NA | NA | NA | Intensive |
13 | Engle et al., 2017 | 0.2000 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Thailand | 0.2000000 | NA | NA | NA | Intensive |
16 | Juárez et al., 2022 | 0.2750 | NA | Postlarval, Juvenile- subadult | Intensive | P. vannamei | Indonesia | 0.2750000 | NA | NA | NA | Intensive |
X1 | FAO, 2009 | 0.2700 | 0.0900 | Juvenile-subadult | Super-Intensive | P. vannamei | Not Specified | 0.2698267 | 0.1117648 | 0.4600704 | 1 | Super- intensive |
X5 | Fast, 1992 | 0.1500 | 0.0500 | Juvenile-subadult | Super-Intensive | Penaeids | Not Specified | 0.1500973 | 0.0645443 | 0.2591028 | 5 | Super- intensive |
X30 | SWP, 2022 | 0.1750 | 0.0750 | Postlarval, Juvenile-subadult | Super-Intensive | P. vannamei | Vietnam | 0.1751624 | 0.0535604 | 0.3433782 | 30 | Super- intensive |
2.3 Data and method limitations
There are reasons to doubt the veracity of both industry sources and non-industry sources.
On the one hand, broodstock suppliers have an incentive to underestimate preslaughter mortality of breeders’ offspring so that hatcheries will want to buy their broodstock. For instance, they might run highly controlled studies where water quality is better than what most shrimp farms will provide in practice. However, broodstock suppliers may also be using the most cutting-edge techniques for improving survival (e.g., artificial selection of broodstock), so their estimates might be more accurate than older or more neutral sources when projecting into the future.
On the other hand, academic or otherwise neutral sources still contain methodological limitations. Many academics estimate mortality rates by surveying shrimp farmers. These surveys contain several sources of random and non-random error. For example, Boyd et al., 2017 notes several in their study of shrimp farms in Vietnam and Thailand:
Recall bias: “The variable with which we have the least confidence is percentage survival…farmers almost invariably gave this statistic from memory, and in many cases, the farmer seemed uncertain” (pp. 216-217). This error could be random, but may also be systematic if, for instance, farmers are motivated to provided to optimistic estimates to appear competent.
Practical measurement difficulty: “Use of survival as an indicator in shrimp culture also would be problematic. Postlarvae are tiny and cannot be counted with a high degree of accuracy. Hatcheries typically provide extra postlarvae…in counted batches sold to farms to compensate for errors in counting or weak postlarvae liable to die during acclimation or soon after stocking. Farmers in Asia acclimate postlarvae before stocking them in ponds, but they usually do not recount the postlarvae before stocking. Stocking density usually will be higher than the reported density if the postlarvae survive well or lower in case of poor survival. Once placed in ponds, it is not possible to accurately estimate the number of postlarvae that have survived. Although the producer is able to accurately estimate the number of shrimp harvested by determining the average individual weight of shrimp in samples and using this estimate to determine the total number of shrimp harvested from the total weight of shrimp taken from a pond, accurate estimates of survival are impeded by the lack of reliable information on numbers of postlarvae stocked” (pp. 222-223). Because shrimp are simply harder to count during and before the postlarvae stage, these estimates should contain wide confidence intervals. Mortality rates are probably also underestimated, because farmers had more postlarvae than they thought they did.
Non-random sampling: “Heterotrophic, biofloc, culture systems were not included in the survey as this method does not constitute a large share of shrimp production in either country.” Even if certain types of production are rare, excluding them entirely from surveys could bias results if their pre-slaughter mortality rates are considerably different.
Non-random response: “It was intended initially to select farms randomly from satellite imagery, but many farmers, especially in Thailand, refused to participate in interviews… We believe that the reluctance of farmers to participate involved two factors. The interviews and farm inspections were time consuming, requiring nearly an entire day at most farms, and up to 2 d at larger farms. Moreover, an international, environmental nongovernmental organization was conducting the survey, and the farmers were suspicious of the project motives”(p. 203). If unwillingness to participate correlated with preslaughter mortality rates, the results would be biased.
Exclusion of outliers: “Failed crops reported by some farms in both countries were not included in the survival estimates. Hence, the actual survival of postlarvae to harvest at some farms is more or less than reported earlier for successful crops” (p. 209). We suspect that mass die-off events are frequently omitted in calculations, which would explain why FAO’s range of 55-91% survival seems so anomalously wide.