/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. * Useful when two Datasets are created independently and one wants to train a model on one dataset and test on the other. -Ramesh. */ public GeneralDataset<L,F> mapDataset(GeneralDataset<L,F> dataset){ GeneralDataset<L,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<>(this.featureIndex, this.labelIndex); else newDataset = new Dataset<>(this.featureIndex, this.labelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) //System.out.println("inside mapDataset: adding datum number"+i); newDataset.add(dataset.getDatum(i)); //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. But labels are converted to be another set of labels */ public <L2> GeneralDataset<L2,F> mapDataset(GeneralDataset<L,F> dataset, Index<L2> newLabelIndex, Map<L,L2> labelMapping, L2 defaultLabel) { GeneralDataset<L2,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<>(this.featureIndex, newLabelIndex); else newDataset = new Dataset<>(this.featureIndex, newLabelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) { //System.out.println("inside mapDataset: adding datum number"+i); Datum<L,F> d = dataset.getDatum(i); Datum<L2,F> d2 = mapDatum(d, labelMapping, defaultLabel); newDataset.add(d2); } //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. * Useful when two Datasets are created independently and one wants to train a model on one dataset and test on the other. -Ramesh. */ public GeneralDataset<L,F> mapDataset(GeneralDataset<L,F> dataset){ GeneralDataset<L,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<>(this.featureIndex, this.labelIndex); else newDataset = new Dataset<>(this.featureIndex, this.labelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) //System.out.println("inside mapDataset: adding datum number"+i); newDataset.add(dataset.getDatum(i)); //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. * Useful when two Datasets are created independently and one wants to train a model on one dataset and test on the other. -Ramesh. */ public GeneralDataset<L,F> mapDataset(GeneralDataset<L,F> dataset){ GeneralDataset<L,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<L,F>(this.featureIndex,this.labelIndex); else newDataset = new Dataset<L,F>(this.featureIndex,this.labelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) //System.out.println("inside mapDataset: adding datum number"+i); newDataset.add(dataset.getDatum(i)); //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. * Useful when two Datasets are created independently and one wants to train a model on one dataset and test on the other. -Ramesh. */ public GeneralDataset<L,F> mapDataset(GeneralDataset<L,F> dataset){ GeneralDataset<L,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<L,F>(this.featureIndex,this.labelIndex); else newDataset = new Dataset<L,F>(this.featureIndex,this.labelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) //System.out.println("inside mapDataset: adding datum number"+i); newDataset.add(dataset.getDatum(i)); //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. But labels are converted to be another set of labels */ public <L2> GeneralDataset<L2,F> mapDataset(GeneralDataset<L,F> dataset, Index<L2> newLabelIndex, Map<L,L2> labelMapping, L2 defaultLabel) { GeneralDataset<L2,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<>(this.featureIndex, newLabelIndex); else newDataset = new Dataset<>(this.featureIndex, newLabelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) { //System.out.println("inside mapDataset: adding datum number"+i); Datum<L,F> d = dataset.getDatum(i); Datum<L2,F> d2 = mapDatum(d, labelMapping, defaultLabel); newDataset.add(d2); } //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. But labels are converted to be another set of labels */ public <L2> GeneralDataset<L2,F> mapDataset(GeneralDataset<L,F> dataset, Index<L2> newLabelIndex, Map<L,L2> labelMapping, L2 defaultLabel) { GeneralDataset<L2,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<L2,F>(this.featureIndex, newLabelIndex); else newDataset = new Dataset<L2,F>(this.featureIndex, newLabelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) { //System.out.println("inside mapDataset: adding datum number"+i); Datum<L,F> d = dataset.getDatum(i); Datum<L2,F> d2 = mapDatum(d, labelMapping, defaultLabel); newDataset.add(d2); } //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }
/** * * @param dataset * @return a new GeneralDataset whose features and ids map exactly to those of this GeneralDataset. But labels are converted to be another set of labels */ public <L2> GeneralDataset<L2,F> mapDataset(GeneralDataset<L,F> dataset, Index<L2> newLabelIndex, Map<L,L2> labelMapping, L2 defaultLabel) { GeneralDataset<L2,F> newDataset; if(dataset instanceof RVFDataset) newDataset = new RVFDataset<L2,F>(this.featureIndex, newLabelIndex); else newDataset = new Dataset<L2,F>(this.featureIndex, newLabelIndex); this.featureIndex.lock(); this.labelIndex.lock(); //System.out.println("inside mapDataset: dataset size:"+dataset.size()); for(int i = 0; i < dataset.size(); i++) { //System.out.println("inside mapDataset: adding datum number"+i); Datum<L,F> d = dataset.getDatum(i); Datum<L2,F> d2 = mapDatum(d, labelMapping, defaultLabel); newDataset.add(d2); } //System.out.println("old Dataset stats: numData:"+dataset.size()+" numfeatures:"+dataset.featureIndex().size()+" numlabels:"+dataset.labelIndex.size()); //System.out.println("new Dataset stats: numData:"+newDataset.size()+" numfeatures:"+newDataset.featureIndex().size()+" numlabels:"+newDataset.labelIndex.size()); //System.out.println("this dataset stats: numData:"+size()+" numfeatures:"+featureIndex().size()+" numlabels:"+labelIndex.size()); this.featureIndex.unlock(); this.labelIndex.unlock(); return newDataset; }