nk 1.0.0
C++ Numerical Computing Runtime
Loading...
Searching...
No Matches
pca.hpp
Go to the documentation of this file.
1
3// toolboxes/stats/include/nk/stats/dim/pca.hpp
4//
5// Principal Component Analysis.
6
7#pragma once
8
9#include <memory_resource>
10#include <nk/value/value.hpp>
11
12#include <tuple>
13
14namespace nk::stats {
15
18
19
36std::tuple<Value, Value, Value, Value, Value, Value>
37pca(const Value &X, std::pmr::memory_resource *mr = nullptr);
38
48std::tuple<Value, Value, Value>
49pcacov(const Value &C, std::pmr::memory_resource *mr = nullptr);
50
61Value pcares(const Value &X, int ndim,
62 std::pmr::memory_resource *mr = nullptr);
63
64
66} // namespace nk::stats
Core MATLAB-compatible multidimensional array and scalar value type.
Definition value.hpp:61
std::tuple< Value, Value, Value > pcacov(const Value &C, std::pmr::memory_resource *mr=nullptr)
PCA from a precomputed covariance matrix ([coeff, latent, explained] = pcacov(C)).
std::tuple< Value, Value, Value, Value, Value, Value > pca(const Value &X, std::pmr::memory_resource *mr=nullptr)
Principal Component Analysis ([coeff, score, latent, tsquared, explained, mu] = pca(X)).
Value pcares(const Value &X, int ndim, std::pmr::memory_resource *mr=nullptr)
PCA residuals (res = pcares(X, ndim)).