我最近从matlab网站下载了一些代码,用octave运行它。当我尝试运行我创建的test.m文件时,该文件从我收到的下载源代码文件中调用了几个函数:
八度:2 - ;测试
错误:`verLessThan'第101栏第8行未定义
错误:来自:
错误:/media/34GB/escola/efficientLBP/assignUserInputs.m第101行第5行
错误:/media/34GB/escola/efficientLBP/efficientLBP.m第113行,第1列
错误:/media/34GB/escola/efficientLBP/test.m第5行第7行
检查源文件我找到了这段代码
if isempty(funcParamsNames)
isNoFuncParamsNames=true;
else
if verLessThan('matlab', '7.14') % again, old version do not support 'stable'.
funcParamsNames=unique(funcParamsNames); % This can lead to bugs :(
else
funcParamsNames=unique(funcParamsNames , 'stable');
end%
isNoFuncParamsNames=false;
end
所以我想知道是否有办法让八度音程来识别这个功能。 谢谢你的时间。
答案 0 :(得分:0)
Octave似乎知道一个等效函数unique
,但是,我看不到像Matlabs private PersistentEnum findEnum(String type, String name) {
Class<?> c = null;
try {
c = Class.forName("enums." + type); //Assuming all PersistentEnum's are in "enums" package
if (PersistentEnum.class.isAssignableFrom(c)) {
Method method = c.getMethod("name");
for (Object object : c.getEnumConstants()) {
Object enumName = method.invoke(object);
if (name.equals(enumName))
return (PersistentEnum) object;
}
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
这样的选项。
尝试独一无二,看看我猜到了什么?
'stable'
答案 1 :(得分:0)
您可以自己unique
'stable'
:
x = rand(1,10);x(5) = x(1);
% if you have 'stable'
y1 = unique(x,'stable');
% if you don't have 'stable'
[y2,ia] = unique(x);
[ia,idxs] = sort(ia);
y2 = y2(idxs);
% compare
isequal(y1,y2)