FlipPA: SignFlip Parallel Analysis for Rank Estimation
Documentation for FlipPA.
๐ This package provides research code and work is ongoing. If you are interested in using it in your own research, I'd love to hear from you and collaborate! Feel free to write: dahong67@wharton.upenn.edu
Please cite the following paper for this technique:
David Hong, Yue Sheng, Edgar Dobriban. "Selecting the number of components in PCA via random signflips", 2022. https://arxiv.org/abs/2012.02985
In BibTeX form:
@Misc{hsd2022stn,
title = "Selecting the number of components in PCA via random signflips",
author = "David Hong and Yue Sheng and Edgar Dobriban",
year = 2022,
url = "https://arxiv.org/abs/2012.02985",
}
Docstrings
FlipPA.flippa
โ Methodflippa(X; quantile=1.0, trials=100, threshold=0.0, comparison=FlipPA.UpperEdge(), rng=default_rng())
Estimate the signal rank of the data X
using random signflips.
Optional keyword arguments
quantile
: quantile for the comparison,default = 1.0
trials
: number of signflip trials to run,default = 100
threshold
: threshold for the comparison,default = 0.0
comparison
: comparison method to use,default = FlipPA.UpperEdge()
rng
: random number generator,default = default_rng()
FlipPA.permpa
โ Methodpermpa(X; quantile=1.0, trials=100, threshold=0.0, comparison=FlipPA.UpperEdge(), rng=default_rng())
Estimate the signal rank of the data X
by permuting the entries of each column.
Optional keyword arguments
quantile
: quantile for the comparison,default = 1.0
trials
: number of signflip trials to run,default = 100
threshold
: threshold for the comparison,default = 0.0
comparison
: comparison method to use,default = FlipPA.UpperEdge()
rng
: random number generator,default = default_rng()