在MatLab中,“> help bi2de”提供以下示例:
B = [0 0 1 1; 1 0 1 0];
D = bi2de(B)
但是当我自己尝试这个时,我收到以下错误:
???未定义的函数或方法'bi2de'用于'double'类型的输入参数。
MatLab中此功能有问题吗?
答案 0 :(得分:2)
我很确定发生此问题的原因是因为此功能所属的工具箱,通信系统工具簿的许可证。编写which bi2de
并查看结果是什么。如果它返回函数的路径和注释Has no license available
,则问题与许可证有关。这意味着,工具箱的许可证未正确设置。如果稍后添加工具箱,即在安装原始matlab
之后,通常会发生这种情况。请检查并解决许可证问题,然后它将正常工作。
答案 1 :(得分:1)
bi2de
是a function in the Communications toolbox。您需要使用该工具箱才能使用它。如果您 拥有该工具箱,则问题是您的B
矩阵被视为double
而不是binary
(我没有工具箱所以我无法对此进行测试。
考虑将bin2dec
,which turns a string representation(' 1011001',例如)用于十进制数字。此功能不是工具箱的一部分;它可作为基本MATLAB包的一部分提供。