counting and merging in array

1 次查看(过去 30 天)
Max
Max 2016-1-4
回答: Guillaume 2016-1-4
How would I write for example a function that merges say x=(0:2:6 ,[1 ,2]) into x=[0,1,2,2,4,6] Furthermore say I wanted to count sequences in an array for example say y=[2,0,0,3,0,0,0,4] there are 5 sequences in here (2,[0,0],3,[0,0,0],4) so the answer should be 5. Thank you for the help

回答(1 个)

Guillaume
Guillaume 2016-1-4
First one is simply sorting:
x = {0:2:6, [1 2]};
sort([x{:}])
Second one is achieved by using diff to detect transitions:
y = [2 0 0 3 0 0 0 4];
seqcount = sum(diff([NaN y]) ~= 0)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by