% Berechnung der Differenz der Loginzeit pro Tag
a = WorkLog(:,1);
b = WorkLog(:,2);
form = 'yyyy-mm-ddTHH:MM:SS';
c = arrayfun(@(x)(datestr(datenum(b, form)-datenum(a, form), 'HH:MM:SS')), 'UniformOutput' ,false);
Ich glaube ich benutze das arrayfun ein wenig falsch. In der Datei WorkLog sind in jeder Zele verschiedene Zeiten eingespeichert und ich will halt die Zeiten voneinaner abziehen, wenn ich es ohne den arrayfun mache funktioniert es zwar aber das Ergebnis wird mir als Block geliefert und ich will eine Unterteilung pro Zeile.
% Berechnung der Differenz der Loginzeit pro Tag
a = WorkLog(:,1);
b = WorkLog(:,2);
form = 'yyyy-mm-ddTHH:MM:SS';
% wenn a und b cells sind, dann arrayfun übergibt cell an funktions parameter % dann muss man auf Inhalt mit geschweiften Klammern zugreifen.
c = arrayfun(@(a_el, b_el)(datestr(datenum(b_el{1}, form)-datenum(a_el{1}, form), 'HH:MM:SS')), a,b, 'UniformOutput' ,false);
% Aber datenum versteht auch cells, deshalb geht es hier auch ohne geschweifte Klammern
c = arrayfun(@(a_el, b_el)(datestr(datenum(b_el, form)-datenum(a_el, form), 'HH:MM:SS')), a,b, 'UniformOutput' ,false);
% cellfun übergibt gleich den den Inhalt der cell an Funktionsparameter
c = cellfun(@(a_el, b_el)(datestr(datenum(b_el, form)-datenum(a_el, form), 'HH:MM:SS')), a,b, 'UniformOutput' ,false);
% Berechnung der Differenz der Loginzeit pro Tag
a = WorkLog(:,1);
b = WorkLog(:,2);
form = 'yyyy-mm-ddTHH:MM:SS';
% wenn a und b cells sind, dann arrayfun übergibt cell an funktions parameter % dann muss man auf Inhalt mit geschweiften Klammern zugreifen.
c = arrayfun(@(a_el, b_el)(datestr(datenum(b_el{1}, form)-datenum(a_el{1}, form), 'HH:MM:SS')), a,b, 'UniformOutput' ,false);
% Aber datenum versteht auch cells, deshalb geht es hier auch ohne geschweifte Klammern
c = arrayfun(@(a_el, b_el)(datestr(datenum(b_el, form)-datenum(a_el, form), 'HH:MM:SS')), a,b, 'UniformOutput' ,false);
% cellfun übergibt gleich den den Inhalt der cell an Funktionsparameter
c = cellfun(@(a_el, b_el)(datestr(datenum(b_el, form)-datenum(a_el, form), 'HH:MM:SS')), a,b, 'UniformOutput' ,false);
klappt erstmal einwandfrei. Hatte wirklich wie du sagt ihm vergessen den Vektor zu übergeben.
Bei der For Loop Variante klappt es bei mir noch nicht einwandfrei, da er nur mir zwei Elemente rausspuckt, quasi die ersten beiden Zeilen befüllt und der Rest wurd ausgelassen....
Bei der For Loop Variante klappt es bei mir noch nicht einwandfrei, da er nur mir zwei Elemente rausspuckt, quasi die ersten beiden Zeilen befüllt und der Rest wurd ausgelassen....
Upps habe was vergessen der FOR-Loop zu übergeben, habe oben entsprechend verbessert, sollte jetzt alles befüllen
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
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.