June 2018 Update

This commit is contained in:
Ingy döt Net 2018-06-22 20:57:24 +00:00
parent ba8067c3b7
commit 22f33d4004
5278 changed files with 84726 additions and 14379 deletions

View file

@ -1 +1 @@
fun rootMeanSq(l): sqrt(mean(l²))
sqrt(mean(x²))

View file

@ -0,0 +1,16 @@
import extensions.
import system'routines.
import system'math.
extension op
{
rootMeanSquare
[
^ (self selectBy(:x)(x * x); summarize(Real new) / self length) sqrt.
]
}
public program =
[
console printLine(Range new(1, 10); rootMeanSquare)
].

View file

@ -0,0 +1,26 @@
(declare scm.sqrt [number --> number])
(tc +)
(define mean
{ (list number) --> number }
Xs -> (/ (sum Xs) (length Xs)))
(define square
{ number --> number }
X -> (* X X))
(define rms
{ (list number) --> number }
Xs -> (scm.sqrt (mean (map (function square) Xs))))
(define iota-h
{ number --> number --> (list number) }
X X -> [X]
X Lim -> (cons X (iota-h (+ X 1) Lim)))
(define iota
{ number --> (list number) }
Lim -> (iota-h 1 Lim))
(output "~A~%" (rms (iota 10)))

View file

@ -0,0 +1 @@
func rms(a) { a »**» 2 «+» / a.len -> sqrt }

View file

@ -0,0 +1,7 @@
program rms, rclass
syntax varname(numeric) [if] [in]
tempvar x
gen `x'=`varlist'^2 `if' `in'
qui sum `x' `if' `in'
return scalar rms=sqrt(r(mean))
end

View file

@ -0,0 +1,11 @@
clear
set obs 20
gen x=rnormal()
rms x
di r(rms)
1.0394189
rms x if x>0
di r(rms)
.7423647