All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.TKnudsen.ComplexDataObject.data.interfaces.IFeatureVectorObject Maven / Gradle / Ivy

Go to download

A library that models real-world objects in Java, referred to as ComplexDataObjects. Other features: IO and preprocessing of ComplexDataObjects.

The newest version!
package com.github.TKnudsen.ComplexDataObject.data.interfaces;

import java.util.List;
import java.util.Set;

import com.github.TKnudsen.ComplexDataObject.data.features.Feature;
import com.github.TKnudsen.ComplexDataObject.data.features.FeatureType;

/**
 * 

* Title: IAlgorithmDataObject *

* *

* Description: Interface for all objects that can be accepted by algorithms * (data mining, machine learning, information retrieval, etc.). *

* *

* Copyright: Copyright (c) 2016-2018 *

* * @author Juergen Bernard * @version 1.02 */ public interface IFeatureVectorObject> extends IDObject, IKeyValueProvider { public F getFeature(int index); public F getFeature(String featureName); public int getFeatureIndex(String featureName); public void addFeature(F feature); public void addFeature(String featureName, O value, FeatureType type); public void addFeature(int index, F feature); public F setFeature(int index, F feature); public F removeFeature(String featureName); public IFeatureVectorObject subTuple(int fromIndex, int toIndex); public List getVectorRepresentation(); public Set getFeatureKeySet(); public int sizeOfFeatures(); /** * convenient function that is sometimes required when working with FVs without * modifying them * * @return */ public IFeatureVectorObject clone(); }