Learn R Programming

PBOX

Version 0.1.8 (BETA)

Overview

The pbox R package is designed for risk assessment and management. It is an advanced statistical library that excels in exploring probability distributions within a given dataset. The tool offers a method to encapsulate and query the probability space effortlessly. Its distinctive feature lies in the ease with which users can navigate and analyze marginal, joint, and conditional probabilities while taking into account the underlying correlation structure inherent in the data. This unique capability empowers users to delve into intricate relationships and dependencies within a dataset, providing a solid foundation for making well-informed decisions in the context of risk management scenarios. With pbox is straightforward to answer questions like:

  • What is the probability of experiencing extreme heat waves in Indonesia with temperatures above 32 degrees?

  • What is the probability of simultaneous extreme heat waves in Vietnam with temperatures above than 31 degrees and the average regional temperature being above than 26 degrees?

  • Given that the average regional temperature is 26 degrees, what is the probability of experiencing extreme heat waves in both Vietnam and Indonesia with temperatures above 33 degrees?

Features

Generate a pbox object from data

data("SEAex")
pbx<-set_pbox(SEAex)
pbx

Access the data and the copula object

pbx@data
pbc@copula

Access the results of the automated selection for both the marginal distribution and the copula

pbx@fit

Explore the probabilistic space


#Get marginal distribution
qpbox(pbx,mj = "Malaysia:33")

#Get Joint distribution
qpbox(pbx,mj = "Malaysia:33 & Vietnam:34")

# Conditional distribution distribution with Pr(X <= x, Y <= y) / Pr(Y = y)
qpbox(pbx,mj = "Malaysia:33 & median:c(Vietnam,Thailand)", co="mean:c(avgRegion)", fixed=TRUE)

# Estimate confidence intervals
qpbox(pbx,mj = "Vietnam:31 & avgRegion:26", co="Malaysia:32",CI=T)

Map the probabilistic space with a gird of quantile values


grid_pbox(pbx, mj = c("Vietnam", "Malaysia"))

Query the probabilistic space under different scenarios with different combinations of parameters for a single query


scenario_pbox(pbx,mj = "Vietnam:31 & avgRegion:26", param_list = list(Vietnam="mu"))

Installation

The pbox package is currently under active development with the aim of being available on CRAN soon. The development version can be installed from GitHub, and once it is available on CRAN, you can install it directly from CRAN. Below are the installation instructions for both the development version and the CRAN version:

Development Version

To install the development version from GitHub, you first need to install the remotes package if you haven't already. Then, use remotes::install_github to install the pbox package from GitHub:

install.packages("remotes")
remotes::install_github("athammad/pbox")

CRAN Version

Once the pbox package is available on CRAN, you can install it directly from CRAN with the following command:

install.packages("pbox")

Getting Help or Reporting an Issue

To report bugs/issues/feature requests, please file an issue.

Author

pbox is written by Ahmed T. Hammad and is under active development. Please feel free to contribute by submitting any issues or requests—or by solving any current issues!

Copy Link

Version

Install

install.packages('pbox')

Monthly Downloads

195

Version

0.1.8

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Ahmed T. Hammad

Last Published

May 27th, 2024

Functions in pbox (0.1.8)

modify_pbox

Modify Parameters Box
pbox-class

Class "pbox": Main S4 class of the library pbox.
SEAex

Maximum yearly temperature data from 1901 to 2022 (CRU TS v4)
coefAll2,ANY-method

Method for extracting coefficients from GAM-like models
deltaCI

Compute Confidence Interval using Delta Method
perProb

Compute Probability Using a Perturbed Copula
copula_families

Define Copula Families and Parameters
perturbate_params,ANY-method

Perturb Parameters Method
stats_calc

Calculate Basic Statistics
perturbate_params

Perturb Parameters
q_parser,ANY-method

Method for Parsing Queries
fun_stats,numeric-method

Summary statistics method for numeric vectors
fun_stats

Summary Statistics
q_parser

Parse Query
probCI

Probability Confidence Interval
param_dev

Compute Parameter Deviations
match_maker,ANY-method

Method for match_maker
gen_scenario

Generate Scenarios
set_pbox

Create a Probability Box from Data
match_maker

Generate Query Vector
final_pbox

Build a Multivariate Distribution from Copula
scenario_pbox

Scenario Analysis
qpbox

Query the probabilistic space of a pbox object.
show

Methods for 'show()' in Package 'pbox'
probCI,numeric-method

Method to calculate confidence intervals for a vector of probabilities
fit_copula_pbox

Fit Copula Models to Data
fit_copula

Copula Fit
fit_dist_pbox

Fit Marginal Distributions
coefAll2

Extract Coefficients
make_pbox

Create a Probability Box (Pbox) Object
grid_pbox

Iterate Over a Grid of All Possible Quantiles and Calculate Probabilities