Home | Develop | Download | Contact
example_pca_4d.cpp

Programa para el testeo de las funciones.Para compilar o código example_pca_4d.cpp:

g++ -static -o example_pca_4d example_pca_4d.cpp -lpdsmlmm -lpdsramm -lpdsspmm

Para executar o programa:

./example_pca_4d

Retornando por consola:

X.Size():150    4       Y.Size():150    1

----- PCA :
Lambda:
0.02381036801267  0.078295104369176 0.24263821128315  4.2269386429569   
V:
0.31564727350911   -0.58210496414643  0.65640817609903   0.36145399912114   
-0.32084995099538  0.59709646236075   0.73033416928834   -0.084517445931375 
-0.47949792555931  0.076113052056895  -0.17372739747385  0.85680064714881   
0.75332851204295   0.54665933510638   -0.074559364852526 0.3579112444419    

Tarining data:

Transformd data:

Código example_pca_4d.cpp:

#include <iostream>
#include <Pds/Ra>
#include <Pds/Ml>
int main(void)
{
Pds::Matrix X(Pds::Ra::TextFormat,"../test/iris_data_set_x.txt");
Pds::Vector Y(Pds::Ra::TextFormat,"../test/iris_data_set_y.txt");
Pds::Vector Ys;
Pds::Octave::MarkerSize=64;
Pds::Octave::Plot::ScatterX3DY(X.GetCols({0,1,2}),Y,"testando3d1.m","example_pca_3d_1.png");
Pds::Octave::Plot::ScatterX3DY(X.GetCols({0,1,3}),Y,"testando3d2.m","example_pca_3d_2.png");
Pds::Octave::Plot::ScatterX3DY(X.GetCols({0,2,3}),Y,"testando3d3.m","example_pca_3d_3.png");
Pds::Octave::Plot::ScatterX3DY(X.GetCols({1,2,3}),Y,"testando3d4.m","example_pca_3d_4.png");
std::cout<<"X.Size():"<<X.Size()<<"\tY.Size():"<<Y.Size()<<"\n\n";
Pds::PCA Pca(X);
Pca.Print("----- PCA :\n");
Pds::Matrix X3=Pca.Transform(X,3);
Pds::Matrix X2=Pca.Transform(X,2);
Pds::Octave::Plot::ScatterX3DY(X3,Y,"testando3d.m","example_pca_3d_res3.png");
Pds::Octave::Plot::ScatterX2DY(X2,Y,"testando3d.m","example_pca_3d_res2.png");
return 0;
}
La clase tipo Pds::PCA . Esta clase genera una matriz de Nlin lineas y 1 columna. Para usar incluir P...
Definition: PCA.hpp:63
void Print(std::string str="") const
Imprime en pantalla el contenido del PCA.
Pds::Vector Transform(const Pds::Vector &x, unsigned int N) const
Evalua el objeto de tipo Pds::PCA.

Enlaces de interés

HomePage Bazaar Download Bug report Ayuda Developer Feed