Prototype and testing examples.
[CommonLispStat.git] / ls-user.lisp
blob11f491b75a048e6255592e383202b86791476bcc
1 ;;; -*- mode: lisp -*-
2 ;;; Copyright (c) 2005--2007, by A.J. Rossini <blindglobe@gmail.com>
3 ;;; See COPYRIGHT file for any additional restrictions (BSD license).
4 ;;; Since 1991, ANSI was finally finished. Edited for ANSI Common Lisp.
6 (defpackage :lisp-stat
7 (:documentation "Experimentation package for LispStat. Serious work
8 should be packaged up elsewhere for reproducibility.")
9 (:use :common-lisp
10 :lisp-stat-object-system
11 :lisp-stat-compound-data
12 :lisp-stat-probability
13 :lisp-stat-fastmap
14 :lisp-stat-types
15 :lisp-stat-float
16 :lisp-stat-basics
17 :lisp-stat-math
18 :lisp-stat-matrix
19 :lisp-stat-linalg
20 :lisp-stat-regression-linear)
21 (:shadowing-import-from :lisp-stat-object-system
22 slot-value call-method call-next-method)
23 (:shadowing-import-from :lisp-stat-math
24 expt + - * / ** mod rem abs 1+ 1- log exp sqrt sin cos tan
25 asin acos atan sinh cosh tanh asinh acosh atanh float random
26 truncate floor ceiling round minusp zerop plusp evenp oddp
27 < <= = /= >= > complex conjugate realpart imagpart phase
28 min max logand logior logxor lognot ffloor fceiling
29 ftruncate fround signum cis)
30 (:export
32 ;; lsobjects :
33 defproto defmeth send
35 ;; fastmap :
36 fastmap
38 ;; lstypes
39 fixnump check-nonneg-fixnum check-one-fixnum
40 check-one-real check-one-number
42 ;; lsmacros
44 ;; lsfloat :
45 machine-epsilon
47 ;; compound :
48 compound-data-p *compound-data-proto* compound-object-p
49 compound-data-seq compound-data-length
50 element-list element-seq
51 sort-data order rank
52 recursive-map-elements map-elements
53 repeat
54 check-sequence
55 get-next-element make-next-element set-next-element
56 sequencep iseq
57 ordered-nneg-seq
58 select which
59 difference rseq
61 ;; lsmath.lsp
62 ^ ** expt + - * / mod rem pmin pmax abs 1+ 1- log exp sqrt sin cos
63 tan asin acos atan sinh cosh tanh asinh acosh atanh float random
64 truncate floor ceiling round minusp zerop plusp evenp oddp < <= =
65 /= >= > complex conjugate realpart imagpart phase min max
66 logand logior logxor lognot ffloor fceiling ftruncate fround
67 signum cis
69 ;; matrices.lisp
70 matrixp num-rows num-cols matmult identity-matrix diagonal row-list
71 column-list inner-product outer-product cross-product transpose
72 bind-columns bind-rows
74 ;; linalg.lisp
75 chol-decomp lu-decomp lu-solve determinant inverse
76 sv-decomp qr-decomp rcondest make-rotation spline
77 kernel-dens kernel-smooth
78 fft make-sweep-matrix sweep-operator ax+y eigen
79 check-real
80 covariance-matrix matrix print-matrix solve
81 backsolve eigenvalues eigenvectors accumulate cumsum combine
82 lowess
84 ;; in linalg.lisp, possibly not supported by matlisp
85 spline kernel-dens kernel-smooth
87 ;; optimize.lsp
88 newtonmax nelmeadmax
90 ;; lispstat-macros
91 make-rv-function make-rv-function-1
93 ;; data.lisp
96 ;; statistics.lsp
97 open-file-dialog read-data-file read-data-columns load-data
98 load-example *variables* *ask-on-redefine* def variables savevar
99 undef standard-deviation quantile median interquartile-range
100 fivnum covariance-matrix difference rseq matrix print-matrix solve
101 backsolve eigenvalues eigenvectors accumulate cumsum combine
102 lowess
104 ;; dists
105 log-gamma set-seed
106 uniform-rand normal-cdf normal-quant normal-dens
107 normal-rand bivnorm-cdf cauchy-cdf cauchy-quant cauchy-dens
108 cauchy-rand gamma-cdf gamma-quant gamma-dens gamma-rand
109 chisq-cdf chisq-quant chisq-dens chisq-rand beta-cdf beta-quant
110 beta-dens beta-rand t-cdf t-quant t-dens t-rand f-cdf f-quant
111 f-dens f-rand poisson-cdf poisson-quant poisson-pmf poisson-rand
112 binomial-cdf binomial-quant binomial-pmf binomial-rand
114 ;;; Here is where we have a problem -- lispstat core should be core
115 ;;; data management and config problems, with packages providing
116 ;;; specialized extensions to LispStat, i.e. regression, nonlin
117 ;;; regression, bayesian regression via laplace approximation, etc.
119 ;;; The following could be considered "recommended packages", similar
120 ;;; to the idea of the recommended packages in R.
122 ;; regression.lsp
123 regression-model regression-model-proto x y intercept sweep-matrix
124 basis weights included total-sum-of-squares residual-sum-of-squares
125 predictor-names response-name case-labels
127 ;; nonlin.lsp
128 nreg-model nreg-model-proto mean-function theta-hat epsilon
129 count-limit verbose
131 ;; bayes.lsp
132 bayes-model bayes-model-proto bayes-internals))
134 (defpackage :lisp-stat-user
135 (:documentation "Experimentation package for LispStat.
136 Serious work should be placed in a similar package elsewhere for
137 reproducibility. But this should hint as to what needs to be
138 done for a user- or analysis-package.")
139 (:nicknames :ls-user)
140 (:use :common-lisp
141 :lisp-stat)
142 (:shadowing-import-from :lisp-stat
143 slot-value call-method call-next-method
145 expt + - * / ** mod rem abs 1+ 1- log exp sqrt sin cos tan
146 asin acos atan sinh cosh tanh asinh acosh atanh float random
147 truncate floor ceiling round minusp zerop plusp evenp oddp
148 < <= = /= >= > complex conjugate realpart imagpart phase
149 min max logand logior logxor lognot ffloor fceiling
150 ftruncate fround signum cis
152 <= float imagpart))