Documentation of 'mikera.vectorz.impl.SparseImmutableVector' Java class
SparseImmutableVector
mikera.vectorz.impl

Class SparseImmutableVector

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable, java.lang.Comparable<INDArray>, java.lang.Iterable<java.lang.Double>, INDArray, ISparse, ISparseVector, IVector


    public class SparseImmutableVector
    extends ASparseIndexedVector
    Indexed sparse immutable vector Efficient for sparse vectors. Maintains a indexed array of strictly non-zero elements. Guaranteed to contain at least one non-sparse index value
    See Also:
    Serialized Form
    • Method Detail

      • wrap

        public static SparseImmutableVector wrap(int length,
                                                 Index index,
                                                 double[] nonSparseValues)
        Creates a SparseImmutableVector with the specified index and data values. WARNING: Performs no checking - Index must be distinct and sorted, and data must be non-zero.
      • create

        public static AVector create(int length,
                                     Index sparseIndex,
                                     double[] sparseValues)
        Creates a SparseImmutableVector using the given sorted Index to identify the indexes of non-zero values, and a double[] array to specify all the non-zero element values
      • create

        public static AVector create(int length,
                                     Index sparseIndex,
                                     AVector sparseValues)
        Creates a SparseImmutableVector using the given sorted Index to identify the indexes of non-zero values, and a dense vector to specify all the non-zero element values
      • create

        public static AVector create(AVector source)
        Creates a sparse immutable vector from the given vector, ignoring the zeros in the source.
      • createFromRow

        public static AVector createFromRow(AMatrix m,
                                            int row)
        Creates a SparseIndexedVector from a row of an existing matrix
      • nonSparseElementCount

        public int nonSparseElementCount()
        Description copied from class: ASparseVector
        Returns the number of non-sparse elements in the sparse vector. This will be greater or equal to the number of non-zero elements
        Specified by:
        nonSparseElementCount in class ASparseVector
        Returns:
      • isZero

        public boolean isZero()
        Description copied from class: AVector
        Returns true if this vector is a zero vector (all components zero)
        Specified by:
        isZero in interface INDArray
        Overrides:
        isZero in class ASparseIndexedVector
      • maxAbsElement

        public double maxAbsElement()
        Description copied from class: AVector
        Returns the maximum absolute element value of a vector
        Overrides:
        maxAbsElement in class AVector
        Returns:
      • maxElementIndex

        public int maxElementIndex()
        Description copied from class: AVector
        Returns the index of the maximum element of a vector
        Overrides:
        maxElementIndex in class AVector
        Returns:
      • maxAbsElementIndex

        public int maxAbsElementIndex()
        Description copied from class: AVector
        Returns the index of the maximum absolute element of a vector
        Overrides:
        maxAbsElementIndex in class AVector
        Returns:
      • minElementIndex

        public int minElementIndex()
        Description copied from class: AVector
        Returns the index of the minimum element of a vector
        Overrides:
        minElementIndex in class AVector
      • negate

        public void negate()
        Description copied from class: AVector
        Negates all emlements of this vector in place.
        Specified by:
        negate in interface INDArray
        Overrides:
        negate in class AVector
      • applyOp

        public void applyOp(Op op)
        Description copied from interface: INDArray
        Applies a unary operator to all elements of the array (in-place)
        Specified by:
        applyOp in interface INDArray
        Overrides:
        applyOp in class AVector
      • abs

        public void abs()
        Description copied from interface: INDArray
        Replaces all elements of this array with their absolute values, according to Math.abs(double)
        Specified by:
        abs in interface INDArray
        Overrides:
        abs in class AVector
      • get

        public double get(int i)
        Description copied from interface: INDArray
        Returns the double value at the specified position in a 1D vector
        Specified by:
        get in interface INDArray
        Specified by:
        get in interface IVector
        Specified by:
        get in class AVector
      • unsafeGet

        public double unsafeGet(int i)
        Description copied from class: AVector
        Like get, but performs no bounds checking. Results are undefined if the index is out of range
        Overrides:
        unsafeGet in class AVector
      • isFullyMutable

        public boolean isFullyMutable()
        Description copied from class: AVector
        Returns true if this vector is fully mutable, i.e. can contain any unconstrained double values
        Specified by:
        isFullyMutable in interface INDArray
        Overrides:
        isFullyMutable in class AVector
      • isMutable

        public boolean isMutable()
        Description copied from class: AVector
        Returns true if this vector is mutable.
        Specified by:
        isMutable in interface INDArray
        Overrides:
        isMutable in class AVector
      • nonZeroIndices

        public int[] nonZeroIndices()
        Description copied from class: AVector
        Return an int array specifying the positions in this vector which are non-zero
        Overrides:
        nonZeroIndices in class ASparseIndexedVector
        Returns:
      • set

        public void set(AVector v)
        Description copied from class: AVector
        Sets the vector to equal the value of another vector
        Overrides:
        set in class AVector
      • set

        public void set(int i,
                        double value)
        Description copied from interface: INDArray
        Sets a value at a given position in a mutable 1D array
        Specified by:
        set in interface INDArray
        Specified by:
        set in interface IVector
        Specified by:
        set in class AVector
      • addAt

        public void addAt(int i,
                          double value)
        Description copied from class: AVector
        Adds a value to a specific element of the vector This function does not perform bounds checking, i.e. is an unsafe operation
        Overrides:
        addAt in class AVector
      • nonZeroValues

        public double[] nonZeroValues()
        Description copied from class: AVector
        Return an double array specifying the values in this vector which are non-zero
        Overrides:
        nonZeroValues in class AVector
        Returns:
      • nonSparseIndex

        public Index nonSparseIndex()
        Description copied from class: AVector
        Returns an Index indicating which elements of this vector are defined as non-sparse. A sparse index must be zero. A non-sparse element may be zero, but is typically expected be non-zero.
        Specified by:
        nonSparseIndex in interface ISparseVector
        Specified by:
        nonSparseIndex in class ASparseVector
        Returns:
      • dense

        public Vector dense()
        Description copied from interface: INDArray
        Coerces this INDArray to a dense format, without changing its element values. May return the same INDArray if already dense. May also mutate the internal structure of the original NDArray, or create a view over parts of the original INDArray. You should take a defensive copy of the original NDArray if any of this concerns you. The returned dense array may not be fully mutable in all elements.
        Specified by:
        dense in interface INDArray
        Overrides:
        dense in class AVector
      • mutable

        public SparseIndexedVector mutable()
        Description copied from class: AVector
        Coerces to a mutable version of a vector. May or may not be a copy, but guaranteed to be fully mutable
        Specified by:
        mutable in interface INDArray
        Overrides:
        mutable in class AVector
      • clone

        public SparseIndexedVector clone()
        Description copied from class: AVector
        Clones the vector, creating a new mutable copy of all data. The clone is: - not guaranteed to be of the same type. - guaranteed to be fully mutable - guaranteed not to contain a reference (i.e. is a full deep copy)
        Specified by:
        clone in interface INDArray
        Specified by:
        clone in interface IVector
        Overrides:
        clone in class ASparseVector
      • validate

        public void validate()
        Description copied from interface: INDArray
        Validates the internal data structure of the INDArray. Throws an exception on failure. Failure indicates a serious bug and/or data corruption.
        Specified by:
        validate in interface INDArray
        Overrides:
        validate in class AVector

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.