libSVM的資料格式轉換:
資料有很多儲存格式,txt格式,xls格式,data格式,csv格式等等,這些資料格式之間都可以互相轉換,在此介紹一下*.xls、*.txt如何產生libsvm格式的資料。
產生libsvm資料有兩種方法,在此介紹使用FormatDatalibsvm工具,因為這種方法直觀簡單,效率高,方便易行。其實只是利用了excel的宏。
一、.xls格式——>svm格式的轉換
① 下載FormatDatalibsvm.xls 地址如下:
http://download.csdn.net/detail/smilehehe110/9702456
②準備好Excel資料集
如果是csv格式的可以先通過Excel轉換成.xls格式,具體方法見下面。
③開啟FormatDatalibsvm.xls
注意上方會出現一個框框提醒你宏已經被禁用,一定要點擊更改,啟用宏。
④載入data
可以直接將資料複製到topleft儲存格,注意複製的時候只複製資料區域相關的屬性,不要複製屬性名稱,否則會崩潰。
⑤轉換
在Excel介面點擊
“工具”—>”宏”—>”宏”—>FormatDatatoLibsvm–>執行
或“視圖”—>”宏”—>”查看宏”——>FormatDatatoLibsvm–>執行
可以看到資料在進行轉換和移動,稍等一下就可以看到資料變成了libsvm格式。
等資料轉換完成後,將該檔案儲存為.txt檔案。這時資料轉換的問題就解決了。
csv和xls轉換
有時候一開始拿到的資料時csv格式的,想把它轉換成Excel原始格式,可以按照以下方式進行:
② 開啟Excel,建立一空白文檔。
② 在介面中單擊“資料”—>“自文本”。找到並選中csv檔案“源檔案.csv”,單擊“匯入”。
操作會彈出一個視窗,不用做任何操作,點擊下一步。
③在下一個介面根據分隔字元類型選擇相應符號,如逗號、分號等,選擇後點擊下一步
③ 接著點擊下一步,如果需要更改資料格式可做調整。
④ 點擊完成,彈出一個視窗,選擇資料的存放位置,完成操作,可以看到資料變成了最原始的xls格式。
二、.txt格式——>svm格式的轉換
首先說明的是,這裡所提的.txt文本資料是指資料檔案帶有逗號、空格、頓號、分號等資料分離符號的資料檔案。因為其用符號來分離,導致所有資料項目都歸類為一個屬性,無法實現上面2步驟的格式輸入,也就無法實現正確結果格式的輸出了。
為瞭解決該問題,轉換該過程與上面過程的最大不同就在於:
在開啟該.txt檔案的時候根據文本資料本身的資料特點將其所包含的逗號、分號、定位字元等資料分離的符號去掉;
具體的做法是:轉換運行FormatDataLibsvm.xls,“檔案”->“開啟”->選擇要開啟的data.txt檔案,接著在文本匯入嚮導中根據data.txt檔案本身的資料特點選擇“未經處理資料類型(分隔字元號)”;接著選擇分隔字元號的類型(目的是使得該資料分成獨立的一列列資料,分離成功的話,在資料預覽中將可以看到一列列分離獨立的資料) :選擇“列資料格式”(常規)->完成; 這時候只要調整上面過程的資料格式,重複其後面的步驟 2 、 3 操作即可。