我必须调用在Matlab中读取一个名称是由strcat创建的矩阵。例如
person = 2;
Index_XNY = strcat('Index_X',num2str(person),'Y');
Big_Index = find(Index_XNY(1,:)==1);
如果我在此示例中将Index_XNY替换为Index_X2Y,则此方法有效。
我尝试了很多不同的东西来获取Big_Index,但到目前为止我还没有成功。可以这样做,因为需要调用大量数据元素。
答案 0 :(得分:2)
您可以使用eval
函数来评估字符串中的Matlab表达式:
expr = strcat('find(Index_X',num2str(person),'Y(1,:)==1)');
Big_Index = eval(expr);
当然,存在许多使用eval
函数执行此操作的替代方法,具体取决于您希望将多少字符串放入字符串以及剩余多少。