# ITP2pafourier: Two populations Interval Testing Procedure with Fourier basis... In fdatest: Interval Testing Procedure for Functional Data

## Description

The function implements the Interval Testing Procedure for testing the difference between two functional populations evaluated on a uniform grid. Data are represented by means of the Fourier basis expansion with the phase-amplitude decomposition and the significance of the amplitude and phase of each frequency is tested with an interval-wise control of the Family Wise Error Rate.

## Usage

 ```1 2``` ```ITP2pafourier(data1, data2, maxfrequency=floor(dim(data1)/2), B = 10000, paired = FALSE) ```

## Arguments

 `data1` Pointwise evaluations of the first population's functional data set on a uniform grid. `data1` is a matrix of dimensions `c(n1,J)`, with `J` evaluations on columns and `n1` units on rows. `data2` Pointwise evaluations of the second population's functional data set on a uniform grid. `data2` is a matrix of dimensions `c(n2,J)`, with `J` evaluations on columns and `n2` units on rows. `maxfrequency` The maximum frequency to be used in the Fourier basis expansion of data. The default is `floor(dim(data1)/2)`, leading to an interpolating expansion. `B` The number of iterations of the MC algorithm to evaluate the p-values of the permutation tests. The defualt is `B=10000`. `paired` A logical indicating whether the test is paired. The default is `FALSE`.

## Value

`ITP2pafourier` returns an object of `class` "`ITP2`".

An object of class "`ITP2`" is a list containing at least the following components:

 `basis` String vector indicating the basis used for the first phase of the algorithm. Equal to `"paFourier"`. `test` String vector indicating the type of test performed. Equal to `"2pop"`. `paired` Logical indicating whether the test is paired (as entered by the user). `coeff_phase` Matrix of dimensions `c(n,p)` of the `p` phases of the Fourier basis expansion. Rows are associated to units and columns to frequencies: the first `n1` rows report the coefficients of the first population units and the following `n2` rows report the coefficients of the second population units. `coeff_amplitude` Matrix of dimensions `c(n,p)` of the `p` amplitudes of the Fourier basis expansion. Rows are associated to units and columns to frequencies: the first `n1` rows report the coefficients of the first population units and the following `n2` rows report the coefficients of the second population units. `pval_phase` Uncorrected p-values of the phase tests for each frequency. `pval_amplitude` Uncorrected p-values of the amplitude tests for each frequency. `pval.matrix_phase` Matrix of dimensions `c(p,p)` of the p-values of the multivariate tests on phase. The element `(i,j)` of matrix `pval.matrix_phase` contains the p-value of the joint NPC test of the frequencies `(j,j+1,...,j+(p-i))`. `pval.matrix_amplitude` Matrix of dimensions `c(p,p)` of the p-values of the multivariate tests on amplitude. The element `(i,j)` of matrix `pval.matrix_amplitude` contains the p-value of the joint NPC test of the frequencies `(j,j+1,...,j+(p-i))`. `corrected.pval_phase` Corrected p-values of the phase tests for each frequency. `corrected.pval_amplitude` Corrected p-values of the amplitude tests for each frequency. `labels` Labels indicating the population membership of each data. `data.eval` Evaluation on a fine uniform grid of the functional data obtained through the basis expansion. `heatmap.matrix_phase` Heatmap matrix of p-values for phase (used only for plots). `heatmap.matrix_amplitude` Heatmap matrix of p-values for amplitude (used only for plots).

## Author(s)

Alessia Pini, Simone Vantini

## References

A. Pini and S. Vantini (2013). The Interval Testing Procedure: Inference for Functional Data Controlling the Family Wise Error Rate on Intervals. MOX-report 13/2013, Politecnico di Milano.

See also `ITP2fourier`, `ITP2bspline`, `ITP1fourier`, `ITP1bspline`, and `ITPimage`.
 ``` 1 2 3 4 5 6 7 8 9 10 11 12 13``` ```# Importing the NASA temperatures data set data(NASAtemp) # Performing the ITP ITP.result <- ITP2pafourier(NASAtemp\$milan,NASAtemp\$paris,maxfrequency=20,B=1000,paired=TRUE) # Plotting the results of the ITP plot(ITP.result,main='NASA data',xrange=c(1,365),xlab='Day') # Plotting the p-value heatmap ITPimage(ITP.result,abscissa.range=c(1,365)) # Selecting the significant coefficients which(ITP.result\$corrected.pval < 0.05) ```