Reading a hex table with some undefined values
9 ビュー (過去 30 日間)
古いコメントを表示
I have a text table with hex values. Some of the values are of the form 0xXXXX. I'd like to read in the entire table as doubles with the 0xXXXX entries read as NaN. How do I do that?
採用された回答
Robert
2020 年 8 月 10 日
1 件のコメント
Walter Roberson
2020 年 8 月 10 日
If it was the "convert to double" that is the reason not to use the code I posted, then after my code use
varnames = data.Properties.VariableNames;
data = varfun(@double, data, ''); %changes variable names
data.Properties.VariableName = varnames;
その他の回答 (1 件)
Walter Roberson
2020 年 8 月 10 日
filename = 'hex.txt';
missingindication = {'0xXXXXX'};
data = readtable(filename, 'treatasmissing', missingindication, 'readvariable',false, 'delimiter', ' ', 'multi', true);
This code will work for up to 16 hex digits; any column that has a value 2^32 or larger will be returned as uint64 .
If the missing data indicator itself can have different numbers of X characters, then you can expand the cell array, such as
missingindication = arrayfun(@(c) ['0x', repmat('X', 1, c)], 1:32, 'uniform', 0);
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Contour Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!