Reshape list into columns
显示 更早的评论
Im working with driving data for vehicles. There is 429 vehicles (DeviceStats). For the trips, there is a list of 107910 rows with one value per row (Car). The value is the id number of the vehicles. The format of the list looks like this
173
173
173
178
178
184
and so on. Every vehicle has a different number of vehicles in the Car vector. I want to reshape the list to 429 columns, where each column has the length the same length as the vehicle has in the Car-list. Like this
173 178 184
173 178
173..
My approach so far has not worked:
clc
clear
load EXJOBB
D=[];
Car=tripStats.device;
Devicestats=deviceStats.device;
for j=1:429
for i=1:107910
if Car(i)==Devicestats(j)
D(i,j)=[Car(i)];
else
break
end
end
end
3 个评论
Joel Schelander
2021-3-2
Stephen23
2021-3-2
Matrices must be rectangular, i.e. all rows have the same number of columns, all columns have the same number of rows.
Gaps, missing data, holes, rows or columns of different lengths are not supported.
Do you want to:
- pad the columns with some default value, e.g. 0, NaN, etc. (if so, what value?)
- use a container array (e.g. cell array) to hold numeric vectors of different lengths?
Joel Schelander
2021-3-2
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!