Remove empty rows from matrix

153 views (last 30 days)
BOB
BOB on 17 Sep 2018
Commented: Voss on 23 Nov 2022
Hi folks,
I have the following matrix:
0.6857 0.1248 0.9636 1.0884 0.4807 0.6077 0.3644 0 0 0
0.9093 1.0006 1.0006 1.0006 1.0006 0.3702 0 0 0 0
0.6367 1.0106 0.5669 0.4437 1.0106 1.0106 0.4608 0 0 0
0.2100 0.3250 1.1000 0.9750 0.1250 1.1000 0.4070 0 0 0
0.2048 0.4401 0.7116 1.1518 0.1521 0.2741 0 0 0 0
0.5575 0.2119 1.2212 0.3091 0.9121 0.8300 0.0993 0 0 0
0.6041 1.0239 0.6050 0.4189 1.0239 0.3428 0 0 0 0
0.5817 1.0205 0.4559 0.5645 1.0205 0.3417 0 0 0 0
0.9277 1.0209 0.5690 0.4519 1.0209 1.0209 0.4390 0 0 0
0.1817 1.0217 0.7974 0.2243 0.4393 0 0 0 0 0
0.4787 0.9174 0.2224 1.1398 0.7216 0.4182 0.3816 0 0 0
0.9091 1.0004 1.0004 1.0004 1.0004 0.5803 0 0 0 0
0.2126 1.0104 0.1849 1.1953 0.4451 0.2482 0 0 0 0
0.2531 0.2652 1.0657 1.0657 0.4962 0.5695 0.7034 0 0 0
0.2072 0.8844 0.2805 1.1650 0.5038 0.2651 0 0 0 0
0.3229 1.0774 0.0362 1.1136 1.1136 0.0092 0.3636 0 0 0
0.2172 1.2212 0.0671 1.1541 0.5882 0.2788 0 0 0 0
0.3084 1.0633 1.0633 0.3386 0.4706 0 0 0 0 0
0.2108 1.0037 1.0037 1.0037 0.3361 0 0 0 0 0
0.1521 0.0784 1.0078 1.0862 0.4669 0.6193 0.3637 0 0 0
0.9111 1.0026 1.0026 1.0026 1.0026 0.8622 0 0 0 0
0.1406 1.0046 1.0046 1.0046 1.0046 1.0046 1.0046 0.5075 0 0
0.1918 0.0487 1.0297 1.0784 0.5640 0.3634 0 0 0 0
0.1513 0.0229 1.2441 0.4140 0.8301 0.8509 0.0958 0 0 0
0.8749 1.0001 1.0001 0.0422 0 0 0 0 0 0
0.8900 1.0173 0.5089 0.5084 1.0173 1.0173 0.5565 0 0 0
0.8903 1.0177 0.7745 0 0 0 0 0 0 0
1.0498 0.0125 1.2351 0.4561 0.7790 0.4136 0 0 0 0
1.0150 0.7605 0.4198 0.8982 0 0 0 0 0 0
0.1808 1.0165 1.0165 1.0165 0.1931 0 0 0 0 0
0.8158 1.0071 0.2857 0.4807 0 0 0 0 0 0
0.8973 0.2251 0.9714 0.8502 0.3462 0.4006 0 0 0 0
0.2134 1.2000 0.1495 1.0506 0.7584 0.4417 0.3000 0 0 0
0.7503 1.0005 1.0005 1.0005 1.0005 0.5472 0 0 0 0
0.8519 1.1359 0.0001 0.8643 0 0 0 0 0 0
0.7315 0.4265 0.7546 0.3955 0 0 0 0 0 0
0.6675 0.8202 0 0 0 0 0 0 0 0
0.3814 1.0037 1.0037 1.0037 0.5490 0 0 0 0 0
0.3608 1.0934 0.0694 0.2967 0 0 0 0 0 0
0.1815 1.0204 1.0204 1.0204 1.0204 0.0804 0.6033 0 0 0
0.3523 1.0676 1.0676 0.0248 1.0429 0.5840 0 0 0 0
0.3721 0.6114 0.6717 0.4296 0 0 0 0 0 0
0.1866 1.0493 1.0493 0.5664 0.4830 1.0493 0.7450 0 0 0
0.2975 1.0260 0.0635 0.9624 1.0260 0.5612 0 0 0 0
0.3385 0.8884 0 0 0 0 0 0 0 0
0.2690 0.8727 0.3151 0.3977 0 0 0 0 0 0
0.2374 1.0482 0.7679 0.2802 1.0482 0.5733 0 0 0 0
0.1428 1.0986 0.2470 0.1208 0 0 0 0 0 0
0.1407 1.0821 1.0821 0.1822 0.8999 0.5919 0 0 0 0
0.1300 0.7610 0 0 0 0 0 0 0 0
0.9675 0.0053 0.4343 0 0 0 0 0 0 0
0.1817 1.0220 1.0220 1.0220 0.9418 0.0802 1.0220 0.2555 0 0
0.8054 1.0738 0.0971 0.9767 0.5874 0 0 0 0 0
0.7961 0.2463 0.5288 0 0 0 0 0 0 0
0.6895 0.6923 0.3524 1.0447 0.5715 0 0 0 0 0
0.6871 0 0 0 0 0 0 0 0 0
0.9155 0 0 0 0 0 0 0 0 0
0.4147 0 0 0 0 0 0 0 0 0
0.7308 0.0113 1.1596 0.8044 0.3522 0 0 0 0 0
0.6601 0.3453 0 0 0 0 0 0 0 0
0.5076 0.0782 0 0 0 0 0 0 0 0
0.7649 0.2744 0.5651 0 0 0 0 0 0 0
0.6115 0.3237 0.1214 0 0 0 0 0 0 0
0.7236 0.0776 0.6387 0 0 0 0 0 0 0
0.5311 0.1151 0.9963 0 0 0 0 0 0 0
0.1641 0.0599 0.9660 1.0259 0.5612 0 0 0 0 0
0.8965 0 0 0 0 0 0 0 0 0
0.6188 1.0043 0.1607 0 0 0 0 0 0 0
0.4533 0.3284 0.9263 0 0 0 0 0 0 0
0.3628 0.4568 0.4365 0 0 0 0 0 0 0
0.2558 0.5884 0 0 0 0 0 0 0 0
0.1884 0.4902 0 0 0 0 0 0 0 0
0.1455 0.0447 0.5526 0 0 0 0 0 0 0
0.0793 0.3838 0 0 0 0 0 0 0 0
0.0805 1.0149 0.6064 0 0 0 0 0 0 0
0.7523 0.8290 0.2982 1.1272 0.5694 0 0 0 0 0
0.1034 0.9373 0.3661 1.1931 0.1102 0.7427 0 0 0 0
0.0888 0.4431 0.6763 0.0638 0 0 0 0 0 0
0.0670 0.3839 0 0 0 0 0 0 0 0
0.0681 1.0164 0.6073 0 0 0 0 0 0 0
0.0755 0.4427 0.6843 0.0642 0 0 0 0 0 0
0.5619 0.4598 0.6869 1.1467 0.2045 0 0 0 0 0
0.4987 0.3906 0 0 0 0 0 0 0 0
0.5430 0.0114 1.0968 0.0632 0 0 0 0 0 0
0.4407 0.4027 0 0 0 0 0 0 0 0
0.4495 1.0963 0.2350 0.8613 0.5538 0 0 0 0 0
0.5038 0.4028 0 0 0 0 0 0 0 0
0.4943 0.0541 1.1424 0.0651 0 0 0 0 0 0
0.6954 0.4171 0 0 0 0 0 0 0 0
0.4677 0.2769 1.1634 0.0663 0 0 0 0 0 0
0.1589 1.1350 0.2493 0.8856 0.5733 0 0 0 0 0
0.3814 0.0163 1.2831 0.0731 0 0 0 0 0 0
0.6389 1.0369 0.4251 0 0 0 0 0 0 0
0.0710 1.0149 0.5551 0 0 0 0 0 0 0
0.4376 0.6881 1.0147 0 0 0 0 0 0 0
0.6393 1.1416 0.2036 0 0 0 0 0 0 0
0.3888 1.0800 0.1926 0 0 0 0 0 0 0
0.6852 0.3812 0 0 0 0 0 0 0 0
0.4217 0.7882 0.3831 0.6674 0 0 0 0 0 0
0.2469 1.0330 0.1550 0.2272 0 0 0 0 0 0
0.6003 0.1677 0.6004 0 0 0 0 0 0 0
0.3019 0.1893 1.0737 0.5634 0.0933 0 0 0 0 0
0.8692 0.1094 0.5962 0 0 0 0 0 0 0
0.3294 0.5862 0.7919 0.6614 0.0828 0 0 0 0 0
0.3616 1.1205 0.0095 0.5708 0 0 0 0 0 0
0.9761 0.2160 0.9891 0.4625 0 0 0 0 0 0
0.1902 1.0011 0.5057 0 0 0 0 0 0 0
0.2418 1.0338 1.0338 0.5295 0 0 0 0 0 0
0.2351 1.0051 0.1556 0.8495 0.4699 0 0 0 0 0
0.2517 1.0759 1.0233 0.0526 0.5968 0 0 0 0 0
0.2342 1.0014 1.0014 0.4238 0 0 0 0 0 0
0.2430 1.0389 0.9815 0.0574 0.4320 0 0 0 0 0
0.2707 0.5728 0.5845 1.1573 0.2449 0.2636 0 0 0 0
0.1065 0.1941 1.2852 0.1126 1.1726 0.4194 0.2113 0 0 0
0.5830 0.5932 0 0 0 0 0 0 0 0
0.4807 0.7002 0.5100 1.2102 0.0551 0.4094 0 0 0 0
0.8563 0.0122 0.5702 0 0 0 0 0 0 0
0.1487 0.9660 0.3856 0.3652 0 0 0 0 0 0
0.7246 0.1034 0.4980 0 0 0 0 0 0 0
0.2777 0.7889 0.3046 0 0 0 0 0 0 0
Columns 11 through 20
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
I want to remove all the rows which are all zeros.
Thanks

Accepted Answer

Star Strider
Star Strider on 17 Sep 2018
If ‘M’ is your matrix, this works:
M = M(~all(M == 0, 2),:);
It will remove the ‘all zero’ rows using ‘logical indexing’.
  4 Comments
Thiago de Aquino Costa Sousa
And what if, instead of 0 I have empty [] cells??? How can I remove them?
Voss
Voss on 23 Nov 2022
@Thiago de Aquino Costa Sousa: If you have a cell array (not a matrix as in the question) and you want to remove those rows whose elements all contain the empty array [], then you can do this:
% a cell array with some cells containing empty arrays []:
C = {1 [] 3; [] [] []; [7 8] [] []}
C = 3×3 cell array
{[ 1]} {0×0 double} {[ 3]} {0×0 double} {0×0 double} {0×0 double} {[ 7 8]} {0×0 double} {0×0 double}
C = C(~all(cellfun(@isempty,C),2),:)
C = 2×3 cell array
{[ 1]} {0×0 double} {[ 3]} {[7 8]} {0×0 double} {0×0 double}

Sign in to comment.

More Answers (0)

Categories

Find more on Performance and Memory in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!