object MomentsGroup extends MomentsMonoid with Group[Moments] with CommutativeGroup[Moments]
This should not be used as a group (avoid negate and minus). It was wrongly believed that this was a group for several years in this code, however it was only being tested with positive counts (which is to say the generators were too weak). It isn't the case that minus and negate are totally wrong but (a - a) + b in general isn't associative: it won't equal a - (a - b) which it should.
- Annotations
- @deprecated
- Deprecated
(Since version 0.13.8) use Moments.momentsMonoid, this isn't lawful for negative counts
- Alphabetic
- By Inheritance
- MomentsGroup
- CommutativeGroup
- Group
- AdditiveGroup
- Group
- MomentsMonoid
- CommutativeMonoid
- CommutativeSemigroup
- Monoid
- AdditiveMonoid
- Monoid
- Semigroup
- AdditiveSemigroup
- Semigroup
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def additive: algebra.Group[Moments]
These are from algebra.Monoid
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def assertNotZero(v: Moments): Unit
- Definition Classes
- Monoid
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def combine(l: Moments, r: Moments): Moments
- Definition Classes
- Semigroup → Semigroup
- def combineAll(t: TraversableOnce[Moments]): Moments
- Definition Classes
- Monoid → Monoid
- def combineAllOption(as: IterableOnce[Moments]): Option[Moments]
- Definition Classes
- Monoid → Semigroup
- def combineN(a: Moments, n: Int): Moments
- Definition Classes
- Group → Monoid → Semigroup
- def empty: Moments
- Definition Classes
- Monoid → Monoid
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def inverse(v: Moments): Moments
- Definition Classes
- Group → Group
- def isEmpty(a: Moments)(implicit ev: Eq[Moments]): Boolean
- Definition Classes
- Monoid
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isNonZero(v: Moments): Boolean
- Definition Classes
- Monoid
- def isZero(a: Moments)(implicit ev: Eq[Moments]): Boolean
- Definition Classes
- AdditiveMonoid
- def minus(x: Moments, y: Moments): Moments
- Definition Classes
- AdditiveGroup
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def negate(a: Moments): Moments
- Definition Classes
- MomentsGroup → AdditiveGroup
- def nonZeroOption(v: Moments): Option[Moments]
- Definition Classes
- Monoid
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def plus(a: Moments, b: Moments): Moments
- Definition Classes
- MomentsMonoid → AdditiveSemigroup
- def positiveSumN(a: Moments, n: Int): Moments
- Attributes
- protected[this]
- Definition Classes
- AdditiveSemigroup
- def remove(l: Moments, r: Moments): Moments
- Definition Classes
- Group → Group
- def repeatedCombineN(a: Moments, n: Int): Moments
- Attributes
- protected[this]
- Definition Classes
- Semigroup
- def sum(vs: TraversableOnce[Moments]): Moments
- Definition Classes
- Monoid → AdditiveMonoid
- def sumN(a: Moments, n: Int): Moments
- Definition Classes
- AdditiveGroup → AdditiveMonoid → AdditiveSemigroup
- def sumOption(items: TraversableOnce[Moments]): Option[Moments]
Returns an instance of
T
calculated by summing all instances initer
in one pass.Returns an instance of
T
calculated by summing all instances initer
in one pass. ReturnsNone
ifiter
is empty, elseSome[T]
.- returns
None
ifiter
is empty, else an option value containing the summedT
- Definition Classes
- MomentsMonoid → Semigroup
- Note
Override if there is a faster way to compute this sum than
iter.reduceLeftOption
using plus.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def trySum(as: TraversableOnce[Moments]): Option[Moments]
- Definition Classes
- AdditiveMonoid → AdditiveSemigroup
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- val zero: Moments
- Definition Classes
- MomentsMonoid → AdditiveMonoid
Deprecated Value Members
- def getCombinedMean(n: Long, an: Double, k: Long, ak: Double): Double
Given two streams of doubles (n, an) and (k, ak) of form (count, mean), calculates the mean of the combined stream.
Given two streams of doubles (n, an) and (k, ak) of form (count, mean), calculates the mean of the combined stream.
Uses a more stable online algorithm which should be suitable for large numbers of records similar to: http://en.wikipedia.org/wiki/Algorithms_for_calculating_variance#Parallel_algorithm
we no longer use this, but we can't remove it due to binary compatibility
- Definition Classes
- MomentsMonoid
- Annotations
- @deprecated
- Deprecated
(Since version 0.13.8) Use Moments.getCombinedMeanDouble instead