Matlab中矩阵列的顺序不同会有什么影响?

5

我得到了矩阵的两列如下输出:

final_matrix2 =

    0.0054    0.0000
    0.0051    0.0000
    0.0047    0.0000
    0.0042    0.0000
    0.0056    0.0000
    0.0034    0.0000
    0.0059    0.0000

第二列中全是零,因为它的数量级为1e-9或1e-10甚至更低。我认为这些零是由于两列元素数量级的差异造成的。
有没有办法在同一个矩阵中正确显示两列中的元素?
2个回答

3

首先,我会模拟您的问题。. .

>> finalMatrix = randn(5,2)

finalMatrix =

   -1.3499   -0.2050
    3.0349   -0.1241
    0.7254    1.4897
   -0.0631    1.4090
    0.7147    1.4172

>> finalMatrix(:,2) = finalMatrix(:,2)*1e-20

finalMatrix =

   -1.3499   -0.0000
    3.0349   -0.0000
    0.7254    0.0000
   -0.0631    0.0000
    0.7147    0.0000

然后使用format命令来显示缺失的精度(longG格式最适合您特定的问题)。
    >> format longG
    >> finalMatrix

    finalMatrix =

             -1.34988694015652     -2.04966058299775e-21
              3.03492346633185     -1.24144348216312e-21
             0.725404224946106      1.48969760778546e-20
           -0.0630548731896562      1.40903448980048e-20
             0.714742903826096      1.41719241342961e-20

    >> 

0
你应该将显示格式设置为“长E”:在“主页”选项卡上,在“环境”部分中点击“首选项”,选择“命令窗口”,并将“文本显示”设置为“长E”。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接