Need to combine doubles with different sizes

5 次查看(过去 30 天)
I need to combine a set of doubles into one double matrix. My problem is that they are all different sizes. How would I go about doing this?
  3 个评论
Walter Roberson
Walter Roberson 2016-1-19
Are you trying to put each member into a row (or column) with them starting as different lengths, and you want to end up with a rectangular matrix that has NaN in each location where there was no value?
jgillis16
jgillis16 2016-1-19
Walter, yes you're on the right track. I have several different doubles that I need to combine but they all have varying lengths. The problem I'm facing is that say I have an 'x' double. This 'x' double is associated with another set of 'y' double that is the same length as the 'x' double because they come from the same source of data. But, I have several sets of these pairs of 'x' and 'y' doubles, but they are all different lengths. How would I make these separate 'x' and 'y' doubles the same length as each other?

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2016-1-19
If packing by columns then
YourXArray(1:length(x), Column_Number) = x;
If the x is larger then the current maximum number of rows then the array will be automatically grown and padded with 0s. If you want a different pad value then you need to indicate to us what padding you want.
  3 个评论
Walter Roberson
Walter Roberson 2016-1-20
Then perhaps you should be padding with something else like -inf or nan
Lx = length(this_x);
if Lx > size(YourXArray,1)
YourXArray( size(YourXArray,1)+1 : Lx, :) = PadValue;
end
YourXArray(1:Lx, ColumnNumber) = x;
jgillis16
jgillis16 2016-1-20
what does 'this_x', and 'x' refer to? thanks!

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by