diff options
| author | Elizabeth Hunt <elizabeth.hunt@simponic.xyz> | 2023-10-10 14:44:33 -0600 |
|---|---|---|
| committer | Elizabeth Hunt <elizabeth.hunt@simponic.xyz> | 2023-10-10 14:44:33 -0600 |
| commit | 834bb45be7e74553f51da00bad95595666586a7c (patch) | |
| tree | 607a75849b4096711c6c61df580d542e3c92ffd8 /src/vector,least-squares.lisp | |
| parent | e46e5eee74af75aa1123b2370ff2f4587f4adc2a (diff) | |
| download | math-4610-834bb45be7e74553f51da00bad95595666586a7c.tar.gz math-4610-834bb45be7e74553f51da00bad95595666586a7c.zip | |
problem one hw 4
Diffstat (limited to 'src/vector,least-squares.lisp')
| -rw-r--r-- | src/vector,least-squares.lisp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/vector,least-squares.lisp b/src/vector,least-squares.lisp new file mode 100644 index 0000000..687af32 --- /dev/null +++ b/src/vector,least-squares.lisp @@ -0,0 +1,14 @@ +(in-package :lizfcm.vector) + +(defun least-squares-reg (x y) + (let* ((n (length x)) + (sum-y (reduce #'+ y)) + (sum-x (reduce #'+ x)) + (sum-xy (reduce #'+ (mapcar #'* x y))) + (sum-xsquared (reduce #'+ (mapcar #'* x x))) + (b (/ (- (* sum-y sum-xsquared) (* sum-x sum-xy)) + (- (* n sum-xsquared) (* sum-x sum-x)))) + (a (/ (- (* n sum-xy) (* sum-x sum-y)) + (- (* n sum-xsquared) (* sum-x sum-x))))) + (list a b))) + |
