Splitting of a column to multiple columns

37 次查看(过去 30 天)
Hi,
If I have a 100 x 1 column of numbers between -1 to 100 and i want to eliminate the 0's and negative numbers, then split the column into 10 rows each and call each row a given name so as to plot them against each other.
Could you advise how to do this, thanks
  6 个评论
jahanzaib ahmad
jahanzaib ahmad 2019-7-9
sir @Stephen Cobeldick whats the easy way to split 100x1 into 10 columns of 10x1
a=n(1:10,:);b=n(11:20,:);c=n(21:30,:);d=n(31:40,:);e=n(41:50,:);f=n(51:60,:);g=n(61:70,:);h=n(71:80,:);i=n(81:90,:);
j=n(91:100,:);
Stephen23
Stephen23 2019-7-10
编辑:Stephen23 2019-7-10
" whats the easy way to split 100x1 into 10 columns of 10x1 "
There is no easy way to do that "automatically". In fact, you should avoid doing that (unless you want to force yourself into writing slow, complex, buggy code which is hard to debug).
The best solutions would be to either reshape the array (e.g. as Renato shows), or split the data into a cell array (e.g. using num2cell or mat2cell).

请先登录,再进行评论。

回答(1 个)

Renato SL
Renato SL 2019-7-9
After doing what Stephen Cobeldick suggested in the comments, I believe this would do it.
n2 = reshape(n,[],10);
  6 个评论
Stephen23
Stephen23 2019-7-12
编辑:Stephen23 2019-7-12
@Olu B: note that splitting up your data makes it harder to work with.
Using indexing is much simpler.

请先登录,再进行评论。

类别

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