Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature currently requires accessing the site using the built-in Safari browser.
#include <map>
#include <vector>
#include <algorithm>
#include <iterator>
#include <iostream>
#include <fstream>
using namespace std;
int main(int argc, char *argv[])
{
typedef map<int, vector<double> > maptype;
maptype label_kandidaten;
ifstream file("data.txt");
if (!file.is_open()) {
cerr << "could not open file.";
return 1;
}
// Werte einlesen:
vector<double> vec;
copy(istream_iterator<double>(file), istream_iterator<double>(), back_inserter(vec));
clog << "size: " << vec.size() << endl;
// Werte in Map speichern
// check: assert(vec.size() % 5 == 0);
for (vector<double>::const_iterator it = vec.begin(), end = vec.end();
it != end; ++it)
{
vector<double>::const_iterator beg(it);
advance(it, 4);
vector<double>& v = label_kandidaten[static_cast<int>(*it)];
copy(beg, it, back_inserter(v));
}
// Werte ausgeben:
for (maptype::const_iterator it = label_kandidaten.begin(), end = label_kandidaten.end();
it != end; ++it)
{
const int key = it->first;
const vector<double>& v = it->second;
for (vector<double>::const_iterator vi = v.begin(), ve = v.end();
vi != ve; advance(vi, 4))
{
copy(vi, vi + 4, ostream_iterator<double>(cout, " "));
cout << key << endl;
}
}
return 0;
}
Ich verstehe deine Frage nicht. Du hast die Datei doch schon nach dem Label aufgeteilt und in der Map gespeichert...Hallo deepthroat,
Vielen danke, es funktioniert prima. Ich habe noch eine Frage, zwar wie soll ich vorgehen wenn ich die Datei in 2 Klassen ( vektoren oder sogar File ) aufteilen will. Ich will zB. einer Klasse die nur aus Zeilen mit der Label = 25 und die andere Klasse mit der label = 0 haben.
Das ist doch aber mehr als simpel.Hi deepthroat,
Ich will das gesamt Datei in 2 vector bzw File aufteilen. Der vector v0 sollte nur die Zeile mit der label 0 enthalten und vector v25 nur die mit der label 25.