1

データ:

次のデータ形式を想定します (最初の行にヘッダー行があり、500 行以上):

数、数、数、文字列、文字列、数、数、数、文字列、数、数、数

例: 1,0,3,"Braund, Mr. Owen Harris",male,22,1,0,A/5 21171,7.25,C85,S

私のコード:

列 4、9、11、および 12 (1 から始まるインデックス) を無視します。

[A, B, C, D, E, F, G, H] = textread("train.csv","%d %d %d %*q %s %d %d %d %*s %*s %f %*s %*s","delimiter",",","endofline","\n","headerlines","1");

エラー:

error: invalid conversion from string to real scalar
error: fskipl: invalid number of lines specified
error: called from:
error:   /usr/share/octave/3.6.4/m/io/textread.m at line 71, column 5

私はオクターブに不慣れで、エラーの原因を理解できません。ガイドしてください。

4

1 に答える 1

2

上記の問題を除いて、headerlines13 の変換仕様がありますが、12 列しかありません。列 9 は2 つで%*sはなく 1 つに対応する必要があります。フォーマット文字列を

%d %d %d %*q %s %d %d %d %*s %f %*s %*s

小さなサンプル ファイルの解析は、Matlab で期待どおりに機能します。

于 2013-06-29T17:14:28.690 に答える