gmfd_test2: Two-sample hypotesis tests

Description Usage Arguments Value References See Also Examples

View source: R/test.R

Description

Performs a two sample hypotesis tests on two samples of functional data.

Usage

1
gmfd_test2(FD1, FD2, conf.level = 0.95, stat_test, p = NULL)

Arguments

FD1

a functional data object of type funData of the first sample.

FD2

a functional data object of type funData of the second sample.

conf.level

confidence level of the test.

stat_test

the chosen test statistic to be used: "L2" for the classical L2-distance, "L2_trunc" for the truncated L2-distance, "trunc" for the truncated Mahalanobis semi-distance, "mahalanobis" for the generalized Mahalanobis distance

p

a vector of positive numeric value containing the parameters of the regularizing function for the generalized Mahalanobis distance.

Value

The function returns a list with the following components:

statistic the value of the test statistic.

p.value the p-value for the test.

References

Ghiglietti A., Ieva F., Paganoni A. M. (2017). Statistical inference for stochastic processes: Two-sample hypothesis tests, Journal of Statistical Planning and Inference, 180:49-68.

Ghiglietti A., Paganoni A. M. (2017). Exact tests for the means of gaussian stochastic processes. Statics & Probability Letters, 131:102–107.

See Also

funDist

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
# Define parameters
n <- 50
P <- 100
K <- 150

# Grid of the functional dataset
t <- seq( 0, 1, length.out = P )

# Define the means and the parameters to use in the simulation
# with the Karhunen - Loève expansion
m1 <- t^2 * ( 1 - t )

lambda <- rep( 0, K )
theta <- matrix( 0, K, P )
for ( k in 1:K) {
  lambda[k] <- 1 / ( k + 1 )^2
  if ( k%%2 == 0 )
    theta[k, ] <- sqrt( 2 ) * sin( k * pi * t )
  else if ( k%%2 != 0 && k != 1 )
    theta[k, ] <- sqrt( 2 ) * cos( ( k - 1 ) * pi * t )
  else
    theta[k, ] <- rep( 1, P )
}

s <- 0
for (k in 4:K) {
 s <- s + sqrt( lambda[k] )*theta[k,]
}

m2 <- m1 + 0.1*s

# Simulate the functional data
x1 <- simulate_KL( t, n, m1, rho = lambda, theta = theta )
x2 <- simulate_KL( t, n, m2, rho = lambda, theta = theta )

output <- gmfd_test2( x1, x2, 0.95, "L2", 1 )

martinoandrea92/dpdistance documentation built on Nov. 18, 2017, 5:13 p.m.