I'm having trouble saving the matrix?

1 回表示 (過去 30 日間)
studentmatlaber
studentmatlaber 2022 年 4 月 14 日
回答済み: Ayush Modi 2023 年 9 月 29 日
Mxest1=(x_T_est1)';
Mxest1(isnan(Mxest1)) = [] %NANs
Myest1=(y_T_est1)';
Myest1(isnan(Myest1)) = [] %NANs
for n=1:length(Mxest1)
mae1=sum(sqrt((x_T-Mxest1(n)).^2+(y_T-Myest1(n)).^2));
end
mae1(1,1)=mae1/n
save('mae1.mat','mae1')
%for new value Mxest1 and Myest1
Mxest1=(x_T_est1)';
Mxest1(isnan(Mxest1)) = [] %NANs
Myest1=(y_T_est1)';
Myest1(isnan(Myest1)) = [] %NANs
for n=1:length(Mxest1)
mae1=sum(sqrt((x_T-Mxest1(n)).^2+(y_T-Myest1(n)).^2));
end
mae1(1,2)=mae1/n
save('mae1.mat','mae1')
Hello. I have 51 variegated Mxest1 and Myest1 values. I enter these values manually. As a result, the matrix I want should be mae1=1x51. After manually entering the first value, I save the first result at mae1(1,1). Then I want to save the second value at mae1(1,2). But it doesn't do it correctly. How can I do that? I would be glad if you help.
  1 件のコメント
Benjamin Thompson
Benjamin Thompson 2022 年 4 月 14 日
You have not defined x_T_est1 in your code listing.

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

回答 (1 件)

Ayush Modi
Ayush Modi 2023 年 9 月 29 日
Hi,
I understand you would like to store the output from each loop in mae1.
You can achieve this by using a temporary variable “temp” and storing the result inside the “for” loop in “temp” variable. After exiting loop, you can store the value of “temp” variable in “mae1”.
for n=1:length(Mxest1)
temp=sum(sqrt((x_T-Mxest1(n)).^2+(y_T-Myest1(n)).^2));
end
mae1(1,1)=temp/n;
Repeat the same for mea1(1,2).
Hope this helps!

カテゴリ

Help Center および File ExchangeResizing and Reshaping Matrices についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by