WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

CSV in Table einlesen mit variablen Spalten

 

KEH
Forum-Century

Forum-Century


Beiträge: 148
Anmeldedatum: 09.10.14
Wohnort: ---
Version: 2016b
     Beitrag Verfasst am: 24.07.2015, 12:45     Titel: CSV in Table einlesen mit variablen Spalten
  Antworten mit Zitat      
Hallo zusammen
Ich möchte gern meine Daten bereinigen, imprinziep nur Umbenennen.

Ich hab für jeden der 6 Sensoren in Meiner Tabelle eine Spalte zuviel mit werten leider ist die Spalten Bezeichnung somit falsch weil diese nicht Angepasst wird

Mein Programm läuft wenn alle Sensoren da sind, falls einer fehlt ist das Format anders und es Geht nicht mehr
Code:
function T = Mat_generator(filename, startRow)
%% Initialize variables.
delimiter = ';';

%% Open the text file.
fileID = fopen(filename,'r');

%% Format string:
% columns 1 - 85: double (%f)
formatSpec = [repmat('%f', 1, 85), [^\n\r]'];

% ==>Wenn ich hier %s nehme ist der Fehler zuwenig Variablen Namen <==
%% Read columns of data according to format string.
dataArray = textscan(fileID, formatSpec, 'Delimiter', delimiter, 'EmptyValue', NaN, ...
                                  'HeaderLines' ,startRow-1, 'ReturnOnError', false);

%% Close the text file.
fclose(fileID);

%% Post processing for unimportable data.
% No unimportable data rules were applied during the import, so no post
% processing code is included. To generate code which works for
% unimportable data, select unimportable cells in a file and regenerate the
% script.
%% Create output variable
T = table(dataArray{1:end-1}, 'VariableNames', {'timestamp', 'Beinlinksaccelerationx','Beinlinksaccelerationy','Beinlinksaccelerationz', 'Beinlinksangularvelocityx','Beinlinksangularvelocityy','Beinlinksangularvelocityz', 'Beinlinksmagnetometerx','Beinlinksmagnetometery','Beinlinksmagnetometerz', 'Beinlinkstiltx','Beinlinkstilty','Beinlinkstiltz','Beinlinksvertacceleration', 'Beinrechtsaccelerationx','Beinrechtsaccelerationy','Beinrechtsaccelerationz', 'Beinrechtsangularvelocityx','Beinrechtsangularvelocityy','Beinrechtsangularvelocityz', 'Beinrechtsmagnetometerx','Beinrechtsmagnetometery','Beinrechtsmagnetometerz', 'Beinrechtstiltx','Beinrechtstilty','Beinrechtstiltz','Beinrechtsvertacceleration','LWSlinksaccelerationx','LWSlinksaccelerationy','LWSlinksaccelerationz','LWSlinksangularvelocityx', 'LWSlinksangularvelocityy','LWSlinksangularvelocityz','LWSlinksmagnetometerx', 'LWSlinksmagnetometery','LWSlinksmagnetometerz','LWSlinkstiltx','LWSlinkstilty', 'LWSlinkstiltz','LWSlinksvertacceleration','LWSrechtsaccelerationx', 'LWSrechtsaccelerationy','LWSrechtsaccelerationz','LWSrechtsangularvelocityx', 'LWSrechtsangularvelocityy','LWSrechtsangularvelocityz','LWSrechtsmagnetometerx', 'LWSrechtsmagnetometery','LWSrechtsmagnetometerz','LWSrechtstiltx', 'LWSrechtstilty','LWSrechtstiltz','LWSrechtsvertacceleration','Pelvislinksaccelerationx', 'Pelvislinksaccelerationy','Pelvislinksaccelerationz','Pelvislinksangularvelocityx', 'Pelvislinksangularvelocityy','Pelvislinksangularvelocityz','Pelvislinksmagnetometerx', 'Pelvislinksmagnetometery','Pelvislinksmagnetometerz','Pelvislinkstiltx','Pelvislinkstilty', 'Pelvislinkstiltz','Pelvislinksvertacceleration','Pelvisrechtsaccelerationx', 'Pelvisrechtsaccelerationy','Pelvisrechtsaccelerationz','Pelvisrechtsangularvelocityx', 'Pelvisrechtsangularvelocityy','Pelvisrechtsangularvelocityz', 'Pelvisrechtsmagnetometerx','Pelvisrechtsmagnetometery', 'Pelvisrechtsmagnetometerz','Pelvisrechtstiltx','Pelvisrechtstilty','Pelvisrechtstiltz', 'Pelvisrechtsvertacceleration','VarName80','VarName81','VarName82','VarName83', 'VarName84','VarName85'});
T.Properties.VariableNames = {'timestamp','Beinlinksaccelerationx','Beinlinksaccelerationy','Beinlinksaccelerationz', 'Beinlinksangularvelocityx','Beinlinksangularvelocityy','Beinlinksangularvelocityz', 'Beinlinksmagnetometerx','Beinlinksmagnetometery','Beinlinksmagnetometerz', 'Beinlinkstiltx','Beinlinkstilty','Beinlinkstiltz','Beinlinksvertacceleration','d1', 'Beinrechtsaccelerationx','Beinrechtsaccelerationy','Beinrechtsaccelerationz', 'Beinrechtsangularvelocityx','Beinrechtsangularvelocityy','Beinrechtsangularvelocityz', 'Beinrechtsmagnetometerx','Beinrechtsmagnetometery','Beinrechtsmagnetometerz', 'Beinrechtstiltx','Beinrechtstilty','Beinrechtstiltz','Beinrechtsvertacceleration','d2', 'LWSlinksaccelerationx','LWSlinksaccelerationy','LWSlinksaccelerationz', 'LWSlinksangularvelocityx','LWSlinksangularvelocityy','LWSlinksangularvelocityz', 'LWSlinksmagnetometerx','LWSlinksmagnetometery','LWSlinksmagnetometerz', 'LWSlinkstiltx','LWSlinkstilty','LWSlinkstiltz','LWSlinksvertacceleration','d3', 'LWSrechtsaccelerationx','LWSrechtsaccelerationy','LWSrechtsaccelerationz', 'LWSrechtsangularvelocityx','LWSrechtsangularvelocityy','LWSrechtsangularvelocityz', 'LWSrechtsmagnetometerx','LWSrechtsmagnetometery','LWSrechtsmagnetometerz', 'LWSrechtstiltx','LWSrechtstilty','LWSrechtstiltz','LWSrechtsvertacceleration','d4', 'Pelvislinksaccelerationx','Pelvislinksaccelerationy','Pelvislinksaccelerationz', 'Pelvislinksangularvelocityx','Pelvislinksangularvelocityy','Pelvislinksangularvelocityz', 'Pelvislinksmagnetometerx','Pelvislinksmagnetometery','Pelvislinksmagnetometerz', 'Pelvislinkstiltx','Pelvislinkstilty','Pelvislinkstiltz','Pelvislinksvertacceleration','d5', 'Pelvisrechtsaccelerationx','Pelvisrechtsaccelerationy','Pelvisrechtsaccelerationz', 'Pelvisrechtsangularvelocityx','Pelvisrechtsangularvelocityy', 'Pelvisrechtsangularvelocityz','Pelvisrechtsmagnetometerx', 'Pelvisrechtsmagnetometery','Pelvisrechtsmagnetometerz','Pelvisrechtstiltx', 'Pelvisrechtstilty','Pelvisrechtstiltz','Pelvisrechtsvertacceleration','d6'};

%% hier könnte man noch die nichtgenutzten elemente entfernen
% 'timestamp','Beinlinksaccelerationx','Beinlinksaccelerationy','Beinlinksaccelerationz','Beinlinksangularvelocityx','Beinlinksangularvelocityy','Beinlinksangularvelocityz',...
%     'Beinrechtsaccelerationx','Beinrechtsaccelerationy','Beinrechtsaccelerationz','Beinrechtsangularvelocityx','Beinrechtsangularvelocityy','Beinrechtsangularvelocityz', ...
%     'LWSlinksaccelerationx','LWSlinksaccelerationy','LWSlinksaccelerationz','LWSlinksangularvelocityx','LWSlinksangularvelocityy','LWSlinksangularvelocityz',...
%     'LWSrechtsaccelerationx','LWSrechtsaccelerationy','LWSrechtsaccelerationz','LWSrechtsangularvelocityx','LWSrechtsangularvelocityy','LWSrechtsangularvelocityz',...
%     'Pelvislinksaccelerationx','Pelvislinksaccelerationy','Pelvislinksaccelerationz','Pelvislinksangularvelocityx','Pelvislinksangularvelocityy','Pelvislinksangularvelocityz',...
%     'Pelvisrechtsaccelerationx','Pelvisrechtsaccelerationy','Pelvisrechtsaccelerationz','Pelvisrechtsangularvelocityx','Pelvisrechtsangularvelocityy','Pelvisrechtsangularvelocityz'});

%% Clear temporary variables
Folder0 =('C:\Users\Hannes Kaplick\ownCloud\TU_UP_Algo_IMU\Rohdaten\Bearbeitet');
Folder0Dir = dir(Folder0);
formatOut = 'yyyymmdd';
Date = datestr(now,formatOut)
cd(fullfile(Folder0))
% aFile = fullfile(Folder0, [Date '_' filename]);
save([Date '_' filename(1,58:59)], 'T')


mhh csv geht wohl nicht
naja Ich brauch imprinzip eine Abfrage mit der ich das Formatspectrum Anpassen kann, oder einen Befehl womit ich alles einlesen kann unabhängig von den Variablenbezeichnung (Anzahl)


Vielen Dank
KEH
Private Nachricht senden Benutzer-Profile anzeigen


Andy386
Forum-Guru

Forum-Guru


Beiträge: 485
Anmeldedatum: 24.06.09
Wohnort: ---
Version: 7.1/8
     Beitrag Verfasst am: 18.08.2015, 09:48     Titel:
  Antworten mit Zitat      
Code:
?
_________________

Ich hasse es wenn die Leute Fragen stellen, man dann versucht sich Mühe zu geben, und diejenigen ihren Thread nie wieder besuchen...
Private Nachricht senden Benutzer-Profile anzeigen
 
KEH
Themenstarter

Forum-Century

Forum-Century


Beiträge: 148
Anmeldedatum: 09.10.14
Wohnort: ---
Version: 2016b
     Beitrag Verfasst am: 18.08.2015, 14:20     Titel:
  Antworten mit Zitat      
Ok, ich schau mir die zwei sachen mal intensiver an
ich habs nun irgendwie gemacht ( schon zulange her)

Danke erst mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.