Documentation of 'jsat.distributions.empirical.KernelDensityEstimator' Java class
KernelDensityEstimator
jsat.distributions.empirical

Class KernelDensityEstimator

  • All Implemented Interfaces:
    java.io.Serializable, java.lang.Cloneable


    public class KernelDensityEstimator
    extends ContinuousDistribution
    Kernel Density Estimator, KDE, uses the data set itself to approximate the underlying probability distribution using Kernel Functions.
    See Also:
    Serialized Form
    • Constructor Detail

      • KernelDensityEstimator

        public KernelDensityEstimator(Vec dataPoints)
      • KernelDensityEstimator

        public KernelDensityEstimator(Vec dataPoints,
                                      KernelFunction k)
      • KernelDensityEstimator

        public KernelDensityEstimator(Vec dataPoints,
                                      KernelFunction k,
                                      double[] weights)
      • KernelDensityEstimator

        public KernelDensityEstimator(Vec dataPoints,
                                      KernelFunction k,
                                      double h)
      • KernelDensityEstimator

        public KernelDensityEstimator(Vec dataPoints,
                                      KernelFunction k,
                                      double h,
                                      double[] weights)
    • Method Detail

      • BandwithGuassEstimate

        public static double BandwithGuassEstimate(Vec X)
      • autoKernel

        public static KernelFunction autoKernel(Vec dataPoints)
        Automatically selects a good Kernel function for the data set that balances Execution time and accuracy
        Parameters:
        dataPoints -
        Returns:
        a kernel that will work well for the given distribution
      • pdf

        public double pdf(double x)
        Description copied from class: ContinuousDistribution
        Computes the value of the Probability Density Function (PDF) at the given point
        Specified by:
        pdf in class ContinuousDistribution
        Parameters:
        x - the value to get the PDF
        Returns:
        the PDF(x)
      • cdf

        public double cdf(double x)
        Description copied from class: Distribution
        Computes the value of the Cumulative Density Function (CDF) at the given point. The CDF returns a value in the range [0, 1], indicating what portion of values occur at or below that point.
        Overrides:
        cdf in class ContinuousDistribution
        Parameters:
        x - the value to get the CDF of
        Returns:
        the CDF(x)
      • invCdf

        public double invCdf(double p)
        Description copied from class: Distribution
        Computes the inverse Cumulative Density Function (CDF-1) at the given point. It takes in a value in the range of [0, 1] and returns the value x, such that CDF(x) = p
        Overrides:
        invCdf in class ContinuousDistribution
        Parameters:
        p - the probability value
        Returns:
        the value such that the CDF would return p
      • min

        public double min()
        Description copied from class: Distribution
        The minimum value for which the #pdf(double) is meant to return a value. Note that Double.NEGATIVE_INFINITY is a valid return value.
        Specified by:
        min in class Distribution
        Returns:
        the minimum value for which the #pdf(double) is meant to return a value.
      • max

        public double max()
        Description copied from class: Distribution
        The maximum value for which the #pdf(double) is meant to return a value. Note that Double.POSITIVE_INFINITY is a valid return value.
        Specified by:
        max in class Distribution
        Returns:
        the maximum value for which the #pdf(double) is meant to return a value.
      • setBandwith

        public void setBandwith(double val)
        Sets the bandwidth used for smoothing. Higher values make the pdf smoother, but can obscure features. Too small a bandwidth will causes spikes at only the data points.
        Parameters:
        val - new bandwidth
      • getBandwith

        public double getBandwith()
        Returns:
        the bandwidth parameter
      • setVariable

        public void setVariable(java.lang.String var,
                                double value)
        Description copied from class: ContinuousDistribution
        Sets one of the variables of this distribution by the name.
        Specified by:
        setVariable in class ContinuousDistribution
        Parameters:
        var - the variable to set
        value - the value to set
      • setUsingData

        public void setUsingData(Vec data)
        Description copied from class: ContinuousDistribution
        Attempts to set the variables used by this distribution based on population sample data, assuming the sample data is from this type of distribution.
        Specified by:
        setUsingData in class ContinuousDistribution
        Parameters:
        data - the data to use to attempt to fit against
      • mean

        public double mean()
        Description copied from class: Distribution
        Computes the mean value of the distribution
        Overrides:
        mean in class ContinuousDistribution
        Returns:
        the mean value of the distribution
      • mode

        public double mode()
        Description copied from class: Distribution
        Computes the mode of the distribution. Not all distributions have a mode for all parameter values. NaN may be returned if the mode is not defined for the current values of the distribution.
        Overrides:
        mode in class ContinuousDistribution
        Returns:
        the mode of the distribution
      • variance

        public double variance()
        Description copied from class: Distribution
        Computes the variance of the distribution. Not all distributions have a finite variance for all parameter values. NaN may be returned if the variance is not defined for the current values of the distribution. Infinity is a possible value to be returned by some distributions.
        Overrides:
        variance in class ContinuousDistribution
        Returns:
        the variance of the distribution.
      • skewness

        public double skewness()
        Description copied from class: Distribution
        Computes the skewness of the distribution. Not all distributions have a finite skewness for all parameter values. NaN may be returned if the skewness is not defined for the current values of the distribution.
        Overrides:
        skewness in class ContinuousDistribution
        Returns:
        the skewness of the distribution.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • equals

        public boolean equals(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.