Description Usage Arguments Details Value References See Also Examples
View source: R/stress_moment.R
Provides weights on simulated scenarios from a baseline stochastic model, such that stressed model components (random variables) fulfil the mean and standard deviation constraints. Scenario weights are selected by constrained minimisation of the relative entropy to the baseline model.
1 2 3 4 5 6 7 8 9 10 |
x |
A vector, matrix or data frame
containing realisations of random variables. Columns of |
k |
Numeric vector, the columns of |
new_means |
Numeric vector, same length as |
new_sd |
Numeric vector, same length as |
normalise |
Logical. If true, values of |
names |
Character vector, the names of stressed models. |
log |
Boolean, the option to print weights' statistics. |
... |
Additional arguments to be passed to
|
The function stress_mean_sd
is a wrapper for the
function stress_moment
. See stress_moment
for details on the additional arguments to ...
and
the underlying algorithm.
For stressing means only, see stress_mean
,
for stressing higher moments and functions of moments,
see stress_moment
.
A SWIM
object containing:
x
, a data.frame containing the data;
new_weights
, a list, each component corresponds to
a different stress and is a vector of scenario weights;
type = "mean"
;
specs
, a list, each component corresponds to
a different stress and contains k
, new_means
and
new_sd
.
See SWIM
for details.
Pesenti2019reverseSWIM
Pesenti2020SSRNSWIM
Csiszar1975SWIM
Other stress functions:
stress_HARA_RM_w()
,
stress_RM_mean_sd_w()
,
stress_RM_w()
,
stress_VaR_ES()
,
stress_VaR()
,
stress_mean_sd_w()
,
stress_mean_w()
,
stress_mean()
,
stress_moment()
,
stress_prob()
,
stress_user()
,
stress_wass()
,
stress()
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | set.seed(0)
x <- data.frame(cbind(
"normal" = rnorm(1000),
"gamma" = rgamma(1000, shape = 2),
"beta" = rbeta(1000, shape1 = 2, shape2 = 2)))
## stressing mean and sd of column 1
res1 <- stress(type = "mean sd", x = x, k = 1, new_means = 0.1,
new_sd = 1.1, method = "Newton",
control = list(maxit = 1000, ftol = 1E-15))
summary(res1)
## calling stress_mean_sd directly
res2 <- stress_mean_sd(x = x, k = 1, new_means = 0.1,
new_sd = 1.1, method = "Newton",
control = list(maxit = 1000, ftol = 1E-15))
## See also examples in stress_moment.
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.