Size doesn't match Value?

3 views (last 30 days)
Theodore
Theodore on 20 Jan 2023
Moved: DGM on 22 Jan 2023
I'm reading in a .mat variable, a column of numbers, which is appearing in my workspace as a "20,229 x 1 double"
I'd like to now create a for loop which loops x times (where x = 20,229), but when I go to find the size of the variable,
it shows as 25, not 20,229?
How do I properly extract this value for use? It is a column vector. Numel() or size() don't seem to work
  2 Comments
Guilherme
Guilherme on 20 Jan 2023
Hi, Theodore!
Can you please share a extract of your code so that someone could try to figure out why it's not working?
Ideally you're trying to do something like this, right?
x = zeros(20000,1);
for i = 1:20000
% do your stuf
your_value = i;
x(i) = your_value;
end
numel(x) %% length(x) should prompt the same result. Size will have two informations: number of lines and number of columns.
Theodore
Theodore on 20 Jan 2023
Yes, apologies for blurring the variables (company confidentiality). 'Blue' and 'Purple' are equal length columns, each being read from a .mat file to have a size of '25'

Sign in to comment.

Accepted Answer

DGM
DGM on 20 Jan 2023
Moved: DGM on 22 Jan 2023
You're finding the size of the char vector, not the variable.
myvariable = rand(100,1);
size(myvariable) % this is a 100x1 numeric vector
ans = 1×2
100 1
size('myvariable') % this is a 1x10 char vector
ans = 1×2
1 10

More Answers (0)

Categories

Find more on Large Files and Big Data in Help Center and File Exchange

Products


Release

R2017a

Community Treasure Hunt

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

Start Hunting!