2012-10-20 59 views
5

Tôi có tệp tải xuống Csv từ http://yann.lecun.com/exdb/mnist/index.html. Tôi cần phải chuyển đổi nó sang định dạng tập tin arff.Chuyển đổi Weka CSV sang Arff: IllegalArgumentException: Tên thuộc tính không phải là duy nhất

Tôi cố gắng chạy

java weka.core.converters.CSVLoader /home/saket/Documents/Assignment/NIST7000 > /home/saket/Documents/Myfile.arff 

nhưng nó đem lại cho lỗi sau

java.lang.IllegalArgumentException: Attribute names are not unique! Causes: '0' '0' '0' '0' '0' '0' '0' 

Sau đó, tôi cố gắng sử dụng http://weka.wikispaces.com/Converting+CSV+to+ARFF mã java. BUt vẫn lỗi tương tự đến.

Ai đó có thể vui lòng đề xuất những gì tôi đang làm sai

Trả lời

5

Không có trường tiêu đề trong csv. Vì vậy, tôi đã tạo một tập lệnh và thêm cột 0, cột1, ..., lớp vào dòng đầu tiên của tệp Csv. Sau đó, mở tệp csv được tạo trong weka.

+0

Bạn có thể sử dụng tệp CSV không có tiêu đề bằng cách sử dụng tùy chọn '-H', nghĩa là' loader.setOptions (chuỗi mới [] {"-H"}); ' –

+0

Phiên bản mới cũng có vẻ có ' loader.setNoHeaderRowPresent (true) '... –

2

Tôi đã gặp phải ngoại lệ tương tự nhưng với một lý do khác. Tôi đã sử dụng "class" làm tên thuộc tính, nhưng từ này cũng xuất hiện trong dữ liệu của tôi dưới dạng một chuỗi (sau @data) và Weka đã không phân tách chính xác thuộc tính và dữ liệu. Được giải quyết bằng cách đổi tên thuộc tính "class" thành một cái gì đó khác như "s_label".

Các vấn đề liên quan