i want to use a for loop to go through the values in a table with 10 rows and 1 column one by one. so far my code reads the whole table at the same time
thanks

 採用された回答

Image Analyst
Image Analyst 2021 年 5 月 8 日

2 投票

Emily, try this:
% Generate sample data:
v1 = rand(10, 1);
v2 = rand(10, 1);
charVector = ['a'; 'b'; 'c'; 'd'; 'e'; 'f'; 'g'; 'h'; 'i'; 'j'];
% Create table
t = table(v1, v2, charVector)
% Loop over all rows in the table.
for row = 1 : height(t)
fprintf('For row %2d, v1 = %.2f, v2 = %.2f, c = %s\n', ...
row, t{row, 1}, t{row, 2}, t{row, 3});
end
Adapt as needed, for example with one variable instead of 3
% Generate sample data:
v1 = rand(10, 1);
% Create table
t = table(v1)
% Loop over all rows in the table.
for row = 1 : height(t)
fprintf('For row %2d, v1 = %.2f\n', ...
row, t{row, 1});
end

1 件のコメント

Emily Platt
Emily Platt 2021 年 5 月 13 日
perfect thank you

サインインしてコメントする。

その他の回答 (1 件)

Tala
Tala 2021 年 5 月 8 日

1 投票

I am not sure what do you mean by go through the values. This should solve your problem you:
myCell = {1; 2; 3;4;5;6;7;8;9;10};
for i=1:height(myCell)
D=myCell{i};
display(D)
end

3 件のコメント

Emily Platt
Emily Platt 2021 年 5 月 8 日
thanks
sorry for the wording, I meant that i want to read each row one at a time
this method still displays the whole table at the same time
Tala
Tala 2021 年 5 月 8 日
This is what I see, running the code I posted. I see one value at a time. I might be missing something tho!
Can you give me an example? What do you expect to see?
Image Analyst
Image Analyst 2021 年 5 月 8 日
She wants a table, not a cell array.

サインインしてコメントする。

カテゴリ

ヘルプ センター および File Exchange で Tables についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by