sum of timetables for each months

13 vues (au cours des 30 derniers jours)
Martin
Martin le 10 Sep 2019
Commenté : Martin le 11 Sep 2019
I got 2 timetables buses and cars like below. Does anyone know how to achieve the last table which sum each months?
buses =
2×2 timetable
Time Buses diesel
________ ________ ________
Aug-2019 5 890
Sep-2019 8 910
cars =
2×2 timetable
Time cars petrol
________ ________ ________
Aug-2019 10 45
Sep-2019 80 50
totalvehicles =
2×2 timetable
Time vehicles fuel
________ ________ ________
Aug-2019 15 1035
Sep-2019 88 960

Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 10 Sep 2019
Buses = [5;8];
cars = [10;18];
Time = datetime(2019,[8;9],1);
buses = timetable(Time,Buses);
cars = timetable(Time,cars);
T = [cars,buses];
totalvehicles = rowfun(@(x,y)x + y,T,'OutputVariableNames','vehicles');
  2 commentaires
Martin
Martin le 10 Sep 2019
Thanks, the problem however arise if there are more columns in the tables. I were looking for a more general idea. I update my topic
Martin
Martin le 11 Sep 2019
thanks, Andrei!

Connectez-vous pour commenter.

Plus de réponses (1)

dpb
dpb le 10 Sep 2019
totalvehicles=retime([buses;cars],'monthly',@sum);
  2 commentaires
Martin
Martin le 10 Sep 2019
That wont work with different variables names
dpb
dpb le 11 Sep 2019
So, fix the variables names...
bus.Properties.VariableNames={'vehicles','fuel'};
car.Properties.VariableNames={'vehicles','fuel'};
>> retime([bus;car],'monthly',@sum)
ans =
2×2 timetable
Time vehicles fuel
___________ ________ ____
01-Aug-2019 15 935
01-Sep-2019 88 960
>>

Connectez-vous pour commenter.

Catégories

En savoir plus sur Timetables dans Help Center et File Exchange

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by