W podobnym wątku problem był podobny, ale u mnie występuje inna struktura drzewa w pliku tekstowym: (tutaj przykładowa)
W pliku tekstowym ze strukturą: (po % traktowane jako komentarz)
0 wzrost < 200.0 1 koszykowka %korzeń
1 wyskok > 50.0 koszykowka lekkoatletyka
Opis każdego węzła jest w formacie <indeks wejscia="wejscia"> <warunek>* <indeks wejscia NIE> <indeks wejscia TAK>
*warunek ma postac <atrybut> <operator> <wartosc>, gdzie opeator to < lub >
Moim głównym problemem jest odczytanie z pliku struktury drzewa, jak poszczególne wyrazy w drzewie traktować jako <atrybut>, <wartosc>, <indeks wejscia NIE> czy inne.
Czy dobrze rozumiem że chcesz przekonwertować plik tekstowy z formatu csv-podobnego do jakiegoś rodzaju XML?
Jeżeli tak, to podaj przykład takiej konwersji.
Jeżeli nie, to wytłumacz problem jasniej.
Nie ukrywam, jest to projekt programistyczny do którego nie wiem jak podejść.
Najjaśniej będzie chyba jeśli podam kawałek treści zadania:
Napisać program dokonujący analizy zbioru danych z wykorzystaniem drzewa decyzyjnego. Program
wykorzystuje dwa pliki wejściowe: jeden zawierający zbiór danych (przykładów opisanych pewnymi atrybutami), drugi opisujący strukturę drzewa. Działanie programu polega na przyporządkowaniu każdemu przykładowi ze zbioru pewnej etykiety na podstawie drzewa, a następnie zapisaniu przyporządkowań w pliku wyjściowym.
Drzewo decyzyjne to drzewo binarne, którego węzły zawierają warunki. Każdy wiersz w pliku zawiera
opis węzła zgodnie z formatem:
<indeks wejścia> <warunek> <indeks wyjścia NIE> <indeks wyjścia TAK>
Indeks wejściowy 0 oznacza korzeń drzewa. Warunek ma postać <atrybut> <operator> <wartość>, gdzie
operator to symbol < lub >. Wyjścia NIE i TAK odpowiadają sytuacji, odpowiednio, niespełnienia i spełnienia
warunku. Jeżeli węzeł nie posiada któregoś z potomków, to zamiast odpowiedniego indeksu umieszczona
jest tekstowa etykieta, którą należy przyporządkować przykładowi.
Przykładowy plik z opisem drzewa ma postać:
0 wzrost < 190.0 1 koszykowka % korzeń
1 wyskok > 50.0 koszykowka lekkoatletyka
I właśnie nie mam pojęcia jak z pliku tekstowego odczytać tę strukturę drzewa
struct Node { string attribute,opr; double value; string yes,no; };
unordered_map<string,Node> map;
ifstream fin("drzewo.txt");
string key;
Node node;
while(fin>>key>>node.attribute>>node.opr>>node.value>>node.yes>>node.no) map[key]=node;