データマイニングツールWEKAに与えるデータは、CSV形式のほかにarff形式のファイルを指定することもできます。(むしろ、こちらのほうがよく対応しています。)CSV形式とよく似ていますが、データの情報を追加できる点が違います。
まず、arff形式の具体的なサンプルを示したほうがイメージしやすいと思うので、以下に例を示します。
@RELATION iris
@ATTRIBUTE sepallength NUMERIC
@ATTRIBUTE sepalwidth NUMERIC
@ATTRIBUTE petallength NUMERIC
@ATTRIBUTE petalwidth NUMERIC
@ATTRIBUTE class {Iris-setosa,Iris-versicolor,Iris-virginica}
@DATA
5.1,3.5,1.4,0.2,Iris-setosa
4.9,3.0,1.4,0.2,Iris-setosa
4.7,3.2,1.3,0.2,Iris-setosa
4.6,3.1,1.5,0.2,Iris-setosa
5.0,3.6,1.4,0.2,Iris-setosa
5.4,3.9,1.7,0.4,Iris-setosa
4.6,3.4,1.4,0.3,Iris-setosa
5.0,3.4,1.5,0.2,Iris-setosa
4.4,2.9,1.4,0.2,Iris-setosa
4.9,3.1,1.5,0.1,Iris-setosa
この例は、ワイカオ大学のウェブページから引用したものです。実際のデータは、「@DATA」以降に書かれます。ちなみに、「@XXX」の部分は大文字と小文字を区別しません。
@relationには、データの名前を指定します。また、@attributeにはそれぞれの列のデータ形式と名前を指定します。フォーマットを以下に示します。
@relation <relation-name>
@attribute <attribute-name> <datatype>
<datatype>には、以下のデータ形式を指定します。
numeric (数字。つまり整数か実数)
<nominal-specification> (有限の記号。例えば、YESとNOとか。)
string (文字列)
date [<date-format>] (日時。<date-format>は省略可能。省略した場合は、"yyyy-MM-dd'T'HH:mm:ss")
nominal-specificationは、中カッコ「{ }」で囲んで、コンマで区切ります。例は上記にある通りです。YESとNOなら、{YES,NO} といった感じです。
[web] Weka 3
[web] Attribute-Relation File Format