::
Library : nimcx.nim Module : cxstats.nim Status : stable License : MIT opensource Latest : 2020-06-12 Compiler : latest stable or devel branch OS : Linux Description : provides functions pertaining to statistcs and calculations
Procs
proc median(xs: openArray[float]): float {....raises: [], tags: [], forbids: [].}
proc rolling_zscore(data: openArray[float]; observed_window: openArray[float]; decay: float = 0.9): float {....raises: [], tags: [], forbids: [].}
proc showRegression(rr: RunningRegress; n: int = 5; xpos: int = 1) {. ...raises: [IOError, ValueError], tags: [WriteIOEffect], forbids: [].}
-
showRegression
Displays RunningRegress data from an already formed RunningRegress
proc showRegression(x, y: openArray[float | int]; n: int = 5; xpos: int = 1)
-
showRegression
quickly display RunningRegress data based on input of two openarray data series
import nimcx var a = @[1,2,3,4,5] var b = @[1,2,3,4,7] showRegression(a,b)
proc showStats(x: RunningStat; n: int = 3; xpos: int = 1) {. ...raises: [IOError, ValueError], tags: [WriteIOEffect], forbids: [].}
-
showStats
quickly display runningStat data
adjust decimals default n = 3 as needed
import nimcx var rsa:Runningstat var rsb:Runningstat for x in 1 .. 100: cleanscreen() decho(2) rsa.clear rsb.clear var a = createSeqint(500,0,100000) var b = createSeqint(500,0,100000) rsa.push(a) rsb.push(b) showStats(rsa,5) curup(14) showStats(rsb,5,xpos = 40) decho(2) printLnBiCol("Regression Run : " & $x) showRegression(a,b,xpos = 20) sleepy(0.05) curup(4) curdn(6) doFinish()
proc zscore(data: openArray[SomeNumber]): seq[float] {.inline.}
-
zscore
returns the z-score in a seqfloat for each data point
import nimcx printLn("DATA SERIES FLOAT",yellowgreen,xpos=2) let data = createSeqFloat(12) showSeq(data,maxitemwidth=8) printLn("ZSCORE",salmon,xpos=2) showSeq(zscore(data),maxitemwidth=8) decho(3) printLn("DATA SERIES INTEGER",yellowgreen,xpos=2) let data2 = createSeqint(12,1,1000) showSeq(data2,maxitemwidth=8) printLn("ZSCORE",salmon,xpos=2) showSeq(zscore(data2),maxitemwidth=8) doFinish()