具体的代码是path = ("E:\Arcgis_0807\A_yuebiaofanyan_0322\MGM\0330MGM_instructions_files\try3_0519_PDS_Geoscience\cartOrder\cartorder\REF_0_23.mat") load('wavelengths.mat'); load(path); size_ref_1 = size(Ph,1); size_ref_2 = size(Ph,2); Ph = permute(Ph, [3,2,1]); Ph = Ph(17:44,:,:);%选取了波段17-44的值为一列 Ph = reshape(Ph, size(Ph,1), size(Ph,2)*size(Ph,3)); data = zeros(size(Ph,1), size(Ph,2)+1); data(:, 1) = wavelengths; data(:, 2:end) = Ph save('output0_23_try4.asc', 'data', '-ascii');怎么解决呢?
时间: 2023-09-08 12:10:47 浏览: 84
dbf.rar_arcgis_arcgis python_site:www.pudn.com
根据您提供的代码,可以看出您最终输出的是一个ASCII格式的文件,而不是28行两列的数据。这可能是因为ASCII格式文件和28行两列的数据不同,您需要使用不同的方式来读取和处理这个文件。
如果您想读取ASCII格式的输出文件,可以使用MATLAB中的load函数来读取,例如:
```
output = load('output0_23_try4.asc');
```
这将会以矩阵的形式读取ASCII格式文件,并将其存储在名为output的MATLAB变量中。您可以使用MATLAB的命令来查看output变量的大小和内容。
如果您仍然希望输出28行两列的数据,可以使用MATLAB中的reshape函数重新构造输出数据的格式,例如:
```
output_28x2 = reshape(data(:, 2:end), 28, 2);
```
这将会将data矩阵的第二列及以后的列重新构造成28行两列的矩阵,并将其存储在名为output_28x2的MATLAB变量中。您可以使用MATLAB的命令来查看output_28x2变量的大小和内容。注意,这样的操作可能会造成数据的丢失,因此您需要仔细检查输出结果。
阅读全文