MATLAB: Can’t Remove Rows

MATLAB and Simulink Student Suiteremove rows (or columns) using variable specifiers

I am trying to remove rows using the following code.
% Hypothetical read in from an excel spreadsheet
% 20 rows of values and only first 10 rows have useable data
A = randi([0,30],10,10)
A (10:20,10) = zeros
%% Determining Useable Data
% Array dimension
[row,col] = size(A)
% Row count for element values
rowCount = 0
% Assess array A for numeric values in elements of column 1
for i=1:row
if A(i,1) ~= 0
%logAss(i,1) = 1
rowCount = rowCount + 1
else
end
end
% Delete rows of no value
A(rowCount:row,col) = []
% Where following error thrown:
% "A null assignment can have only one non-colon index.
% Error in Test1 (line 32)
% A(rowCount:row,col) = []"
How do I redimension the array using variables?

Best Answer

  • Instead of
    A(rowCount:row,col) = []
    use
    A(rowCount:row, :) = []