Learn R Programming

FDX (version 2.0.0)

weighted.LR: Weighted Lehmann-Romano Procedure

Description

Apply the weighted [wLR] procedure, with or without computing the critical values, to a set of p-values. Both arithmetic and geometric weighting are available.

Usage

weighted.LR(
  test.results,
  weights = NULL,
  alpha = 0.05,
  zeta = 0.5,
  weighting.method = c("AM", "GM"),
  critical.values = FALSE,
  select.threshold = 1
)

wLR.AM( test.results, weights, alpha = 0.05, zeta = 0.5, critical.values = FALSE, select.threshold = 1 )

wLR.GM( test.results, weights, alpha = 0.05, zeta = 0.5, critical.values = FALSE, select.threshold = 1 )

Value

A FDX S3 class object whose elements are:

Rejected

rejected raw \(p\)-values.

Indices

indices of rejected \(p\)-values.

Num.rejected

number of rejections.

Weighted

weighted \(p\)-values.

Adjusted

adjusted \(p\)-values.

Critical.values

critical values (only exists if computations where performed with critical.values = TRUE).

Select

list with data related to \(p\)-value selection; only exists if threshold < 1.

Select$Threshold

\(p\)-value selection threshold.

Select$Effective.Thresholds

results of each \(p\)-value CDF evaluated at the selection threshold.

Select$Pvalues

selected \(p\)-values that are \(\leq\) selection threshold.

Select$Indices

indices of \(p\)-values \(\leq\) selection threshold.

Select$Scaled

scaled selected \(p\)-values.

Select$Number

number of selected \(p\)-values \(\leq\) threshold.

Data

list with input data.

Data$Method

character string describing the used algorithm, e.g. 'Discrete Lehmann-Romano procedure (step-up)'.

Data$Raw.pvalues

all observed raw \(p\)-values.

Data$Weights

the weights for the raw \(p\)-values.

Data$FDP.threshold

FDP threshold alpha.

Data$Exceedance.probability

probability zeta of FDP exceeding alpha; thus, FDP is being controlled at level alpha with confidence 1 - zeta.

Data$Weighting

character string describing the weighting method.

Data$Data.name

the respective variable name(s) of the input data.

Arguments

test.results

either a numeric vector with p-values or an R6 object of class DiscreteTestResults from package DiscreteTests for which a discrete FDR procedure is to be performed.

weights

numeric vector that contains the weights for the p-values.

alpha

single real number strictly between 0 and 1 specifying the target FDP.

zeta

single real number strictly between 0 and 1 specifying the target probability of not exceeding the desired FDP. If zeta = NULL (the default), then zeta is chosen equal to alpha.

weighting.method

single character string specifying whether to conduct arithmetic (direction = "AM", the default) or geometric weighting (direction = "GM") of p-values.

critical.values

single boolean indicating whether critical constants are to be computed.

select.threshold

single real number strictly between 0 and 1 indicating the largest raw p-value to be considered, i.e. only p-values below this threshold are considered and the procedures are adjusted in order to take this selection effect into account; if threshold = 1 (the default), all raw p-values are selected.

Details

wLR.AM and wLR.GM are wrapper functions for weighted.LR. The first one simply passes all its arguments to weighted.LR with weighting.method = "AM" and wLR.GM does the same with weighting.method = "GM".

References

Döhler, S. & Roquain, E. (2020). Controlling False Discovery Exceedance for Heterogeneous Tests. Electronic Journal of Statistics, 14(2), pp. 4244-4272. tools:::Rd_expr_doi("10.1214/20-EJS1771")

See Also

kernel, FDX, continuous.LR(), continuous.GR(), discrete.LR(), discrete.GR(), discrete.PB(), weighted.GR(), weighted.PB()

Examples

Run this code
# Construction of the p-values and their supports for weighted methods
raw.pvalues.weighted <- c(0.7389727, 0.1882310, 0.1302457, 0.9513677,
                          0.7592122, 0.0100559, 0.0000027, 0.1651034)
weights <- c(0.7947122, 1.2633867, 2.8097858, 2.2112801,
             2.3878654, 1.2389620, 2.3878654, 0.7947122)

# arithmetic-weighted Lehmann-Romano procedure without critical values
wLR.AM.fast <- wLR.AM(raw.pvalues.weighted, weights)
summary(wLR.AM.fast)

# arithmetic-weighted Lehmann-Romano procedure with critical values
wLR.AM.crit <- wLR.AM(raw.pvalues.weighted, weights, critical.values = TRUE)
summary(wLR.AM.crit)

# geometric-weighted Lehmann-Romano procedure without critical values
wLR.GM.fast <- wLR.GM(raw.pvalues.weighted, weights)
summary(wLR.GM.fast)

# geometric-weighted Lehmann-Romano procedure with critical values
wLR.GM.crit <- wLR.GM(raw.pvalues.weighted, weights, critical.values = TRUE)
summary(wLR.GM.crit)

Run the code above in your browser using DataLab