// Sum returns the (possibly weighted) sum of the Sample. func (s Sample) Sum() float64 { if s.Weights == nil { return vec.Sum(s.Xs) } sum := 0.0 for i, x := range s.Xs { sum += x * s.Weights[i] } return sum }
// Weight returns the total weight of the Sasmple. func (s Sample) Weight() float64 { if s.Weights == nil { return float64(len(s.Xs)) } return vec.Sum(s.Weights) }