Matlab:避免在文本数据输入时进行exp(-3)转换
我有一个包含数据的txt文件,所以我使用了以下函数Matlab:避免在文本数据输入时进行exp(-3)转换,matlab,Matlab,我有一个包含数据的txt文件,所以我使用了以下函数 M = dlmread('data.txt', '\t'); 但是我的数据正在转换为exp(-3)我如何避免这种情况 以下是数据的外观: M = 1.0e+03 * 0 0.0080 0.3500 0.1500 4.6990 0.0145 0.0740 0 0 0.0080 0.4000 0.1700 4.7460
M = dlmread('data.txt', '\t');
但是我的数据正在转换为exp(-3)我如何避免这种情况
以下是数据的外观:
M =
1.0e+03 *
0 0.0080 0.3500 0.1500 4.6990 0.0145 0.0740 0
0 0.0080 0.4000 0.1700 4.7460 0.0120 0.0710 0
0 0.0080 0.4000 0.1750 4.3850 0.0120 0.0720 0
0 0.0060 0.2500 0.0720 3.1580 0.0195 0.0750 0
0 0.0080 0.3040 0.1500 3.8920 0.0125 0.0720 0
0 0.0080 0.3500 0.1450 4.4400 0.0140 0.0750 0
0 0.0060 0.2500 0.1050 3.8970 0.0185 0.0750 0
0 0.0060 0.1630 0.1330 3.4100 0.0158 0.0780 0.0010
0 0.0080 0.2600 0.1100 4.0600 0.0190 0.0770 0
正如H Muster所说,这是一个显示问题 在我看来,显示数据的更好方法是通过num2str 如果你跑
num2str(M)
你会看到
ans =
0 0.008 0.35 0.15 4.699 0.0145 0.074 0
0 0.008 0.4 0.17 4.746 0.012 0.071 0
0 0.008 0.4 0.175 4.385 0.012 0.072 0
0 0.006 0.25 0.072 3.158 0.0195 0.075 0
0 0.008 0.304 0.15 3.892 0.0125 0.072 0
0 0.008 0.35 0.145 4.44 0.014 0.075 0
0 0.006 0.25 0.105 3.897 0.0185 0.075 0
0 0.006 0.163 0.133 3.41 0.0158 0.078 0.001
0 0.008 0.26 0.11 4.06 0.019 0.077 0
这可能是你一开始所期待的
如果需要更高的精度,请将格式字符串传递给num2str
例如:
num2str(M,'%8g')
这不是转换,只是一个显示问题,即“引擎盖下”保留所有精度。使用
format long
以更高的精度显示数据。@H.Muster您所做的是非常令人沮丧的。看看这个复制品的标题,一个刚接触Matlab的人怎么会知道它是一样的呢。当你在Matlab上搜索时,我并没有得到前面的问题作为推荐。打-1分,然后标记删除。事实上,看看下面的答案,上一个问题并没有提供我想要的答案。请注意,我在评论中回答了你的问题。事实上,我把这个问题标记为一个可能的重复问题并不意味着冒犯,也不应该让你气馁;这只是保持现场清洁的正常程序。此外,我没有否决你的问题(-1);那是另一个人。