String Matlab在单元格数组中查找字符串,报告行
我在排序单元格数组rawArrayData.textdata中查找包含字符串“chr1”的一系列行,以便我可以仅处理这些行中的数据(例如,仅处理给定染色体上的坐标,chr1):String Matlab在单元格数组中查找字符串,报告行,string,matlab,indexing,find,cell,String,Matlab,Indexing,Find,Cell,我在排序单元格数组rawArrayData.textdata中查找包含字符串“chr1”的一系列行,以便我可以仅处理这些行中的数据(例如,仅处理给定染色体上的坐标,chr1): chromCols=find([rawArrayData.textdata{:,1}]==chr1'); 使用==时出错 矩阵尺寸必须一致。 我认为错误在于不正确使用find。有没有一种方法可以通过单元阵列实现这一点?或者,是否有方法将“chrX”的实例转换为X,将其转换为double并使用查找 如果有帮助的话,我用它作
chromCols=find([rawArrayData.textdata{:,1}]==chr1');
使用==时出错
矩阵尺寸必须一致。
我认为错误在于不正确使用find
。有没有一种方法可以通过单元阵列实现这一点?或者,是否有方法将“chrX”的实例转换为X,将其转换为double并使用查找
如果有帮助的话,我用它作为起点
我对这件事很陌生-如果有任何其他信息我可以提供,我会这样做
非常感谢。如果您的rawArrayData.textdata
如下所示,您可以这样做:
rawArrayData.textdata = {'chr4'; 'chr1'; 'chr2'; 'chr1' };
chromCols = find(cellfun(@(s) strcmp(s, 'chr1') == 1, ...
rawArrayData.textdata));
% chromCols = [2, 4]
% get only chromCols rows
rawArrayData.textdata{chromCols, 1}
能否提供rawArrayData.textdata
的示例内容?