为什么我得到两个不同的数据数组与同一组数据?

32视图(30天)
标题有点模糊,但我将尽力解释。
我有一个4 - d复杂数据集(见附件)。
首先,我写这一个文本文件。
清晰;clc
负载(“modes_f_0.mat”);
nb_modes_om_e =长度(modes_om_e);
nb_modes_om_o =长度(modes_om_o);
nb_heading_genmds =长度(heading_genmds);
%检查modes_om_e (1) < = 0
如果(modes_om_e (1) < -1. d-06)
标志= 1;
nb_modes_om_e = nb_modes_om_e-1;
其他的
国旗= 0;
结束
%写作打开文件
文件标识= fopen (“modes_f_0.txt”,' w ');
%成功检查如果文件被打开
如果文件标识= = 1
错误(无法打开文件编写。);
结束
%向文件写入数据
我= 1:nb_modes_om_e
j = 1: nb_modes_om_o
k = 1: nb_heading_genmds
m = 1:6
流(文件标识,“% .13e % .13e \ n”真正的(modes_f_0 (i, j, k、m)),图像放大(modes_f_0 (i, j, k、m)));
结束
结束
结束
结束
%关闭文件
文件关闭(文件标识);
接下来,我想再核对数据,所以我读的文本文件,并重新创建4 d矩阵。
清晰;
负载(“modes_f_0.mat”);
nb_modes_om_e =长度(modes_om_e);
nb_modes_om_o =长度(modes_om_o);
nb_heading_genmds =长度(heading_genmds);
nb_modes_om_e = nb_modes_om_e-1;%类似于前面的步骤(%检查modes_om_e (1) < = 0)
%打开文本文件进行读取
文件标识= fopen (“modes_f_0.txt”,“r”);
%成功检查如果文件被打开
如果文件标识= = 1
错误(无法打开文件阅读。);
结束
modes_f_0_2 = 0 (nb_modes_om_e, nb_modes_om_o nb_heading_genmds 6);
我= 1:nb_modes_om_e
j = 1: nb_modes_om_o
k = 1: nb_heading_genmds
m = 1:6
%阅读实部和虚部
real_part = fscanf(文件标识,' % f '1);
imag_part = fscanf(文件标识,' % f '1);
%的值存储在数组中
modes_f_0_2 (i, j, k、m) =复杂(real_part imag_part);
结束
结束
结束
结束
%关闭文件
文件关闭(文件标识);
我以为我可以重新创建相同的数据集,我开始(或者是一个我曾经写的文本文件)。但是这两个数据集, modes_f_0 modes_f_0_2 是不同的。我做错了什么?
PS:我有一个示例脚本,检查,但我不认为这是有帮助的。无论如何我将包括在这里。
data1 = modes_f_0_2;%的第一个数据集
data2 = modes_f_0;%的第二个数据集
%检查数据集是相等的
如果isequal(大小(data1),大小(data2))
%执行element-wise不平等的比较
unequalElements = (data1 ~ = data2);
%发现存在差异的指标
diffIndices =找到(unequalElements);
如果isempty (diffIndices)
disp (数据集是相等的。);
其他的
disp (数据集是不平等的。);
%显示指数
disp (的指数差异发生的地方:);
disp (diffIndices);
结束
其他的
disp (“数据集不兼容的大小。”);
结束

答案(0)

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!