error of All contents of the input cell array must be of the same data type.
    16 ビュー (過去 30 日間)
  
       古いコメントを表示
    
cellArray =
    'p4004'
    [4005]
    [4007]
    [4009]
    [4015]
    cellArray      5x1              1202  cell
% when I perform
cellArray=cell2mat(cellArray)
it gives " All contents of the input cell array must be of the same data type." the error.
%I need to perform these transformations to get cell array of strings
cellArray=cell2mat(cellArray)
cellArray=num2str(cellArray)
cellArray=cellstr(cellArray)
0 件のコメント
採用された回答
  Azzi Abdelmalek
      
      
 2014 年 2 月 16 日
        
      編集済み: Azzi Abdelmalek
      
      
 2014 年 2 月 16 日
  
      'p4004' is a string when the other data are double. you can't use cell2mat with mixed data types
If you need to extract a number from 'p4004'
cellArray ={'p4004' [4005] [4007]}
a=cellfun(@num2str,cellArray,'un',0)
b=regexp(a,'\d+(\.)?\d+','match')
c=cellfun(@str2double,b)
0 件のコメント
その他の回答 (1 件)
  Nikola Mirkov
      
 2020 年 8 月 25 日
        Hey Sermet,
Even easier:
cellArray(cellfun(@ischar,cellArray)) = {nan};
cellArray  = cell2mat(cellArray);
Best,
niko
0 件のコメント
参考
カテゴリ
				Help Center および File Exchange で Cell Arrays についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


