作者:乔山办公网日期:
返回目录:excel表格制作
NaN = Not a Number 一般出现来这个东西的原因有两个
1)你的程序里出现0作为分母的运算,这个时候可以考虑把被除矩阵整体加一个无自限小量,例如百1e-10。这样可以消除0作分母的现象。
2)如果上面这个做法不管用,一般就是你自己的算法度和编程的问题了,导致结果不收敛,发散。多次迭代后知无穷大,超过了matlab允许的数值范围。这个时候你必道须去仔细检查你的程序了。
希望能帮到你啊!~
1、在matlab中生成数据,并且写入到excel文件中。具体代码如下图所来示:
2、下面来看一下生成的myExample.xlsx文件自里面是否含有matlab所生成的数据。有图中可以看出,生成的数据已经全部写入了myExample.xlsx文件。
3、从excel的第一个worksheet中读取数百据,代码如下图度所示:
4、从上一步生成的excel文件myExample.xlsx中读取局部的数据,具体代码及结果如下图所示:
5、读取一列数据,从excel文件myExample.xlsx中读取一整列的数据,具体代码及结果如下图所示:
6、从excel文件myExample.xlsx中分别读取数值型、文本型和未处理的数据,具体代码及结果如下图所示:
显示nan说明知该位置不是数值,你可以查看一下你的文件里面,如果存在“--”这种字符而非数字的话,就会出现这种现象,并且matlab中生道成的数据列数会减少。
解决办法:我是用excel打开,把所有”内--“的位置全部替换成0(或者你认为合适的其特数值,一定要是数值)保存(为保险起见可以另存为另一个文件)。之后再用MATLAB打开容应该就没有问题了
这就是出故障了,一般情况下,要针对问题查找原因,是代码用错?数据类型不匹配?还是别的原因,一定要把程序运行几次,详细检查,修改,再运行,再检查、修改,确认无误,一个程序才算完成。