Generalized Low Rank Models extends the idea of PCA to handle arbitrary data sets consisting of numerical, Boolean, categorical, ordinal, and other data types Resources https://arxiv.org/abs/1410.0342