title: Feature selection on high frequency data matlab
body: <p>I have 1 year of 50Hz data (Wind Turbine), around 100gb. 10min Files, each file has around 70 sensor files. Each sensor variables has around 30.000 data. </p>
  
  <p>I am trying to apply feature selection methods on this data. What worked so far is when I am merging for example 10 sensor where I think they have an influence on the dependent variable. I end up with a matrix of 10 variables and each variable has 30.000 times lets say 6 files so 180.000. And here I only evaluated an hour of data from a whole year. </p>
  
  <p>Is there a possibility to evaluate all my data with featureselection methods?</p>
  
  <p>%This script reads in all data from the workspace and merges the data from
  %different files. set of variables is created: Dependent variables - A/A1
  %and independent variables res_biege for further work</p>
  
  <pre><code>xliste = dir('*.mat'); %dateiinformationen werden ge-speichert 
  xanzahldateien = numel(xliste); % Anzahl der gefun-denen .mat dateien 
  xnamederdatei =  {xliste.name}; % alle dateinamen im Ordner werden im Array gespeichert
  
  C_Bieg1_060_240_merge = [];
  Generatordrehzahl_Anlagengeno_merge = [];
  Generatordrehzahl_Triebstrang_merge = [];
  Pitchwinkel_Blatt1_merge = [];
  Rotordrehzahl_merge = [];
  Turmschwingung_X_merge = [];
  Turmschwingung_Y_merge = [];
  Windgeschwindigkeit_Gondel_merge = [];
  Windrichtung_relativ_merge = [];
  Wirkleistung_merge = [];
  C_Bieg2_150_330_merge = [];
  
  
  for k=1:1:length(xliste)-1 %Einlesen der daten aus dem Ordner 
  load(xnamederdatei{k}); % öffnen der dateien
  %cut all sensor values into one vector
  C_Bieg1_060_240_merge = vertcat(C_Bieg1_060_240_merge, C_Bieg1_060_240);
  C_Bieg2_150_330_merge = vertcat(C_Bieg2_150_330_merge, C_Bieg2_150_330);
  Generatordrehzahl_Anlagengeno_merge = vertcat(Generatordrehzahl_Anlagengeno_merge,Generatordrehzahl_Anlagengeno);
  Generatordrehzahl_Triebstrang_merge = vertcat(Generatordrehzahl_Triebstrang_merge,Generatordrehzahl_Triebstrang);
  Pitchwinkel_Blatt1_merge = vertcat(Pitchwinkel_Blatt1_merge,Pitchwinkel_Blatt1);
  Rotordrehzahl_merge = vertcat(Rotordrehzahl_merge,Rotordrehzahl);
  Turmschwingung_X_merge = vertcat(Turmschwingung_X_merge,Turmschwingung_X);
  Turmschwingung_Y_merge = vertcat(Turmschwingung_Y_merge,Turmschwingung_Y);
  Windgeschwindigkeit_Gondel_merge = vertcat(Windgeschwindigkeit_Gondel_merge,Windgeschwindigkeit_Gondel);
  Windrichtung_relativ_merge = vertcat(Windrichtung_relativ_merge,Windrichtung_relativ);
  Wirkleistung_merge = vertcat(Wirkleistung_merge,Wirkleistung);
  
  end
  % clear the workspace except needed variables
  clearvars -except C_Bieg1_060_240_merge C_Bieg2_150_330_merge Generatordrehzahl_Anlagengeno_merge Generatordrehzahl_Triebstrang_merge Pitchwinkel_Blatt1_merge Rotordrehzahl_merge Turmschwingung_X_merge Turmschwingung_Y_merge Windgeschwindigkeit_Gondel_merge Windrichtung_relativ_merge Wirkleistung_merge
  %cutting down vectors to the same length
  C_Bieg1_060_240_merge = C_Bieg1_060_240_merge(1:150000);
  C_Bieg2_150_330_merge = C_Bieg2_150_330_merge(1:150000);
  Generatordrehzahl_Anlagengeno_merge = Generatordrehzahl_Anlagengeno_merge(1:150000);
  Generatordrehzahl_Triebstrang_merge = Generatordrehzahl_Triebstrang_merge(1:150000);
  Pitchwinkel_Blatt1_merge = Pitchwinkel_Blatt1_merge(1:150000);
  Rotordrehzahl_merge = Rotordrehzahl_merge(1:150000);
  Turmschwingung_X_merge = Turmschwingung_X_merge(1:150000);
  Turmschwingung_Y_merge = Turmschwingung_Y_merge(1:150000);
  Windgeschwindigkeit_Gondel_merge = Windgeschwindigkeit_Gondel_merge(1:150000);
  Windrichtung_relativ_merge = Windrichtung_relativ_merge(1:150000);
  Wirkleistung_merge = Wirkleistung_merge(1:150000);
  
  %avereging every 5 values
  C_Bieg1_060_240_merge = nanmean(reshape( [C_Bieg1_060_240_merge(:);nan(mod(-150000,50),1)],50,[]))';
  C_Bieg2_150_330_merge = nanmean(reshape( [C_Bieg2_150_330_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Generatordrehzahl_Anlagengeno_merge = nanmean(reshape( [Generatordrehzahl_Anlagengeno_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Generatordrehzahl_Triebstrang_merge = nanmean(reshape( [Generatordrehzahl_Triebstrang_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Pitchwinkel_Blatt1_merge = nanmean(reshape( [Pitchwinkel_Blatt1_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Rotordrehzahl_merge = nanmean(reshape( [Rotordrehzahl_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Turmschwingung_X_merge = nanmean(reshape( [Turmschwingung_X_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Turmschwingung_Y_merge = nanmean(reshape( [Turmschwingung_Y_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Windgeschwindigkeit_Gondel_merge = nanmean(reshape( [Windgeschwindigkeit_Gondel_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Windrichtung_relativ_merge = nanmean(reshape( [Windrichtung_relativ_merge(:);nan(mod(-150000,50),1)],50,[]))';
  Wirkleistung_merge = nanmean(reshape( [Wirkleistung_merge(:);nan(mod(-150000,50),1)],50,[]))';
  %Create a table for correlation analysis &amp; array (matrix)
  res_biege = sqrt(C_Bieg1_060_240_merge.^2 + C_Bieg2_150_330_merge.^2);
  T = table(res_biege , Generatordrehzahl_Anlagengeno_merge, Generatordrehzahl_Triebstrang_merge, Pitchwinkel_Blatt1_merge, Rotordrehzahl_merge, Turmschwingung_X_merge, Turmschwingung_Y_merge, Windgeschwindigkeit_Gondel_merge, Windrichtung_relativ_merge, Wirkleistung_merge);
  A = table2array(T);
  A1 = table2array(table(Generatordrehzahl_Anlagengeno_merge, Generatordrehzahl_Triebstrang_merge, Pitchwinkel_Blatt1_merge, Rotordrehzahl_merge, Turmschwingung_X_merge, Turmschwingung_Y_merge, Windgeschwindigkeit_Gondel_merge, Windrichtung_relativ_merge, Wirkleistung_merge));
  R = corrcoef(A)
  </code></pre>