insert an array according to the values from another variable

1 view (last 30 days)
From the following example:
time = [733774,733774,733775,733775,733775,733776,733776];
bthD = [20,10,0,15,10,20,10];
bthA = (1000:100:1600);
%Hypsographic curve
Hypso = [(10:1:20)',(1000:100:2000)'];
d = [1,1.3,1,2.5,2.5,1,1.2];
data = horzcat(time',bthD',d');
[uniqueTimes,idx,idx] = unique(time);% finds the unique times and the index
counts = hist(time,uniqueTimes);% finds the distribution of uniqueTimes in time
expandedData = mat2cell(data,counts,length(uniqueTimes));
I would like to add another 'column' into expandedData which show the corresponding areas of the depths (expandedData{i}(:,2)). The area at each depth is given by the variable Hypso, which stands for hypsographic curve, so, the first column refers to the depths and the second column refers to areas. So, in this example I would like to go into each cell in expandedData and find the area for the corresponding depth from 'Hypso'. Hope this makes sense.
Richard on 18 Sep 2012
Ok, I always here people complaining about asking similar questions so I thought I'd avoid doing that.

Sign in to comment.

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 18 Sep 2012
newD=[newD bthA(newD(:,2))]

Sign in to comment.

More Answers (0)


Community Treasure Hunt

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

Start Hunting!

Translated by