The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Type: Package
Title: An Empirical Bayes Method for Chi-Squared Data
Version: 0.1.0
Author: Lilun Du [aut, cre], Inchi Hu [aut]
Maintainer: Lilun Du <dulilun@ust.hk>
Description: We provide the main R functions to compute the posterior interval for the noncentrality parameter of the chi-squared distribution. The skewness estimate of the posterior distribution is also available to improve the coverage rate of posterior intervals. Details can be found in Du and Hu (2020) <doi:10.1080/01621459.2020.1777137>.
License: MIT + file LICENSE
Encoding: UTF-8
URL: https://github.com/dulilun/EBCHS
RoxygenNote: 7.1.1
Imports: stats, pracma, splines, fda
Suggests: testthat
NeedsCompilation: no
Packaged: 2021-05-31 12:09:26 UTC; lilundu
Repository: CRAN
Date/Publication: 2021-06-01 07:20:08 UTC

Main function used in the paper (Du and Hu, 2020)

Description

Give a sequence of chi-squared statistic values, the function computes the posterior mean, variance, and skewness of the noncentrality parameter given the data.

Usage

EB_CS(
  x,
  df,
  qq = c(0.2, 0.4, 0.6, 0.8),
  method = c("LS", "PLS", "g_model"),
  mixture = FALSE
)

Arguments

x

a sequence of chi-squared test statistics

df

the degrees of freedom

qq

the quantiles used in spline basis

method

LS: parametric least-squares; PLS: penalized least-squares; g-model: g-modeling

mixture

default is FALSE: there is no point mass at zero.

Value

a list: posterior mean, variance, and skewness estimates

References

Du and Hu (2020), An Empirical Bayes Method for Chi-Squared Data, Journal of American Statistical Association, forthcoming.

Examples

p = 1000
k = 7
# the prior distribution for lambda
alpha = 2
beta =  10
# lambda
lambda = rep(0, p)
pi_0 = 0.8
p_0 = floor(p*pi_0)
p_1 = p-p_0
lambda[(p_0+1):p] = rgamma(p_1, shape = alpha, rate=1/beta)
# Generate a Poisson RV
J = sapply(1:p, function(x){rpois(1, lambda[x]/2)})
X = sapply(1:p, function(x){rchisq(1, k+2*J[x])})
qq_set = seq(0.01, 0.99, 0.01)
out = EB_CS(X, k, qq=qq_set, method='LS', mixture = TRUE)
E = out$E_lambda
V = out$V_lambda
S = out$S_lambda


log-density derivatives–parametric approach

Description

Assuming the log density of the chi-squared statistics admits a parametric form, this function estimates up to the fourth order log density derivatives.

Usage

density_LS(x)

Arguments

x

a sequence of chi-squared test statistics

Value

a list: the first-to-fourth log density derivatives

Examples

p = 1000
k = 7
# the prior distribution for lambda
alpha = 2
beta =  10
# lambda
lambda = rep(0, p)
pi_0 = 0.8
p_0 = floor(p*pi_0)
p_1 = p-p_0
lambda[(p_0+1):p] = stats::rgamma(p_1, shape = alpha, rate=1/beta)
# Generate a Poisson RV
J = sapply(1:p, function(x){rpois(1, lambda[x]/2)})
X = sapply(1:p, function(x){rchisq(1, k+2*J[x])})
out = density_LS(X)


Penalized least-squares method

Description

The semiparametric model is employed to estimate the log density derivatives of the chi-squared statistics.

Usage

density_PLS(x, qq)

Arguments

x

a sequence of chi-squared test statistics

qq

the quantiles used for splines

Value

a list: the first and second density derivatives

Examples

p = 1000
k = 7
# the prior distribution for lambda
alpha = 2
beta =  10
# lambda
lambda = rep(0, p)
pi_0 = 0.5
p_0 = floor(p*pi_0)
p_1 = p-p_0
lambda[(p_0+1):p] = stats::rgamma(p_1, shape = alpha, rate=1/beta)
# Generate a Poisson RV
J = sapply(1:p, function(x){rpois(1, lambda[x]/2)})
X = sapply(1:p, function(x){rchisq(1, k+2*J[x])})
qq = c(0.2, 0.4, 0.6, 0.8)
out = density_PLS(X, qq)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.