Package com.fahmatrix

Class Series

java.lang.Object
com.fahmatrix.Series

public class Series extends Object
Series is the basic object for one column

Current Features:
Select single cell data
Print in System Console
  • Constructor Details

    • Series

      public Series(List<Object> values, List<String> index)
      Constructor
      Parameters:
      values - column data (Array of cells data)
      index - Array of indexes
  • Method Details

    • get

      public Object get(int position)
      Get certain cell data
      Parameters:
      position - position in numbers starting from 0
      Returns:
      cell value as object (String, Double, Float, etc..)
    • get

      public Object get(String indexValue)
      Get certain cell data by index name

      Note: the index value is different than the column name

      Parameters:
      indexValue - index by value string
      Returns:
      cell value as object (String, Double, Float, etc..)
    • print

      public void print()
      Pretty Print in System Console
    • count

      public long count()
      Returns count of non-null values
      Returns:
      count
    • min

      public OptionalDouble min()
      Returns minimum value (works with Number types)
      Returns:
      minimum value
    • max

      public OptionalDouble max()
      Returns maximum value (works with Number types)
      Returns:
      maximum value
    • sum

      public OptionalDouble sum()
      Sum of values (works with Number types)
      Returns:
      sum
    • mean

      public OptionalDouble mean()
      Average of values (works with Number types)
      Returns:
      Average
    • median

      public OptionalDouble median()
      Median of values (works with Number types)
      Returns:
      Median
    • stdDev

      public OptionalDouble stdDev()
      Standard deviation of values (works with Number types)
      Returns:
      Standard deviation
    • percentiles

      public Map<Double,Double> percentiles()
      Calculate percentiles (25%, 50%, 75% by default)
      Returns:
      Map of percentiles (e.g., {25=Q1, 50=median, 75=Q3})
    • percentiles

      public Map<Double,Double> percentiles(double[] percentiles)
      Calculate custom percentiles using parallel processing (works with Number types)
      Parameters:
      percentiles - array of percentiles to compute (e.g., 25.0, 50.0, 75.0)
      Returns:
      Map of requested percentiles
    • quantile25

      public OptionalDouble quantile25()
      Calculate percentile 25% (works with Number types)
      Returns:
      percentile 25%
    • quantile50

      public OptionalDouble quantile50()
      Calculate percentile 50% -aka median- (works with Number types)
      Returns:
      percentile 50%
    • quantile75

      public OptionalDouble quantile75()
      Calculate percentile 75% (works with Number types)
      Returns:
      percentile 75%
    • percentile

      public OptionalDouble percentile(double p)
      Calculate percentile for certain value (works with Number types)
      Parameters:
      p - percent 0% - 100%
      Returns:
      percentile p%
    • processInParallel

      public double[] processInParallel(DoubleUnaryOperator function)
      Parallel value processing with custom function (works with Number types)
      Parameters:
      function - custom mapping/processing function
      Returns:
      array of proccessed data
    • forEachParallel

      public void forEachParallel(Consumer<Object> action)
      Thread-safe value processing using Consumer action (works with Number types)
      Parameters:
      action - custom mapping/processing action