Bonjour,
je suis en train d'écrire un code d'extraction des caractéristiques avec PCA : Principal Components Analysis, je travaille sur l'ECG , donc j'ai 11 personnes et pour chaque personne 8 échantillons ( chaque échantillon est un vecteur) , je voudrais faire l'étape de caractérisation avec PCA. mais je ne sais pas comment faire pour la matrice d'entrée ?
voila le code de PCA utilisé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
function [signals,PC,V] = pca3(data)
% PCA1: Perform PCA using covariance.
% data - MxN matrix of input data
% (M dimensions, N trials)
% signals - MxN matrix of projected data
% PC - each column is a PC
% V - Mx1 matrix of variances
[M,N] = size(data);
% subtract off the mean for each dimension
mn = mean(data,2);
data = data - repmat(mn,1,N);
% calculate the covariance matrix
covariance = 1 / (N-1) * data * data';
% find the eigenvectors and eigenvalues
[PC, V] = eig(covariance);
% extract diagonal of matrix as vector
V = diag(V);
% sort the variances in decreasing order
[junk, rindices] = sort(-1*V);
V = V(rindices);
PC = PC(:,rindices);
% project the original data set
signals = PC'* data;
mais je ne sais pas comment construire data et comment interpréter la matrice de sortie signals pour le PCA.