summaryrefslogtreecommitdiff
path: root/tools/fileDataProvider.h
diff options
context:
space:
mode:
authorJoe Zhao <ztuowen@gmail.com>2015-05-11 18:38:39 +0800
committerJoe Zhao <ztuowen@gmail.com>2015-05-11 18:38:39 +0800
commitc69b39a9f149cc6b5c7270d7d864fb677bc83b34 (patch)
treebba8f4b244c5892265709b822751b9be56b4bf47 /tools/fileDataProvider.h
parent0f05a379b2c5df0b05c23fd91d697464bd250507 (diff)
downloadranksvm-c69b39a9f149cc6b5c7270d7d864fb677bc83b34.tar.gz
ranksvm-c69b39a9f149cc6b5c7270d7d864fb677bc83b34.tar.bz2
ranksvm-c69b39a9f149cc6b5c7270d7d864fb677bc83b34.zip
RidFile tested
Diffstat (limited to 'tools/fileDataProvider.h')
-rw-r--r--tools/fileDataProvider.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/tools/fileDataProvider.h b/tools/fileDataProvider.h
index c4f6a4a..8ebda20 100644
--- a/tools/fileDataProvider.h
+++ b/tools/fileDataProvider.h
@@ -82,9 +82,11 @@ public:
}
pos = 0;
qid = 1;
+ read = true;
}
out.clear();
fsize = d.getfSize();
+ out.setfSize(fsize);
std::vector<DataEntry*> & dat = d.getData();
for (int i=0;i<d.getSize();++i)
if (i!=pos)
@@ -94,6 +96,7 @@ public:
e = new DataEntry;
e->rank=1;
dat[i]->qid=std::to_string(qid);
+ dat[i]->rank=qid;
}
else
{
@@ -103,12 +106,13 @@ public:
e->feature.resize(d.getfSize());
e->qid=std::to_string(qid);
for (int j = 0; j < fsize; ++j) {
- e->feature(i) = fabs(dat[i]->feature(j) -dat[pos]->feature(j));
+ e->feature(j) = fabs(dat[i]->feature(j) -dat[pos]->feature(j));
}
out.addEntry(e);
}
dat[pos]->qid=std::to_string(qid);
++qid;
+ dat[pos]->rank=qid;
while (pos<dat.size() && dat[pos]->rank!=-1)
++pos;
if (pos==d.getSize())