sum of timetables for each months

14 visualizzazioni (ultimi 30 giorni)
Martin
Martin il 10 Set 2019
Commentato: Martin il 11 Set 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

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 10 Set 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 Commenti
Martin
Martin il 10 Set 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 il 11 Set 2019
thanks, Andrei!

Accedi per commentare.

Più risposte (1)

dpb
dpb il 10 Set 2019
totalvehicles=retime([buses;cars],'monthly',@sum);
  2 Commenti
Martin
Martin il 10 Set 2019
That wont work with different variables names
dpb
dpb il 11 Set 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
>>

Accedi per commentare.

Categorie

Scopri di più su Timetables in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by