0

Matlab で読み込もうとしているデータ取得システムからの .dat ファイルがいくつかあります。

次のコードを使用すると、各 .dat ファイルの最大公約数が 1640 であることがわかり、N x 1640 の行列が作成されますが、その後はわかりません。

fid = fopen('VECTOR1.DAT');
A = fread(fid, '*uint8');
length(A)

助言がありますか?私はどんな助けにも非常に感謝しています。

4

1 に答える 1

0

データはおそらくそうではありませんuint8。これが、unint8として読み取ったときに意味不明だと思う理由です。次のように、表に示されているさまざまなタイプdoc freadとして入力し、読み込んでみてください。

figure,plot(fread(fid, 'single'));
figure,plot(fread(fid, 'double'));
figure,plot(fread(fid, 'int8'));
figure,plot(fread(fid, 'int16'));
figure,plot(fread(fid, 'int32'));
figure,plot(fread(fid, 'int64'));
figure,plot(fread(fid, 'uint8'));
figure,plot(fread(fid, 'uint16'));
figure,plot(fread(fid, 'uint32'));
figure,plot(fread(fid, 'uint64'));

おそらく、そのうちの 1 つを使用すると、他のプロットよりも優れたプロットが得られるでしょう。

データファイルを取得した機器のマニュアルをGoogleでさらに検索してください。そのマニュアルには、作成するデータ ファイルの形式が何であるか、それらが浮動小数点 (単精度または倍精度) であるか、整数であるか、符号なし整数であるかが記載されているはずです。

于 2012-07-16T23:27:52.000 に答える