#include <iostream>
#include <Eigen/Dense>
#include <Eigen/Core>
#include <cosan/data/CosanData.h>
#include <gsl/gsl>
#include <cosan/preprocessing/overunderflow.h>
#include <cosan/preprocessing/missingvalues.h>
#include <cosan/preprocessing/minmaxscaler.h>
#include <cosan/preprocessing/principalcomponentanalysis.h>
#include <vector>
#include <fmt/format.h>
#include <numeric>
Go to the source code of this file.
◆ FMT_HEADER_ONLY
◆ main()
Definition at line 26 of file PCATest.cpp.
37 std::cout<<X<<std::endl;
42 Eigen::SelfAdjointEigenSolver<Cosan::CosanMatrix> eigensolver(cov);
43 if (eigensolver.info() != Eigen::Success) {
44 throw std::invalid_argument(
"Cannot solve eigenvalue decomposition.");}
45 std::cout<<eigensolver.eigenvalues()<<std::endl;
46 std::cout<<eigensolver.eigenvectors()<<std::endl;
47 std::cout<<eigensolver.eigenvectors().rightCols(2)<<std::endl;
48 centered = eigensolver.eigenvectors().rightCols(2);
49 std::vector<double>
vec(eigensolver.eigenvalues().data(), eigensolver.eigenvalues().data() + eigensolver.eigenvalues().size());
50 std::reverse(
vec.begin(),
vec.end());
51 std::vector<double> runningSum(
vec.size());
52 std::partial_sum(
vec.begin(),
vec.end(), runningSum.begin(), std::plus<double>());
53 for (
auto & each :runningSum){
54 std::cout<<each<<std::endl;
60 std::cout<<CRD.GetSummaryMessageX()<<CRD.GetSummaryMessageY()<<std::endl;
64 auto [value1, value2] = CRD.GetMissingNumber();
65 std::cout<< value1<<value2<<std::endl;