PasteRack.org
Paste # 21302
2023-11-18 15:53:32

Fork as a new paste.

Paste viewed 515 times.


Embed:

  1. #lang racket
  2. (define (outliers lon)
  3. (local
  4. [;; mean: (listof Num) -> Num
  5. (define (mean lon)
  6.   (cond
  7.      [(empty? lon) 0]
  8.      [else (/ (+ (first lon) (mean (rest lon))) (length lon))]))
  9.  
  10. ;; variance: (listof Num) -> Num
  11. (define (variance lon)
  12.   (cond
  13.      [(empty? lon) 0]
  14.      [else (/ (+ (sqr (- (first lon) mean)) (variance (rest lon))) mean)]))
  15.  
  16. (define (loOutliers lon)
  17.    (cond
  18.       [(empty? lon) empty]
  19.       [(> (first lon) variance) (cons (first lon) (rest loOutliers))]
  20.       [else (rest loOutliers)]))]))

=>

eval:2:0: local: bad syntax

  in: (local ((define (mean lon) (cond ((empty? lon) 0)

(else (/ (+ (first lon) (mean (rest lon))) (length lon)))))

(define (variance lon) (cond ((empty? lon) 0) (else (/ (+

(sqr (- (first lon) mean)) (variance (rest lon))) mean))))

(define (loOutliers lon) (...