r语言 - 在Matlab中转换二重矩阵为整数矩阵



我在R中构建了两个二进制矩阵,然后将它们加载到MATLAB中。我想通过使用这个函数来进行特征选择:

[steps,sel_flag,rel,red,cond_red] = select_features(BinaryMat1,BinaryMat2, 'degree', 2);

两个二进制矩阵是在double格式,但我得到这个错误:

未定义函数select_features for输入参数类型为double .

我应该怎么做把这两个矩阵转换成整数在Matlab中?我试过uint8, int32int64,但我每次都得到同样的错误。

只需将每个矩阵转换为logical。这可以通过在调用函数之前转换它们来实现:

BinaryMat1 = logical(BinaryMat1);
BinaryMat2 = logical(BinaryMat2);
[steps,sel_flag,rel,red,cond_red] = select_features(BinaryMat1,BinaryMat2, 'degree', 2);
<标题>小注意

您也可能会得到该错误,因为MATLAB 找不到该函数运行。在运行代码之前,请确保计算机上有此函数。你引用的函数不是MATLAB的本地环境的一部分,但通过做一个简单的谷歌搜索,我发现这个:

http://www.mathworks.com/matlabcentral/fileexchange/26981-feature-selection-based-on-interaction-information/content//select_features/select_features.m

在查看源代码时,它看起来不像是只针对二进制矩阵的输入。看起来它们可以是任何矩阵,只要它们表示整数类型,所以整数,无符号整数也可以工作,但我高度怀疑你没有正确下载工具箱,或者假设这个工具箱是MATLAB的本地库的一部分。

完整的工具箱可以在这里找到:http://www.mathworks.com/matlabcentral/fileexchange/submissions/26981/v/1/download/zip

这是由独立于MathWorks的个人编写的自定义工具箱的一部分,因此请确保下载该工具箱,将其放在可访问的地方,然后再次运行代码。

下载工具箱,从存档文件(.zip)中提取内容,然后此目录添加到MATLAB的路径中。您可以转到File->Set Path并将此目录添加到MATLAB的路径中,或者在命令提示符中执行此操作:

path(path,genpath('/path/to/toolbox/dir'));

最新更新