find the values in the row and column of the matrix by using the loop
3 次查看(过去 30 天)
显示 更早的评论
I have a matrix that consists of multiple rows and columns in a text file. I want to use the value in each row as x, the value in each column as y. How can I do this using a loop? Thanks in advance ..
回答(2 个)
Star Strider
2019-4-12
Your ‘y’ values are not unique for each ‘x’ value.
If you want all the ‘y’ values for each ‘x’ value, this works:
D = load('Mymatrix.txt');
x = D(:,1);
y = D(:,2);
xyMtx = accumarray(x, y, [], @(x){x}); % All ‘y’ Values For Each ‘x’ Value
producing (for example):
x_1 = [xyMtx{1}] % ‘y’ Values For ‘x = 1’
x_3 = [xyMtx{3}] % ‘y’ Values For ‘x = 3’
x_20 = [xyMtx{20}] % ‘y’ Values For ‘x = 20’
that evaluate to:
x_1 =
2
93
x_3 =
1
2
3
92
93
94
x_20 =
4
5
6
89
90
91
Is that what you want?
2 个评论
Star Strider
2019-4-12
My pleasure.
It is relatively easy to do the reverse as well, that is to return all the x-values associated with every y-value.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!