ARFF格式

ARFF代表Attribute-Relation File Format(屬性-關係檔案格式)。
該檔案是ASCII文字檔案,描述共享一組屬性結構的例項列表,由獨立且無序的例項組成,是Weka表示資料集的標準方法,ARFF不涉及例項之間的關係。

在Weka安裝目錄下的data子目錄中,可以找到名稱為weather.numeric.arff的天氣資料檔案,其內容如下所示。

天氣資料的ARFF檔案

%This is a toy example, the UCI weather dataset.

@relation weather

@attribute outlook {sunny, overcast, rainy}
@attribute temperature numeric
@attribute humidity numeric
@attribute windy {TRUE, FALSE}
@attribute play {yes, no}

@data
sunny,85,85,FALSE,no
sunny,80,90,TRUE,no
overcast,83,86,FALSE,yes
rainy,70,96,FALSE,yes
rainy,68,80,FALSE,yes
rainy,65,70,TRUE,no
overcast,64,65,TRUE,yes
sunny,72,95,FALSE,no
sunny,69,70,FALSE,yes
rainy,75,80,FALSE,yes
sunny,75,70,TRUE,yes
overcast,72,90,TRUE,yes
overcast,81,75,FALSE,yes
rainy,71,91,TRUE,no

上述程式碼中,以百分號%開始的行成為註釋行。
@relation 行定義內部資料集的名稱weather, 名稱應簡潔明瞭,易理解。relation也成為關係。

@attribute outlook {sunny, overcast, rainy} 行定義名稱為outlook的標稱型甦醒,有三個取值。@attribute play {yes, no} 行定義play標稱型屬性。注意:最後一個屬性預設為用於預測的類別變數,或成為目標屬性。

@attribute temperature numeric 行定義名稱為temperature的數值型屬性。

@data 標誌後的各行構成資料集。每行為一個例項樣本,由採用逗號分隔的值組成,順序與由@attribute所定義的屬性的順序一致。

屬性的資料型別

  • 標稱型(nominal),只能取預定義值列表中的一個;
  • 數值型(numeric),只能是實數或整數;
  • 字串型(string),由雙引號引用的任意長度的字元列表;
  • 日期型(date);
  • 關係型(relation)。