Я читаю в CSV, который имеет 3 столбца. В каждом столбце мне нужно выполнить вычисления среднего, var и std. Я могу получить вывод для первого столбца, но не знаю, как его распечатать все 3 столбца. Благодарю.C++ с библиотекой Boost. Чтение столбцов. Excel/CSV
Я пытался добавить '' после строки в время (GetLine (inNew, линии, ''))
но не работает для меня
int main()
{
ifstream inNew("C:/Users/A.csv");
accumulator_set<double, stats<tag::mean, tag::variance >> acc;
if (inNew)
{
string line;
while (getline(inNew, line))
{
acc(stod(line));
}
cout << "Expected return is: " << mean(acc) << std::endl;
cout << "Variance: " << variance(acc) << std::endl;
cout << "Std Dev: " << sqrt(variance(acc)) << std::endl;
}
inNew.close();
system("pause");
return 0;
}
+1 Ты сделал то, что я сделал бы, только с Духом. Ну, я прощаю тебя :) – sehe
Но здесь более динамично использовать Boost Spirit ** [Live On Coliru] (http://coliru.stacked-crooked.com/a/f03e959c2aa1d5da) **. См. [Как разобрать csv с помощью boost :: spirit] (http://stackoverflow.com/questions/18365463/how-to-parse-csv-using-boostspirit/18366335#18366335) для более продвинутой поддержки CSV – sehe
При попытке IceSlicer кода, VisualStudio дает ошибку. Почему? Ошибка ошибка C4996: 'std :: _ Copy_impl': вызов функции с параметрами, которые могут быть небезопасными - этот вызов зависит от вызывающего, чтобы проверить правильность переданных значений. Чтобы отключить это предупреждение, используйте -D_SCL_SECURE_NO_WARNINGS. См. Документацию по использованию Visual C++ «Проверенные итераторы» \t c: \ program files (x86) \ microsoft visual studio 12.0 \ vc \ include \ xutility – user2942358