The fundamental concept behind Regional Frequency Analysis (RFA) is to evaluate whether a group of time series from distinct sites can be considered “acceptably homogeneous” (Hosking and Wallis 1997).
In its original version, the RFA is valid only when the variable of interest assumes strictly positive values. However, (Martins et al. 2022) verified that this technique can be effectively applied to extreme maximum (Tmax) and minimum (Tmin) air temperature series, which may assume both positive and negative values, by adopting the so-called additive approach.
Although the study by (Martins et al. 2022) showed promising results, it did not address the influence of long-term warming trends. This calls for an extension of the RFA framework to incorporate time-dependent, nonstationary statistical properties.
To overcome this limitation, (Blain et al. 2026) proposed the Non-stationary Additive Regional Frequency Analysis, an extension of the additive RFA that integrates nonstationary probabilistic models to represent temporal changes in air temperature frequency distributions at the regional scale. This package was designed to facilitate the application of this new method to extreme Tmax and Tmin data under nonstationary climate conditions.
The NSTempRFA package implements the Non-Stationary Additional Regional Frequency Analysis (NS-Add-RFA) method, designed to assess extreme temperature trends in a regional context. This vignette demonstrates the package’s application using 13 annual maximum temperature (Tmax) series (1991-2024) from São Paulo, Brazil. The data were sourced from NOAA’s Physical Sciences Laboratory (NOAA Physical Sciences Laboratory 2026), were derived using the block maxima approach (one block per calendar year).
Install the package from GitHub https://github.com/gabrielblain/NSTempRFA (see README) and load it into your R session:
Table 1 presents the longitude (lon) and latitude (lat), in decimal degrees of the 10 Tmax series.
Table1 <- lonlat_Tmax
Table1
#> lon lat
#> 1 -48.110 -24.81
#> 2 -48.735 -24.31
#> 3 -48.110 -24.31
#> 4 -47.485 -24.31
#> 5 -49.360 -23.81
#> 6 -48.735 -23.81
#> 7 -48.110 -23.81
#> 8 -47.485 -23.81
#> 9 -49.360 -23.31
#> 10 -48.735 -23.31Table 2 displays the Tmax data, in Celsius degrees.
TmaxCPC_SP[, 2:11] <- round(TmaxCPC_SP[, 2:11], 1)
Table2 <- TmaxCPC_SP
Table2
#> Year Pixel_1 Pixel_2 Pixel_3 Pixel_4 Pixel_5 Pixel_6 Pixel_7 Pixel_8 Pixel_9
#> 1 1991 36.3 33.9 34.9 35.1 33.7 33.9 34.1 32.9 34.8
#> 2 1992 34.2 32.4 33.0 33.9 34.1 33.7 33.2 31.8 34.6
#> 3 1993 34.4 33.1 33.6 33.7 35.5 34.9 33.9 31.8 36.5
#> 4 1994 34.6 32.8 33.8 35.3 35.6 34.1 34.0 32.8 35.6
#> 5 1995 35.4 32.7 34.2 35.5 34.8 33.7 33.9 32.7 35.0
#> 6 1996 35.5 32.8 33.8 34.3 33.2 33.6 33.6 31.8 34.2
#> 7 1997 38.1 35.4 36.5 36.4 35.1 35.4 35.2 33.6 36.6
#> 8 1998 35.9 33.0 34.7 35.5 33.4 34.3 34.6 32.8 34.3
#> 9 1999 36.5 31.8 32.9 33.8 33.9 32.9 32.8 32.6 34.5
#> 10 2000 34.0 31.0 32.6 34.8 33.6 33.2 32.7 31.5 35.0
#> 11 2001 35.8 31.9 33.8 35.1 33.6 32.4 31.8 31.8 34.4
#> 12 2002 35.9 34.1 35.0 36.2 35.7 36.0 35.2 33.0 36.8
#> 13 2003 36.3 35.4 35.8 36.5 36.5 36.6 35.6 33.7 35.9
#> 14 2004 33.5 31.3 32.7 33.6 33.6 32.7 32.4 30.7 34.6
#> 15 2005 35.5 34.5 35.0 34.7 33.3 33.0 34.0 31.7 33.3
#> 16 2006 35.5 35.2 36.2 36.3 33.5 34.0 35.5 33.0 34.8
#> 17 2007 35.9 34.2 34.8 34.7 33.6 33.2 33.2 31.9 35.5
#> 18 2008 34.6 33.5 34.0 33.7 34.5 34.2 33.6 31.4 35.7
#> 19 2009 35.9 33.8 34.8 35.2 34.9 34.9 34.4 31.5 35.4
#> 20 2010 37.1 34.4 34.9 34.0 35.3 34.6 33.5 31.5 35.1
#> 21 2011 35.9 33.1 34.2 34.5 34.8 33.7 33.5 31.8 36.4
#> 22 2012 36.4 33.1 34.8 35.6 35.3 34.7 34.4 33.3 37.0
#> 23 2013 34.5 31.4 32.5 34.1 34.2 33.2 33.1 32.8 35.5
#> 24 2014 35.1 33.6 34.6 35.7 36.0 35.2 35.1 34.4 37.7
#> 25 2015 36.0 34.0 35.0 35.4 35.6 35.1 34.9 33.6 36.6
#> 26 2016 36.1 33.2 34.5 34.6 35.1 34.1 34.0 33.0 36.7
#> 27 2017 33.9 33.0 33.3 33.9 35.2 34.5 33.8 32.5 36.5
#> 28 2018 35.5 32.7 33.7 34.2 34.1 33.7 33.6 31.8 35.1
#> 29 2019 36.6 34.5 35.5 35.8 36.5 36.0 35.4 33.4 38.4
#> 30 2020 36.4 36.1 36.3 37.0 38.9 37.9 37.2 35.9 39.9
#> 31 2021 34.1 34.2 34.9 35.8 37.0 36.7 36.3 35.1 38.9
#> 32 2022 34.2 32.7 33.5 34.2 34.6 34.7 34.8 33.1 34.8
#> 33 2023 35.5 35.2 36.3 37.6 37.6 37.7 37.7 36.3 38.5
#> 34 2024 35.6 34.1 34.6 35.2 37.0 35.9 35.3 34.4 38.1
#> Pixel_10
#> 1 34.2
#> 2 34.0
#> 3 35.7
#> 4 35.3
#> 5 35.0
#> 6 35.2
#> 7 36.3
#> 8 35.0
#> 9 33.9
#> 10 34.6
#> 11 33.9
#> 12 35.8
#> 13 35.6
#> 14 33.2
#> 15 32.9
#> 16 34.1
#> 17 34.9
#> 18 35.2
#> 19 34.4
#> 20 34.6
#> 21 35.2
#> 22 36.7
#> 23 34.9
#> 24 37.7
#> 25 36.6
#> 26 36.0
#> 27 35.9
#> 28 34.7
#> 29 36.5
#> 30 38.8
#> 31 38.4
#> 32 34.7
#> 33 38.4
#> 34 37.4Before analysis, ensure data quality by checking for inconsistencies
or outliers. The Add_Discord() function (demonstrated
below) can help identify problematic series.
Add_Discord(TmaxCPC_SP)
#> Local SampleSize l_1 l_2 t_3 t_4 t_5
#> 1 Pixel_1 34 35.49118 0.5728164 -0.0438190447 0.1274556 0.114240201
#> 2 Pixel_2 34 33.47353 0.7125668 0.0054878049 0.1243494 -0.018257883
#> 3 Pixel_3 34 34.43235 0.6229055 0.0007511804 0.1147091 0.047267826
#> 4 Pixel_4 34 35.05588 0.5854724 0.1074364439 0.0673508 0.079369620
#> 5 Pixel_5 34 34.97941 0.7640820 0.1798670244 0.1008154 0.102772019
#> 6 Pixel_6 34 34.54118 0.7668449 0.1738145049 0.1375776 0.028978457
#> 7 Pixel_7 34 34.30294 0.7179144 0.1194134078 0.1703085 0.020835085
#> 8 Pixel_8 34 32.82059 0.7063280 0.1988328076 0.1547777 0.091450086
#> 9 Pixel_9 34 35.96176 0.8596257 0.1867807154 0.1126398 0.011555377
#> 10 Pixel_10 34 35.46176 0.8163102 0.1566491975 0.1566598 -0.008945898
#> discord
#> 1 1.7993460
#> 2 1.6713427
#> 3 1.2285874
#> 4 2.3643506
#> 5 1.3084772
#> 6 0.7747331
#> 7 1.5490414
#> 8 1.9429602
#> 9 1.9242423
#> 10 1.2960442We develped the Add_Heterogeneity() function to verify
if a group of extreme maximum or minimum air temperature series can be
deemed as “acceptably homogeneous”. This function calculates the
additional heterogeneity measure (Add_H) as proposed by (Martins et al. 2022). To calculate Add_H we
first need to subtract from each data its sample mean. This can be
accomplished by applying the Dataset_add() function.
add.data <- Dataset_add(TmaxCPC_SP)
add.data$add_data
#> Pixel_1 Pixel_2 Pixel_3 Pixel_4 Pixel_5 Pixel_6
#> [1,] 0.808823529 0.42647059 0.46764706 0.04411765 -1.27941176 -0.64117647
#> [2,] -1.291176471 -1.07352941 -1.43235294 -1.15588235 -0.87941176 -0.84117647
#> [3,] -1.091176471 -0.37352941 -0.83235294 -1.35588235 0.52058824 0.35882353
#> [4,] -0.891176471 -0.67352941 -0.63235294 0.24411765 0.62058824 -0.44117647
#> [5,] -0.091176471 -0.77352941 -0.23235294 0.44411765 -0.17941176 -0.84117647
#> [6,] 0.008823529 -0.67352941 -0.63235294 -0.75588235 -1.77941176 -0.94117647
#> [7,] 2.608823529 1.92647059 2.06764706 1.34411765 0.12058824 0.85882353
#> [8,] 0.408823529 -0.47352941 0.26764706 0.44411765 -1.57941176 -0.24117647
#> [9,] 1.008823529 -1.67352941 -1.53235294 -1.25588235 -1.07941176 -1.64117647
#> [10,] -1.491176471 -2.47352941 -1.83235294 -0.25588235 -1.37941176 -1.34117647
#> [11,] 0.308823529 -1.57352941 -0.63235294 0.04411765 -1.37941176 -2.14117647
#> [12,] 0.408823529 0.62647059 0.56764706 1.14411765 0.72058824 1.45882353
#> [13,] 0.808823529 1.92647059 1.36764706 1.44411765 1.52058824 2.05882353
#> [14,] -1.991176471 -2.17352941 -1.73235294 -1.45588235 -1.37941176 -1.84117647
#> [15,] 0.008823529 1.02647059 0.56764706 -0.35588235 -1.67941176 -1.54117647
#> [16,] 0.008823529 1.72647059 1.76764706 1.24411765 -1.47941176 -0.54117647
#> [17,] 0.408823529 0.72647059 0.36764706 -0.35588235 -1.37941176 -1.34117647
#> [18,] -0.891176471 0.02647059 -0.43235294 -1.35588235 -0.47941176 -0.34117647
#> [19,] 0.408823529 0.32647059 0.36764706 0.14411765 -0.07941176 0.35882353
#> [20,] 1.608823529 0.92647059 0.46764706 -1.05588235 0.32058824 0.05882353
#> [21,] 0.408823529 -0.37352941 -0.23235294 -0.55588235 -0.17941176 -0.84117647
#> [22,] 0.908823529 -0.37352941 0.36764706 0.54411765 0.32058824 0.15882353
#> [23,] -0.991176471 -2.07352941 -1.93235294 -0.95588235 -0.77941176 -1.34117647
#> [24,] -0.391176471 0.12647059 0.16764706 0.64411765 1.02058824 0.65882353
#> [25,] 0.508823529 0.52647059 0.56764706 0.34411765 0.62058824 0.55882353
#> [26,] 0.608823529 -0.27352941 0.06764706 -0.45588235 0.12058824 -0.44117647
#> [27,] -1.591176471 -0.47352941 -1.13235294 -1.15588235 0.22058824 -0.04117647
#> [28,] 0.008823529 -0.77352941 -0.73235294 -0.85588235 -0.87941176 -0.84117647
#> [29,] 1.108823529 1.02647059 1.06764706 0.74411765 1.52058824 1.45882353
#> [30,] 0.908823529 2.62647059 1.86764706 1.94411765 3.92058824 3.35882353
#> [31,] -1.391176471 0.72647059 0.46764706 0.74411765 2.02058824 2.15882353
#> [32,] -1.291176471 -0.77352941 -0.93235294 -0.85588235 -0.37941176 0.15882353
#> [33,] 0.008823529 1.72647059 1.86764706 2.54411765 2.62058824 3.15882353
#> [34,] 0.108823529 0.62647059 0.16764706 0.14411765 2.02058824 1.35882353
#> Pixel_7 Pixel_8 Pixel_9 Pixel_10
#> [1,] -0.20294118 0.07941176 -1.16176471 -1.2617647
#> [2,] -1.10294118 -1.02058824 -1.36176471 -1.4617647
#> [3,] -0.40294118 -1.02058824 0.53823529 0.2382353
#> [4,] -0.30294118 -0.02058824 -0.36176471 -0.1617647
#> [5,] -0.40294118 -0.12058824 -0.96176471 -0.4617647
#> [6,] -0.70294118 -1.02058824 -1.76176471 -0.2617647
#> [7,] 0.89705882 0.77941176 0.63823529 0.8382353
#> [8,] 0.29705882 -0.02058824 -1.66176471 -0.4617647
#> [9,] -1.50294118 -0.22058824 -1.46176471 -1.5617647
#> [10,] -1.60294118 -1.32058824 -0.96176471 -0.8617647
#> [11,] -2.50294118 -1.02058824 -1.56176471 -1.5617647
#> [12,] 0.89705882 0.17941176 0.83823529 0.3382353
#> [13,] 1.29705882 0.87941176 -0.06176471 0.1382353
#> [14,] -1.90294118 -2.12058824 -1.36176471 -2.2617647
#> [15,] -0.30294118 -1.12058824 -2.66176471 -2.5617647
#> [16,] 1.19705882 0.17941176 -1.16176471 -1.3617647
#> [17,] -1.10294118 -0.92058824 -0.46176471 -0.5617647
#> [18,] -0.70294118 -1.42058824 -0.26176471 -0.2617647
#> [19,] 0.09705882 -1.32058824 -0.56176471 -1.0617647
#> [20,] -0.80294118 -1.32058824 -0.86176471 -0.8617647
#> [21,] -0.80294118 -1.02058824 0.43823529 -0.2617647
#> [22,] 0.09705882 0.47941176 1.03823529 1.2382353
#> [23,] -1.20294118 -0.02058824 -0.46176471 -0.5617647
#> [24,] 0.79705882 1.57941176 1.73823529 2.2382353
#> [25,] 0.59705882 0.77941176 0.63823529 1.1382353
#> [26,] -0.30294118 0.17941176 0.73823529 0.5382353
#> [27,] -0.50294118 -0.32058824 0.53823529 0.4382353
#> [28,] -0.70294118 -1.02058824 -0.86176471 -0.7617647
#> [29,] 1.09705882 0.57941176 2.43823529 1.0382353
#> [30,] 2.89705882 3.07941176 3.93823529 3.3382353
#> [31,] 1.99705882 2.27941176 2.93823529 2.9382353
#> [32,] 0.49705882 0.27941176 -1.16176471 -0.7617647
#> [33,] 3.39705882 3.47941176 2.53823529 2.9382353
#> [34,] 0.99705882 1.57941176 2.13823529 1.9382353
#> attr(,"scaled:center")
#> Pixel_1 Pixel_2 Pixel_3 Pixel_4 Pixel_5 Pixel_6 Pixel_7 Pixel_8
#> 35.49118 33.47353 34.43235 35.05588 34.97941 34.54118 34.30294 32.82059
#> Pixel_9 Pixel_10
#> 35.96176 35.46176
add.data$reg_mean
#> Pixel_1 Pixel_2 Pixel_3 Pixel_4 Pixel_5 Pixel_6 Pixel_7 Pixel_8
#> 35.49118 33.47353 34.43235 35.05588 34.97941 34.54118 34.30294 32.82059
#> Pixel_9 Pixel_10
#> 35.96176 35.46176Then, the Add_Heterogeneity() function can be
applied as follows:
set.seed(123)
rho <- 0.49 # The average spatial correlation among the series
Ns <- 500 # Number of Simulation required for calculating
Add_H <- Add_Heterogeneity(dataset.add = add.data$add_data, rho = rho, Ns = Ns)
Add_H
#> [1] 0.8884961Add_H values equal to or lower than 2 allows us to accept
that the group of series can be regarded as acceptably
homogeneous. Therefore, the Add_H value obtained in this
example (~0.90) allowed us to accept such a assumption. In case we had
obtained Add_H values larger than 2, we probably could verified which
Tmax series were preventing the group to be deemed as acceptably
homogeneous. This sort of verification can be performed using the
Add_Discord() function, which calculates the discordance
measure under the additional approach (Add_d).
Add_Discord(TmaxCPC_SP)
#> Local SampleSize l_1 l_2 t_3 t_4 t_5
#> 1 Pixel_1 34 35.49118 0.5728164 -0.0438190447 0.1274556 0.114240201
#> 2 Pixel_2 34 33.47353 0.7125668 0.0054878049 0.1243494 -0.018257883
#> 3 Pixel_3 34 34.43235 0.6229055 0.0007511804 0.1147091 0.047267826
#> 4 Pixel_4 34 35.05588 0.5854724 0.1074364439 0.0673508 0.079369620
#> 5 Pixel_5 34 34.97941 0.7640820 0.1798670244 0.1008154 0.102772019
#> 6 Pixel_6 34 34.54118 0.7668449 0.1738145049 0.1375776 0.028978457
#> 7 Pixel_7 34 34.30294 0.7179144 0.1194134078 0.1703085 0.020835085
#> 8 Pixel_8 34 32.82059 0.7063280 0.1988328076 0.1547777 0.091450086
#> 9 Pixel_9 34 35.96176 0.8596257 0.1867807154 0.1126398 0.011555377
#> 10 Pixel_10 34 35.46176 0.8163102 0.1566491975 0.1566598 -0.008945898
#> discord
#> 1 1.7993460
#> 2 1.6713427
#> 3 1.2285874
#> 4 2.3643506
#> 5 1.3084772
#> 6 0.7747331
#> 7 1.5490414
#> 8 1.9429602
#> 9 1.9242423
#> 10 1.2960442The column discord presents the Add_d values for each series. In case of Add_H larger than 2, the series with the largest Add_d values may be removed from the group and the Add_H measure may be re-calculated. It is also worth mentioning that this discordance measure may also be used at the onset of the analysis - before pre-defining the groups - to detect series with gross errors.
In its current version, the NS-Add-RFA method offers four nonstationary models to describe the whether and how the probabilistic structure of the air temperature series, which forms the homogeneous group, are changing across time. These models are based on the Generalized Extreme Value distribution and are described as follows:
The Best_model() function selects the best model among
these four candidates using the second-order Akaike Information
Criterion.
best.parms <- Best_model(add.data = add.data$add_data)
# The best model is:
as.numeric(best.parms$best) #Model 2
#> [1] 2
# The at-site parameters are:
best.parms$atsite.models
#> mu0 mu1 sigma0 sigma1 shape size
#> 1 -0.2979794 -0.004293843 0.9909926 0 -0.24466887 34
#> 2 -1.0211512 0.035332324 1.1712825 0 -0.29955609 34
#> 3 -0.7860482 0.023529005 1.0231408 0 -0.26675469 34
#> 4 -0.7063436 0.015882676 0.8530913 0 -0.09683919 34
#> 5 -1.6376049 0.063007101 0.8938221 0 0.01460033 34
#> 6 -1.5645120 0.059858600 0.9976748 0 -0.07425201 34
#> 7 -1.5118296 0.062148877 1.0467214 0 -0.21574818 34
#> 8 -1.4364012 0.056479481 0.9963016 0 -0.15399804 34
#> 9 -2.0767396 0.094513994 1.1838763 0 -0.27486284 34
#> 10 -1.9888709 0.094023360 1.2349225 0 -0.40991243 34Having defined the best GEV model, the Reg_par()
function can be applied to specify the parameters of the regional
distribution, which is valid for all 13 series.
regional.parms <- Reg_par(best_model = best.parms$atsite.models)
regional.parms
#> weighted_mu0 weighted_mu1 weighted_sigma0 weighted_sigma1 weighted_shape
#> 1 -1.302748 0.05004816 1.039183 0 -0.2021992The analysis of the parameters of the regional distribution indicates that the frequency distribution of the Tmax data in the region is experiencing changes in the location parameter. In other words, the distribution is experiencing a change in its central tendency. More specifically, the positive value of weighted_mu1 indicates that the average the Tmax values increased from 1991 to 2024.
Additionally, we may also calculate the confidence intervals for the
parameters of this regional distribution. This can be accomplished by
applying the Reg_parCI() as follows:
set.seed(123)
Reg_parCI(
add_data = add.data$add_data,
model = best.parms$best,
reg_par = regional.parms,
n.boots = 500
)
#> This calculation may take some time.
#> weighted_mu0 weighted_mu1 weighted_sigma0 weighted_sigma1
#> Lower 95% CI -1.911827 0.02080265 0.856816 0
#> Upper 95% CI -0.687756 0.07681375 1.188569 0
#> weighted_shape
#> Lower 95% CI -0.41185434
#> Upper 95% CI 0.02609041Because the Regional Frequency Analysis uses all series within a homogeneous region to fit the regional distribution, it is expect to reduce parameter estimation uncertainties in respect to the at-site approach. To verify such assumption, we will calculate the confidence interval, through the at-site approach, for the Tmax series of Pixel_1 (see Table 2).
set.seed(123)
temperatures <- TmaxCPC_SP$Pixel_1
model <- 2
site_par <- Fit_model(temperatures, model)
if (all(is.finite(as.numeric(site_par[1, 1:5])))) {
Site_parCI(
atsite_temp = temperatures,
model = model,
site_par = site_par[1, 1:5],
n.boots = 500
)
}
#> This calculation may take some time.
#> mu0 mu1 sigma0 sigma1 shape
#> Lower 95% CI 34.47799 -0.04575717 0.7751451 0 -1.03139408
#> Upper 95% CI 36.02449 0.03469571 1.2672091 0 -0.04407012The differences between the upper and lower 95% confidence intervals (CI) of the regional estimates are lower than those of the at-site approach for all GEV parameter. Additionally, both upper and lower limits for weighted_mu1 - regional approach (~ 0.079 and ~0.021, respectively) - indicate changes toward warmer conditions. However, for the at-site approach, while the lower limit for mu1 (~ -0.046), indicates a change toward cooler conditions, the upper limit (~0.035) indicates a change towards warmer conditions.
The narrower CI of the parameters of the regional distribution are
consistent with the assumption that the NS-Add-RFA method reduces the
parameter estimation uncertainties in respect to the at-site approach.
Therefore, we may use its statistics to calculate the quantile estimates
associated with distinct cumulative probabilities. Additionally, since
the best model (model 2) is a non-stationary model, we can also
calculate how these quantile estimates changed from the first year
(1991) to the last year (2024) of the series. This assessment can be
carried out using Add_RegQuant() function.
prob <- c(0.8, 0.85, 0.90, 0.92, 0.93, 0.94, 0.95, 0.97, 0.99)
add.data <- Dataset_add(TmaxCPC_SP)
best.parms <- Best_model(add.data = add.data$add_data)
regional_pars <- Reg_par(best_model = best.parms$atsite.models)
Quantiles_1991 <- Add_RegQuant(
prob = prob,
regional_pars = regional_pars,
site_temp = TmaxCPC_SP$Pixel_1,
n.year = 1
)
Quantiles_2024 <- Add_RegQuant(
prob = prob,
regional_pars = regional_pars,
site_temp = TmaxCPC_SP$Pixel_1,
n.year = 34
)
Quantiles_1991
#> Q80 Q85 Q90 Q92 Q93 Q94 Q95 Q97
#> 35.58301 35.81863 36.11727 36.26792 36.35403 36.44996 36.55892 36.84087
#> Q99
#> 37.35040
Quantiles_2024
#> Q80 Q85 Q90 Q92 Q93 Q94 Q95 Q97
#> 37.23460 37.47022 37.76886 37.91951 38.00562 38.10155 38.21051 38.49246
#> Q99
#> 39.00199The analysis of the quantile estimates for 1991 and 2024 highlights the changes towards warmer conditions that this region in the State of Sao Paulo has experienced over the last 34 years. For example, the quantil estimates associated with a cumulative probability equal to 0.8 raised from ~35.58°C in 1991 to 37.23°C in 2024.
This package also allows an equivalent analysis to that of the
Add_RegQuant()that indicates whether and how the cumulative
probabilities of a given quantile changed over time. This assessment can
be carried out using Add_RegProb() function.
quantiles <- c(
35.58301,
35.81863,
36.11727,
36.26792,
36.35403,
36.44996,
36.55892,
36.84087,
37.35040
)
add.data <- Dataset_add(TmaxCPC_SP)
best.parms <- Best_model(add.data = add.data$add_data)
regional_pars <- Reg_par(best_model = best.parms$atsite.models)
Probs_1991 <- Add_RegProb(
quantiles = quantiles,
regional_pars = regional_pars,
site_temp = TmaxCPC_SP$Pixel_1,
n.year = 1
)
Probs_2024 <- Add_RegProb(
quantiles = quantiles,
regional_pars = regional_pars,
site_temp = TmaxCPC_SP$Pixel_1,
n.year = 34
)
Probs_1991
#> [,1]
#> [1,] 0.8000004
#> [2,] 0.8499996
#> [3,] 0.9000003
#> [4,] 0.9199994
#> [5,] 0.9299996
#> [6,] 0.9399998
#> [7,] 0.9499996
#> [8,] 0.9700000
#> [9,] 0.9899999
Probs_2024
#> [,1]
#> [1,] 0.2638411
#> [2,] 0.3427845
#> [3,] 0.4494994
#> [4,] 0.5038591
#> [5,] 0.5345656
#> [6,] 0.5682073
#> [7,] 0.6054379
#> [8,] 0.6951763
#> [9,] 0.8257736