データ型が double と cell であるため、table 変数 'x' および 'ExtraVar1' を連結できません。
22 views (last 30 days)
Show older comments
以下のような読み込みファイルとプログラムを記述したところ下のようなエラーが発生してしまったので解決したいです。
エラー: table2array (line 27)
データ型が double と cell であるため、table 変数 'x' および 'ExtraVar1' を連結できません。
エラー: colormap15 (line 19)
myMatrix = table2array(ret);
9×3の小規模なファイルの読み込みからの計算成功したのですが、こちらのファイルからでは上手くいきませんでした。
table2cellなどでデータ型を変えてみようとしましたが違うエラーが発生するなどして私では上手くいきません。
このような行によって列数が異なるファイルを読み取り、データ型を統一させ連結させ、エラーを解決するような方法を教えていただけないでしょうか
%ファイルを読み込み
filename = 'sanple_2.txt';
opts = detectImportOptions(filename);
%x,y,Aの3列だけ読み込む
opts.SelectedVariableNames = {'x', 'y', 'A'};
% table型で読み取り
ret = readtable(filename, opts);
% A列からNaNの行を抽出
idx = isnan(ret.A);
% NaNのところに10を代入
ret.A(idx) = 10;
% 配列に変換
myMatrix = table2array(ret);
disp(myMatrix);
%行列のサイズの指定、0の空欄を作る
q = zeros(1024,1024);
%1~合計ピクセルまでfor文で回す
for i = 1:1048576
q(myMatrix(i,2)+1,myMatrix(i,1)+1) = myMatrix(i,3);
end
%確認disp
disp(myMatrix);
disp(q);
%qのカラーマップの表示
image(q,'CDataMapping','scaled')
1 Comment
stozaki
on 12 Oct 2020
wataru suzuki 様
sample_2.txtファイルを添付頂くことはできますか? 添付画像のようにテキストファイルを作成したのですが、x,y,Aの値が途中で切れてしまっており、別のエラーが出力されてしまいます。
現象を再現するには、sample_2.txtファイルが必須かと思われます。
ご検討ください。
stozaki
Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!