Thresholds

QC test thresholds for salinity were based on historical Coastal Monitoring Program data submitted to the Nova Scotia Open Data Portal in December 2022. Preliminary QC was applied to the historical data. Obvious outliers, observations impacted by suspected sensor drift, and freshwater stations were omitted.

Separate thresholds were calculated for salinity measured in Inverness County, and salinity measured elsewhere. The stations in Inverness County are in the Bras d’Or Lake, which is a brackish estuary. The salinity measured at these stations is expected to be substantially different from salinity measured at marine stations.

Gross Range Test

Sensor Thresholds

The sensor thresholds were determined based on the aquaMeasure SAL manufacturer specifications (Table 1).

Table 1: Salinity sensor thresholds for the Gross Range Test.

User Thresholds

The salinity observations are relatively normally distributed for both groups of data (Figure 1), and so the mean ± 3 standard deviations were used to determine \(\text{user}_\text{min}\) and \(\text{user}_\text{max}\). The statistics and threshold values are shown in Table 2.

Figure 1: Distribution of salinity observations (binwidth = 0.5 PSU). Dotted orange lines indicate the user thresholds.
Table 2: Gross Range Test statistics and user thresholds for salinity.

Climatological Test

The Climatological Test was not applied to the salinity data because there were insufficient observations to calculate robust seasonal thresholds. Both data groups were missing observations for at least one month (Figure 2). The Gross Range Test user thresholds were used as placeholders until there is sufficient seasonal data to calculate salinity thresholds for the Climatological Test.

Figure 2: Mean ± 3 standard deviations of the monthly salinity observations.
Figure 3: Monthly distribution of salinity observations in Inverness County (binwidth = 0.5 PSU).
Figure 4: Monthly distribution of salinity observations in all counties except Inverness (binwidth = 0.5 PSU).

Spike Test

The distribution of the spike value is skewed right (Figure 5), and so several upper percentile values (90th, 95th, and 99.7th percentile) were evaluated to use as the \(\text{spike}_\text{low}\).

There were relatively few large single-value spikes in the salinity data, and so the 99.7th percentile was selected to avoid false positives. \(\text{spike}_\text{high}\) was defined as \(3 \times \text{spike}_\text{low}\) to identify especially large spike values.

Figure 5: Distribution of the spike value of salinity observations (binwidth = 0.1 PSU). Dotted orange line indicates \(\text{spike}_\text{low}\) and dotted red line indicates \(\text{spike}_\text{high}\).
Table 3: Spike thresholds for salinity.

Rolling Standard Deviation Test

The distribution of rolling standard deviation is skewed right (Figure 6), and so several upper percentile values were evaluated to use as the \(\text{rolling\_sd}_\text{max}\).

The 90th, 95th, and 99.7th percentile values were each applied to the the raw data (no preliminary QC) and the results inspected. The 90th percentile was determined to be too stringent, as it generated false positives, while the 99.7th percentile was determined to be too lenient, as it resulted in false negatives. The 95th percentile was considered the most useful threshold for both data groups.

Figure 6: Distribution of the 24-hour rolling standard deviation of salinity observations (binwidth = 0.1 PSU). Dotted orange line indicates \(\text{rolling_sd}_\text{max}\).
Table 4: Rolling standard deviation thresholds for salinity.