Filter löschen
Filter löschen

Need Help Indexing. I have a 1x12 cell array with each cell containing a 120x2 double. I need to use a for loop to index all the values in every of row in the second column of the 120x2 double and store them in their own 1x12 matrix.

1 Ansicht (letzte 30 Tage)
Cool = Matrix(:,2);
[row,col] = size(Cool);
N = 1;
M = 1;
for N = 1:1:col
for M = 1:1:row
Cool_Temp{M} = Cool{M}(:,2);
end
end

Antworten (1)

Peng Li
Peng Li am 3 Apr. 2020
Do you necessarily do with a for loop? If not, you don't need one.
% an example
tst = cell([1, 12]);
tst(:) = {randn(120, 2)};
% extract the second column of each cell element and store them in another cell
res = cellfun(@(x) x(:, 2), tst, 'UniformOutput', 0);
>> res
res =
1×12 cell array
Columns 1 through 6
{120×1 double} {120×1 double} {120×1 double} {120×1 double} {120×1 double} {120×1 double}
Columns 7 through 12
{120×1 double} {120×1 double} {120×1 double} {120×1 double} {120×1 double} {120×1 double}

Kategorien

Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by