I'm importing data using the loop below. I'm getting an error that some of the table variables cannot be concatenated because they're a cell in one table and a noncell in another. How an I correct this? The reason for this issue is because in some data files the variable has actual values and for some parts of the files, the data appears as an NaN. Any help would be appreciated
FileID = dir('*.dat');
T = table;
for j=1:length(FileID)
opts = detectImportOptions(FileID(j).name);
Ts = readtable(FileID(j).name,opts,'ReadVariableNames',false);
Ts.Properties.VariableNames=VarNames;
T = [T;Ts];
end

 採用された回答

Walter Roberson
Walter Roberson 2018 年 12 月 3 日

0 投票

Do the detection once against a file that has numeric in that column and use those options for all of the files.
Alternatively after the option detection bash the setting for that column to make the variable numeric with the appropriate nan detection .

3 件のコメント

Susan Santiago
Susan Santiago 2018 年 12 月 4 日
can you give me an idea of how this would actually look in the code? I'm struggling because I think I don't 100% know how these functions work.
Susan Santiago
Susan Santiago 2018 年 12 月 4 日
Actually I figured it out! I used setvartype in case anyone wants to know. Thanks for the answer
Walter Roberson
Walter Roberson 2018 年 12 月 4 日
FileID = dir('*.dat');
T = table;
opts = detectImportOptions(FileID(1).name);
for j=1:length(FileID)
Ts = readtable(FileID(j).name,opts,'ReadVariableNames',false);
Ts.Properties.VariableNames=VarNames;
T = [T;Ts];
end

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by