Я пытаюсь прочитать в CSV-файле, который выглядит следующим образом:
Name,Place,Age,x,y
A,X,1,50,100
B,Y,2,-90,20
C,Z,3,0.4,80
...
За исключением 100 строк данных (плюс заголовок).
Я хотел бычтобы прочитать в столбцах Имя, Возраст, x и y и поместить их в вектор, который выглядит следующим образом:
Name = [Age, x, y]
и сделать это для всех 100 строк (таким образом, 100 векторов).
Я пытался найти помощь по форуму, но лучшая помощь, которую я мог получить, была от c ++ Пропустить первую строку файла csv , который я немного изменил, чтобы напечатать Age, x, y.
ifstream data("data.csv");
if (!data.is_open())
{
exit(EXIT_FAILURE);
}
string str;
getline(data, str); // skip the first line
while (getline(data, str))
{
istringstream iss(str);
string token;
while (getline(iss, token, ','))
{
double Age_x_y = atof(token.c_str());
if (Age_x_y != 0) {
cout << Age_x_y << " ";
}
cout << endl;
}
}
Это хорошо, если бы это было все, что я хотел вывести, но я считаю, что все данные просто хранятся как двойные.Мне нужны данные, хранящиеся в векторе (или что-то вроде структуры), чтобы я мог манипулировать записями.Например, я хотел бы определить x + y для каждого Имени.
Как мне извлечь данные таким образом?
Любая помощь будет принята с благодарностью.