nonsparsetosparse.java

来自「Java 编写的多种数据挖掘算法 包括聚类、分类、预处理等」· Java 代码 · 共 121 行

JAVA
121
字号
/* *    This program is free software; you can redistribute it and/or modify *    it under the terms of the GNU General Public License as published by *    the Free Software Foundation; either version 2 of the License, or *    (at your option) any later version. * *    This program is distributed in the hope that it will be useful, *    but WITHOUT ANY WARRANTY; without even the implied warranty of *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *    GNU General Public License for more details. * *    You should have received a copy of the GNU General Public License *    along with this program; if not, write to the Free Software *    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *//* *    NonSparseToSparse.java *    Copyright (C) 2000 Eibe Frank * */package weka.filters.unsupervised.instance;import weka.core.Instance;import weka.core.Instances;import weka.core.SparseInstance;import weka.core.Utils;import weka.filters.Filter;import weka.filters.StreamableFilter;import weka.filters.UnsupervisedFilter;/**  <!-- globalinfo-start --> * An instance filter that converts all incoming instances into sparse format. * <p/> <!-- globalinfo-end --> *  * @author Eibe Frank (eibe@cs.waikato.ac.nz) * @version $Revision: 1.2 $ */public class NonSparseToSparse   extends Filter  implements UnsupervisedFilter, StreamableFilter {  /** for serialization */  static final long serialVersionUID = 4694489111366063852L;    /**   * Returns a string describing this filter   *   * @return a description of the filter suitable for   * displaying in the explorer/experimenter gui   */  public String globalInfo() {    return "An instance filter that converts all incoming instances"      + " into sparse format.";  }  /**   * Sets the format of the input instances.   *   * @param instanceInfo an Instances object containing the input instance   * structure (any instances contained in the object are ignored - only the   * structure is required).   * @return true if the outputFormat may be collected immediately   * @throws Exception if format cannot be processed   */  public boolean setInputFormat(Instances instanceInfo) throws Exception {    super.setInputFormat(instanceInfo);    setOutputFormat(instanceInfo);    return true;  }  /**   * Input an instance for filtering. Ordinarily the instance is processed   * and made available for output immediately. Some filters require all   * instances be read before producing output.   *   * @param instance the input instance.   * @return true if the filtered instance may now be   * collected with output().   * @throws IllegalStateException if no input format has been set.   */  public boolean input(Instance instance) {    if (getInputFormat() == null) {      throw new IllegalStateException("No input instance format defined");    }    if (m_NewBatch) {      resetQueue();      m_NewBatch = false;    }    Instance inst = new SparseInstance(instance);    inst.setDataset(instance.dataset());    push(inst);    return true;  }  /**   * Main method for testing this class.   *   * @param argv should contain arguments to the filter: use -h for help   */  public static void main(String [] argv) {        try {      if (Utils.getFlag('b', argv)) {	Filter.batchFilterFile(new NonSparseToSparse(), argv);      } else {	Filter.filterFile(new NonSparseToSparse(), argv);      }    } catch (Exception ex) {      System.out.println(ex.getMessage());    }  }}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?