File: maxima_206.html

package info (click to toggle)
maxima-sage 5.45.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, sid, trixie
  • size: 113,788 kB
  • sloc: lisp: 440,833; fortran: 14,665; perl: 14,369; tcl: 10,997; sh: 4,475; makefile: 2,520; ansic: 447; python: 262; xml: 59; awk: 37; sed: 17
file content (222 lines) | stat: -rwxr-xr-x 11,168 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 5.1, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Maxima 5.45.1 Manual: Introduction to descriptive</title>

<meta name="description" content="Maxima 5.45.1 Manual: Introduction to descriptive">
<meta name="keywords" content="Maxima 5.45.1 Manual: Introduction to descriptive">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="maxima_0.html#Top" rel="start" title="Top">
<link href="maxima_368.html#Function-and-Variable-Index" rel="index" title="Function and Variable Index">
<link href="maxima_toc.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="maxima_205.html#descriptive_002dpkg" rel="up" title="descriptive-pkg">
<link href="maxima_207.html#Functions-and-Variables-for-data-manipulation" rel="next" title="Functions and Variables for data manipulation">
<link href="maxima_205.html#descriptive_002dpkg" rel="previous" title="descriptive-pkg">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
body {color: black; background: white;  margin-left: 8%; margin-right: 13%;
      font-family: "FreeSans", sans-serif}
h1 {font-size: 150%; font-family: "FreeSans", sans-serif}
h2 {font-size: 125%; font-family: "FreeSans", sans-serif}
h3 {font-size: 100%; font-family: "FreeSans", sans-serif}
a[href] {color: rgb(0,0,255); text-decoration: none;}
a[href]:hover {background: rgb(220,220,220);}
div.textbox {border: solid; border-width: thin; padding-top: 1em;
    padding-bottom: 1em; padding-left: 2em; padding-right: 2em}
div.titlebox {border: none; padding-top: 1em; padding-bottom: 1em;
    padding-left: 2em; padding-right: 2em; background: rgb(200,255,255);
    font-family: sans-serif}
div.synopsisbox {
    border: none; padding-top: 1em; padding-bottom: 1em; padding-left: 2em;
    padding-right: 2em; background: rgb(255,220,255);}
pre.example {border: 1px solid rgb(180,180,180); padding-top: 1em;
    padding-bottom: 1em; padding-left: 1em; padding-right: 1em;
    background-color: rgb(238,238,255)}
div.spacerbox {border: none; padding-top: 2em; padding-bottom: 2em}
div.image {margin: 0; padding: 1em; text-align: center}
div.categorybox {border: 1px solid gray; padding-top: 0px; padding-bottom: 0px;
    padding-left: 1em; padding-right: 1em; background: rgb(247,242,220)}
img {max-width:80%; max-height: 80%; display: block; margin-left: auto; margin-right: auto}

-->
</style>

<link rel="icon" href="figures/favicon.ico">

</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Introduction-to-descriptive"></a>
<div class="header">
<p>
Next: <a href="maxima_207.html#Functions-and-Variables-for-data-manipulation" accesskey="n" rel="next">Functions and Variables for data manipulation</a>, Previous: <a href="maxima_205.html#descriptive_002dpkg" accesskey="p" rel="previous">descriptive-pkg</a>, Up: <a href="maxima_205.html#descriptive_002dpkg" accesskey="u" rel="up">descriptive-pkg</a> &nbsp; [<a href="maxima_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="maxima_368.html#Function-and-Variable-Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Introduction-to-descriptive-1"></a>
<h3 class="section">50.1 Introduction to descriptive</h3>

<p>Package <code>descriptive</code> contains a set of functions for 
making descriptive statistical computations and graphing. 
Together with the source code there are three data sets in 
your Maxima tree: <code>pidigits.data</code>, <code>wind.data</code> and <code>biomed.data</code>.
</p>
<p>Any statistics manual can be used as a reference to the functions in package <code>descriptive</code>.
</p>
<p>For comments, bugs or suggestions, please contact me at <var>&rsquo;riotorto AT yahoo DOT com&rsquo;</var>.
</p>
<p>Here is a simple example on how the descriptive functions in <code>descriptive</code> do they work, depending on the nature of their arguments, lists or matrices,
</p>
<div class="example">
<pre class="example">(%i1) load (&quot;descriptive&quot;)$
</pre><pre class="example">(%i2) /* univariate sample */   mean ([a, b, c]);
                            c + b + a
(%o2)                       ---------
                                3
</pre><pre class="example">(%i3) matrix ([a, b], [c, d], [e, f]);
                            [ a  b ]
                            [      ]
(%o3)                       [ c  d ]
                            [      ]
                            [ e  f ]
</pre><pre class="example">(%i4) /* multivariate sample */ mean (%);
                      e + c + a  f + d + b
(%o4)                [---------, ---------]
                          3          3
</pre></div>

<p>Note that in multivariate samples the mean is calculated for each column.
</p>
<p>In case of several samples with possible different sizes, the Maxima function <code>map</code> can be used to get the desired results for each sample,
</p>
<div class="example">
<pre class="example">(%i1) load (&quot;descriptive&quot;)$
</pre><pre class="example">(%i2) map (mean, [[a, b, c], [d, e]]);
                        c + b + a  e + d
(%o2)                  [---------, -----]
                            3        2
</pre></div>

<p>In this case, two samples of sizes 3 and 2 were stored into a list.
</p>
<p>Univariate samples must be stored in lists like
</p>
<div class="example">
<pre class="example">(%i1) s1 : [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];
(%o1)           [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
</pre></div>

<p>and multivariate samples in matrices as in
</p>
<div class="example">
<pre class="example">(%i1) s2 : matrix ([13.17, 9.29], [14.71, 16.88], [18.50, 16.88],
             [10.58, 6.63], [13.33, 13.25], [13.21,  8.12]);
                        [ 13.17  9.29  ]
                        [              ]
                        [ 14.71  16.88 ]
                        [              ]
                        [ 18.5   16.88 ]
(%o1)                   [              ]
                        [ 10.58  6.63  ]
                        [              ]
                        [ 13.33  13.25 ]
                        [              ]
                        [ 13.21  8.12  ]
</pre></div>

<p>In this case, the number of columns equals the random variable dimension and the number of rows is the sample size.
</p>
<p>Data can be introduced by hand, but big samples are usually stored in plain text files. For example, file <code>pidigits.data</code> contains the first 100 digits of number <code>%pi</code>:
</p><div class="example">
<pre class="example">      3
      1
      4
      1
      5
      9
      2
      6
      5
      3 ...
</pre></div>

<p>In order to load these digits in Maxima,
</p>
<div class="example">
<pre class="example">(%i1) s1 : read_list (file_search (&quot;pidigits.data&quot;))$
</pre><pre class="example">(%i2) length (s1);
(%o2)                          100
</pre></div>

<p>On the other hand, file <code>wind.data</code> contains daily average wind speeds at 5 meteorological stations in the Republic of Ireland (This is part of a data set taken at 12 meteorological stations. The original file is freely downloadable from the StatLib Data Repository and its analysis is discussed in Haslett, J., Raftery, A. E. (1989) <var>Space-time Modelling with Long-memory Dependence: Assessing Ireland&rsquo;s Wind Power Resource, with Discussion</var>. Applied Statistics 38, 1-50). This loads the data:
</p>
<div class="example">
<pre class="example">(%i1) s2 : read_matrix (file_search (&quot;wind.data&quot;))$
</pre><pre class="example">(%i2) length (s2);
(%o2)                          100
</pre><pre class="example">(%i3) s2 [%]; /* last record */
(%o3)            [3.58, 6.0, 4.58, 7.62, 11.25]
</pre></div>

<p>Some samples contain non numeric data. As an example, file <code>biomed.data</code> (which is part of another bigger one downloaded from the StatLib Data Repository) contains four blood measures taken from two groups of patients, <code>A</code> and <code>B</code>, of different ages,
</p>
<div class="example">
<pre class="example">(%i1) s3 : read_matrix (file_search (&quot;biomed.data&quot;))$
</pre><pre class="example">(%i2) length (s3);
(%o2)                          100
</pre><pre class="example">(%i3) s3 [1]; /* first record */
(%o3)            [A, 30, 167.0, 89.0, 25.6, 364]
</pre></div>

<p>The first individual belongs to group <code>A</code>, is 30 years old and his/her blood measures were 167.0, 89.0, 25.6 and 364.
</p>
<p>One must take care when working with categorical data. In the next example, symbol <code>a</code> is assigned a value in some previous moment and then a sample with categorical value <code>a</code> is taken,
</p>
<div class="example">
<pre class="example">(%i1) a : 1$
</pre><pre class="example">(%i2) matrix ([a, 3], [b, 5]);
                            [ 1  3 ]
(%o2)                       [      ]
                            [ b  5 ]
</pre></div>

<div class=categorybox>&middot;<p>Categories:&nbsp;&nbsp;<a href="maxima_369.html#Category_003a-Descriptive-statistics">Descriptive statistics</a>
&middot;<a href="maxima_369.html#Category_003a-Share-packages">Share packages</a>
&middot;<a href="maxima_369.html#Category_003a-Package-descriptive">Package descriptive</a>
</div></p>
<a name="Item_003a-descriptive_002fnode_002fFunctions-and-Variables-for-data-manipulation"></a><hr>
<div class="header">
<p>
Next: <a href="maxima_207.html#Functions-and-Variables-for-data-manipulation" accesskey="n" rel="next">Functions and Variables for data manipulation</a>, Previous: <a href="maxima_205.html#descriptive_002dpkg" accesskey="p" rel="previous">descriptive-pkg</a>, Up: <a href="maxima_205.html#descriptive_002dpkg" accesskey="u" rel="up">descriptive-pkg</a> &nbsp; [<a href="maxima_toc.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="maxima_368.html#Function-and-Variable-Index" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>