How to divide column vector elements in unequal parts against a condition?

2 views (last 30 days)
I have Pressure data against 5 days(for sample)
I want Pressure for all these days in different column according to days in single matrix only?
I want code which does everything, because I have big data.
I want all column of pressure for different days inside one matrix or variable say i.e x or y.
Is it possible because length of all pressure data for a day will be different from each other?
File attached

Accepted Answer

Stephan on 28 Nov 2019
Edited: Stephan on 28 Nov 2019
Due to different lengths of your daily data you should use a cell array:
A = readmatrix('New Text Document.txt');
k_min = min(unique(A(:,1)));
k_max = max(unique(A(:,1)));
x = cell(1,k_max-k_min+1);
for k = k_min:k_max
x{:,k} = A(A(:,1)==k,2);
Access the data of the single days by using:
x{1,2} % to look day 2
x{1,5} % day 5

More Answers (0)


Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!