Package 'TSMN'

Title: Truncated Scale Mixtures of Normal Distributions
Description: Return the first four moments of the SMN distributions (Normal, Student-t, Pearson VII, Slash or Contaminated Normal).
Authors: Eraldo B. dos Anjos Filho <[email protected]> and Aldo William Medina Garay <[email protected]>
Maintainer: Eraldo B. dos Anjos Filho <[email protected]>
License: GPL (>= 3.0)
Version: 1.0.0
Built: 2024-10-18 06:26:15 UTC
Source: CRAN

Help Index


Truncated Scale Mixtures of Normal Distributions

Description

This package includes two functions related to the truncated scale mixtures of normal distribution. One of then is to generate random samples from TSMN distribution, and other is to compute the first four theoretical moments.

Author(s)

Eraldo B. dos Anjos Filho [email protected] and Aldo M. Garay [email protected]

Maintainer: Eraldo B. dos Anjos Filho [email protected]

References

Aldo M. Garay, Victor H. Lachos, Heleno Bolfarine, Celso R. Cabral. "Linear censored regression models with scale mixtures of normal distributions". Statistical Papers, 2017, vol. 58, issue 1, pages 247-278

See Also

TSMNmoments,TSMNgenerator

Examples

## A test sample to compare theoretical and empirical moments, considering the following parameters:

mu = 2
sigma2 = 4
nu = 5
lower = -3
upper = 10
dist = "T"
n = 10000

## Theoretical moments with TSMNmoments
theor<-TSMNmoments(mu=mu, sigma2=sigma2, nu=nu, lower=lower, upper=upper, dist=dist)

## Generate the sample with TSMNgenerator to compute the empirical moments
empir<-TSMNgenerator(n=n, mu=mu, sigma2=sigma2, nu=nu, lower=lower, upper=upper, dist=dist)

## Compare the results
data.frame("1st" = c("Theoretic" = theor$EY1, "Empirical" = mean(empir)),
           "2nd" = c("Theoretic" = theor$EY2, "Empirical" = mean(empir^2)),
           "3rd" = c("Theoretic" = theor$EY3, "Empirical" = mean(empir^3)),
           "4th" = c("Theoretic" = theor$EY4, "Empirical" = mean(empir^4)))

Generator of Truncated Scale Mixtures of Normal Distributions

Description

This function generate random TSMN samples from Normal, Student-t, Slash and Contaminated Normal, using the the inverse method.

Usage

TSMNgenerator(n, mu, sigma2, nu = NULL, lower = -Inf, upper = Inf, dist = "Normal")

Arguments

n

Number of observations.

mu

Location parameter.

sigma2

Scale parameter.

nu

Parameter of the scale variable of the SMN family. Must be NULL in case of Normal distribution. Must be a bidimensional vector in case of contaminated normal distribution (CNormal).

lower

Lower bounds.

upper

Upper bounds.

dist

Distribution to be used: "Normal" for Normal model, "T" for Student-t model, "Slash" for slash model and "CNormal" for contaminated Normal model.

Details

For the contaminated Normal distribution, each component of the bidimensional vector "nu" must lie on (0,1).

Value

Returns the sample generated according to the parameters.

Author(s)

Eraldo B. dos Anjos Filho [email protected] and Aldo M. Garay [email protected]

Maintainer: Eraldo B. dos Anjos Filho [email protected]

References

Aldo M. Garay, Victor H. Lachos, Heleno Bolfarine, Celso R. Cabral. "Linear censored regression models with scale mixtures of normal distributions". Statistical Papers, 2017, vol. 58, issue 1, pages 247-278

See Also

TSMNmoments

Examples

## A test sample to compare theoretical and empirical moments, considering the following parameters:

mu = 2
sigma2 = 4
nu = 5
lower = -3
upper = 10
dist = "T"
n = 10000

## Theoretical moments with TSMNmoments
theor<-TSMNmoments(mu=mu, sigma2=sigma2, nu=nu, lower=lower, upper=upper, dist=dist)

## Generate the sample with TSMNgenerator to compute the empirical moments
empir<-TSMNgenerator(n=n, mu=mu, sigma2=sigma2, nu=nu, lower=lower, upper=upper, dist=dist)

## Compare the results
data.frame("1st" = c("Theoretic" = theor$EY1, "Empirical" = mean(empir)),
           "2nd" = c("Theoretic" = theor$EY2, "Empirical" = mean(empir^2)),
           "3rd" = c("Theoretic" = theor$EY3, "Empirical" = mean(empir^3)),
           "4th" = c("Theoretic" = theor$EY4, "Empirical" = mean(empir^4)))

Moments of Truncated Scale Mixtures of Normal Distributions

Description

Return the first four moments of TSMN distributions, as example Normal, Student-t, Pearson VII, Slash or Contaminated Normal.

Usage

TSMNmoments(mu, sigma2, nu=NULL, delta=NULL, lower=-Inf, upper=Inf, dist="Normal")

Arguments

mu

Location parameter.

sigma2

Scale parameter.

nu

Parameter of the scale variable of the SMN family. Must be NULL in case of Normal distribution. Must be a bidimensional vector in case of contaminated normal distribution (CNormal).

delta

Second parameter of Pearson VII. Must not be provided in case of Normal, Student-t or Slash distribution.

lower

Lower bounds.

upper

Upper bounds.

dist

Distribution to be used: "Normal" for Normal model, "T" for Student-t model, "PearsonVII" for Pearson VII model, "Slash" for slash model and "CNormal" for contaminated Normal model.

Details

For the contaminated Normal distribution, each component of the bidimensional vector "nu" must lie on (0,1).

Value

EY1

The first moment

EY2

The second moment

EY3

The third moment

EY4

The fourth moment

Author(s)

Eraldo B. dos Anjos Filho [email protected] and Aldo M. Garay [email protected]

Maintainer: Eraldo B. dos Anjos Filho [email protected]

References

Aldo M. Garay, Victor H. Lachos, Heleno Bolfarine, Celso R. Cabral. "Linear censored regression models with scale mixtures of normal distributions". Statistical Papers, 2017, vol. 58, issue 1, pages 247-278

See Also

TSMNgenerator

Examples

## A test sample to compare theoretical and empirical moments, considering the following parameters:

mu = 2
sigma2 = 4
nu = 5
lower = -3
upper = 10
dist = "T"
n = 10000

## Theoretical moments with TSMNmoments
theor<-TSMNmoments(mu=mu, sigma2=sigma2, nu=nu, lower=lower, upper=upper, dist=dist)

## Generate the sample with TSMNgenerator to compute the empirical moments
empir<-TSMNgenerator(n=n, mu=mu, sigma2=sigma2, nu=nu, lower=lower, upper=upper, dist=dist)

## Compare the results
data.frame("1st" = c("Theoretic" = theor$EY1, "Empirical" = mean(empir)),
           "2nd" = c("Theoretic" = theor$EY2, "Empirical" = mean(empir^2)),
           "3rd" = c("Theoretic" = theor$EY3, "Empirical" = mean(empir^3)),
           "4th" = c("Theoretic" = theor$EY4, "Empirical" = mean(empir^4)))