# find_swans: Find outlying "black swan" jumps in trends In bayesdfa: Bayesian Dynamic Factor Analysis (DFA) with 'Stan'

## Description

Find outlying "black swan" jumps in trends

## Usage

 `1` ```find_swans(rotated_modelfit, threshold = 0.01, plot = FALSE) ```

## Arguments

 `rotated_modelfit` Output from `rotate_trends()`. `threshold` A probability threshold below which to flag trend events as extreme `plot` Logical: should a plot be made?

## Value

Prints a ggplot2 plot if `plot = TRUE`; returns a data frame indicating the probability that any given point in time represents a "black swan" event invisibly.

## References

Anderson, S.C., Branch, T.A., Cooper, A.B., and Dulvy, N.K. 2017. Black-swan events in animal populations. Proceedings of the National Academy of Sciences 114(12): 3252–3257. https://doi.org/10.1073/pnas.1611525114

## Examples

 ``` 1 2 3 4 5 6 7 8 9 10 11 12``` ```set.seed(1) s <- sim_dfa(num_trends = 1, num_ts = 3, num_years = 30) s\$y_sim[1, 15] <- s\$y_sim[1, 15] - 6 plot(s\$y_sim[1, ], type = "o") abline(v = 15, col = "red") # only 1 chain and 250 iterations used so example runs quickly: m <- fit_dfa(y = s\$y_sim, num_trends = 1, iter = 50, chains = 1, nu_fixed = 2) r <- rotate_trends(m) p <- plot_trends(r) #+ geom_vline(xintercept = 15, colour = "red") print(p) # a 1 in 1000 probability if was from a normal distribution: find_swans(r, plot = TRUE, threshold = 0.001) ```

bayesdfa documentation built on May 29, 2021, 1:06 a.m.