2012-04-03 12 views
7

mam a JSON file i chce otworzyć dane w WEKA, ale kiedy zrobić, pojawia się następujący błąd: weka failed to load JSON file due to NullPointerExceptionJak używać pliku JSON z WEKA

rozglądając się na mailing list, istnieje kilka pytań o JSON, ale TL; DR poza tym, że zauważyłem rozmowę o JSONie w "formacie Weka oczekuje". Oczywiście nie było żadnej wzmianki o tym formacie. O zrobieniu nurkowania w źródle, ale mam nadzieję, że użytkownicy SO mogą pomóc, zanim spędzę za dużo czasu na ten temat.

Odpowiedz

7

Aby uzyskać informacje o formacie obiektu JSON i jego związku z ARFF. Kroki były zaskakująco proste. pomocą narzędzia GUI, aby wykonać następujące czynności:

  1. wybrać opcję Explorer
  2. wybierz Otwórz plik na karcie Preprocesuj
  3. załadować dowolny domyślnego dostarczane pliki ARFF
  4. SELECT Zapisz które można następnie wybrać rozszerzenie JSON

zasadzie każdy plik JSON muszą posiadać: {header: {relacja: atrybuty: [{}, {}], dane: [{}, {}]}}}

Nadzieja to pomaga

{"houses":{ 
"relation":"house", 
"attributes":{ 
    "houseSize":["NUMERIC"], 
    "lotSize": 
    "bedrooms": 
    "granite": 
    "bathroom": 
    "sellingPrice": 
}, 
"data":[ 
    [3529,9191,6,0,0,205000 ], 
    [3247,10061,5,1,1,224900], 
    [4032,10150,5,0,1,197900 ], 
    [2397,14156,4,1,0,189900 ], 
    [2200,9600,4,0,1,195000], 
    [3536,19994,6,1,1,325000 ], 
    [2983,9365,5,0,1,230000] 
]}} 

Atrybuty mogą mieć więcej informacji określonych dla nich w następujący sposób:

{"contact_lenses":{ 
"relation": "contact-lenses", 
"attributes" : { 
    "age":["young", "pre-presbyopic", "presbyopic"], 
    "spectacle-prescrip":["myope", "hypermetrope"], 
    "astigmatism":["no", "yes"], 
    "tear-prod-rate":["reduced", "normal"], 
    "contact-lenses":["soft", "hard", "none"] 
    }, 
"data":[] 
} 

}

+0

Więc mówisz, że najlepiej jest ładować dane z ARFF, zapisz jako JSON i zobacz czy potrafię zrozumieć, co według Weka jest poprawne JSON? To nie jest zły pomysł. Byłoby miło, gdyby ktoś to zrobił i opublikował wynik tutaj. – Pat

+0

Dołączam ogólną reprezentację pliku JSON ... w ostatnim zdaniu. Jeśli to nie wystarczy, mogę to później opublikować. – kyleED