Extracting Rows of a Matrix
492 次查看(过去 30 天)
显示 更早的评论
I have a matrix 'A' of size 8*5. How to extract the first 4 rows of this Matrix.
A = 90.6848 72.5836 54.4646 36.3276 18.1728
99.7018 79.8089 59.8924 39.9521 19.9880
110.7026 88.6271 66.5192 44.3788 22.2058
124.4195 99.6278 74.7902 49.9066 24.9766
141.9931 113.7314 85.4017 57.0036 28.5365
165.3005 132.4561 99.5049 66.4459 33.2780
197.6559 158.4928 119.1482 79.6196 39.9045
245.4805 197.0868 148.3494 99.2610 49.8139
1 个评论
采纳的回答
Star Strider
2017-3-27
First_Four_Rows = A(1:4,:);
4 个评论
Star Strider
2017-3-28
No worries. I needed to understand what you want.
This works:
Extracted = A((A(:,1)>99) & (A(:,1)<140),:);
更多回答(2 个)
John BG
2017-3-27
With
A(1:4,:)
you still get a 2D matrix as result
If you want to pull elements and get a 1D vector then
A([1:4 1:end])
same elements, lined up, 4x5 now 1x44
if you find these lines useful would you please mark my answer as Accepted Answer?
To any other reader, if you find this answer of any help, please click on the thumbs-up vote link,
thanks in advance for time and attention
John BG
1 个评论
Jan
2017-3-28
If the original matrix has the dimension [8 x 5] and A M wants to extract 4 rows, how could the result be a [1 x 44] vector? Your "1:end" means "1:numel(A)" here and is not useful.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!