/* * RapidMiner * * Copyright (C) 2001-2014 by RapidMiner and the contributors * * Complete list of developers available at our web site: * * http://rapidminer.com * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by * the Free Software Foundation, either version 3 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 Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see http://www.gnu.org/licenses/. */ package com.rapidminer.datatable; /** * A data list that contains Object arrays that record process results or * other data. Each row can consist of an id and an object array which represents * the data. * * @author Ingo Mierswa, Marius Helf */ public class SimpleDataTableRow implements DataTableRow { private double[] row; private String id; /** * Creates a SimpleDataTableRow with the same values as other. */ public SimpleDataTableRow(DataTableRow other) { copyValuesFromOtherRow(other); } public SimpleDataTableRow(double[] row) { this(row, null); } public SimpleDataTableRow(double[] row, String id) { this.row = row; this.id = id; } public String getId() { return id; } public double getValue(int index) { return row[index]; } public int getNumberOfValues() { return row.length; } public void copyValuesFromOtherRow(DataTableRow other) { int numberOfValues = other.getNumberOfValues(); row = new double[numberOfValues]; for (int i = 0; i < numberOfValues; ++i) { row[i] = other.getValue(i); } } }