Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
|
|
@ -0,0 +1,26 @@
|
|||
import scala.math.sqrt
|
||||
|
||||
object StddevCalc extends App {
|
||||
|
||||
def calcAvgAndStddev[T](ts: Iterable[T])(implicit num: Fractional[T]): (T, Double) = {
|
||||
def avg(ts: Iterable[T])(implicit num: Fractional[T]): T =
|
||||
num.div(ts.sum, num.fromInt(ts.size)) // Leaving with type of function T
|
||||
|
||||
val mean: T = avg(ts) // Leave val type of T
|
||||
// Root of mean diffs
|
||||
val stdDev = sqrt(ts.map { x =>
|
||||
val diff = num.toDouble(num.minus(x, mean))
|
||||
diff * diff
|
||||
}.sum / ts.size)
|
||||
|
||||
(mean, stdDev)
|
||||
}
|
||||
|
||||
println(calcAvgAndStddev(List(2.0E0, 4.0, 4, 4, 5, 5, 7, 9)))
|
||||
println(calcAvgAndStddev(Set(1.0, 2, 3, 4)))
|
||||
println(calcAvgAndStddev(0.1 to 1.1 by 0.05))
|
||||
println(calcAvgAndStddev(List(BigDecimal(120), BigDecimal(1200))))
|
||||
|
||||
println(s"Successfully completed without errors. [total ${scala.compat.Platform.currentTime - executionStart}ms]")
|
||||
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue