Matlab中使用sum函数报错(下标索引必须为正整数类型或逻辑类型)@TOC
1、可能是索引有问题;
2、检查程序中有没有其他地方使用了自定义名称sum;
问题描述
我对一个矩阵new_data(元素全为负数)的每一列进行求和,使用sum(new_data,1), 老是报错【下标索引必须为正整数类型或逻辑类型】,然后尝试了以下方法:
纠错过程
1、将sum(new_data,1)换为sum(new_data),还是一样报错
2、新建一个文件来测试是否是因为矩阵元素全为负数的原因,结果发现不是。
运行程序后发现可以,并不是因为矩阵元素全为负数的原因。
3、在网上搜索相关经验,终于发现一篇文章,说是因为程序中因为有其他地方使用了自定义名称sum,然后我检查了我的程序,确实有!然后将那个自定义为sum的变量改了名称之后,就没有报错了。
这是我在网上看的一篇文章。
于是,我检查了我的程序,发现果然有自定义变量sum!
然后删除了sum,修改了程序之后,允许就可以了~
参考文章:
https://blog.youkuaiyun.com/guanmao4322/article/details/104327353