Use 1//2 instead of ((rat simp) 1 2)
[maxima.git] / doc / info / pt_BR / descriptive.texi
blobad9f00ab7e29ed2b0bf04eccc2832a9af3ede85b
1 @c Language: Brazilian Portuguese, Encoding: iso-8859-1
2 @c /descriptive.texi/1.10/Sat Jun  2 00:13:14 2007//
3 @menu
4 * Introdução ao pacote descriptive::
5 * Funções e Variáveis Definidas para manipulação da dados::
6 * Funções e Variáveis Definidas para estatística descritiva::
7 * Funções e Variáveis Definidas específicas para estatística descritiva de várias variáveis::
8 * Funções e Variáveis Definidas para gráficos estatísticos::
9 @end menu
11 @node Introdução ao pacote descriptive, Funções e Variáveis Definidas para manipulação da dados, descriptive, descriptive
12 @section Introdução ao pacote descriptive
14 O pacote @code{descriptive} contém um conjunto de funções para fazer cálculos de estatística descritiva e desenhar gráficos. Juntamente com o código fonte três conjuntos de dados em suar árvore do Maxima: @code{pidigits.data}, @code{wind.data} e @code{biomed.data}. Eles também podem ser baixados a partir de @code{www.biomates.net}.
16 Qualque manual de estatística pode ser usado como referência para as funções no pacote @code{descriptive}.
18 Para comentários, erros ou sugestões, por favor entre em contato comigo em @var{'mario AT edu DOT xunta DOT es'}.
20 Aqui está um exemplo sobre como as funções de estatística descritiva no pacote @code{descriptive} fazem esse trabalho, dependendo da natureza de seus argumentos, listas e matrizes,
22 @c ===beg===
23 @c load ("descriptive")$
24 @c /* univariate sample */   mean ([a, b, c]);
25 @c matrix ([a, b], [c, d], [e, f]);
26 @c /* amostra de várias variáveis */ mean (%);
27 @c ===end===
28 @example
29 (%i1) load ("descriptive")$
30 (%i2) /* univariate sample */   mean ([a, b, c]);
31                             c + b + a
32 (%o2)                       ---------
33                                 3
34 (%i3) matrix ([a, b], [c, d], [e, f]);
35                             [ a  b ]
36                             [      ]
37 (%o3)                       [ c  d ]
38                             [      ]
39                             [ e  f ]
40 (%i4) /* amostra de várias variáveis */ mean (%);
41                       e + c + a  f + d + b
42 (%o4)                [---------, ---------]
43                           3          3
44 @end example
46 Note que em amostras de várias variáveis a média é calculada em cada coluna.
48 No caso de muitas amostras amostras com possíveis tamanhos diferentes, A função do Maxima @code{map} pode ser usada para pegar os resultados desejados de cada amostra,
50 @c ===beg===
51 @c load ("descriptive")$
52 @c map (mean, [[a, b, c], [d, e]]);
53 @c ===end===
54 @example
55 (%i1) load ("descriptive")$
56 (%i2) map (mean, [[a, b, c], [d, e]]);
57                         c + b + a  e + d
58 (%o2)                  [---------, -----]
59                             3        2
60 @end example
62 Nesse caso, duas amostras de tamanhos 3 e 2 foram armazenadas em uma lista.
64 Amostras de uma única variável devem ser armazenadas em listas como
66 @c ===beg===
67 @c s1 : [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];
68 @c ===end===
69 @example
70 (%i1) s1 : [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5];
71 (%o1)           [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
72 @end example
74 e amostras de várias variáveis em matrizes como em
76 @c ===beg===
77 @c s2 : matrix ([13.17, 9.29], [14.71, 16.88], [18.50, 16.88],
78 @c              [10.58, 6.63], [13.33, 13.25], [13.21,  8.12]);
79 @c ===end===
80 @example
81 (%i1) s2 : matrix ([13.17, 9.29], [14.71, 16.88], [18.50, 16.88],
82              [10.58, 6.63], [13.33, 13.25], [13.21,  8.12]);
83                         [ 13.17  9.29  ]
84                         [              ]
85                         [ 14.71  16.88 ]
86                         [              ]
87                         [ 18.5   16.88 ]
88 (%o1)                   [              ]
89                         [ 10.58  6.63  ]
90                         [              ]
91                         [ 13.33  13.25 ]
92                         [              ]
93                         [ 13.21  8.12  ]
94 @end example
96 Nesse caso, o número de colunas é igual à dimensão (ao número) de variáveis e o n;umero de linhas é o tamano da amostra.
98 Dados podem ser introduzidos manualmente, mas grandes amostras são usualmente armazenadas em arquivos no formato texto plano. Por exemplo, o arquivo @code{pidigits.data} contém os primeiros 100 dígitos do número @code{%pi}:
99 @example
100       3
101       1
102       4
103       1
104       5
105       9
106       2
107       6
108       5
109       3 ...
110 @end example
112 Com o objetivo de chamar esses dígitos no Maxima,
114 @c ===beg===
115 @c load ("numericalio")$
116 @c s1 : read_list (file_search ("pidigits.data"))$
117 @c length (s1);
118 @c ===end===
119 @example
120 (%i1) load ("numericalio")$
121 (%i2) s1 : read_list (file_search ("pidigits.data"))$
122 (%i3) length (s1);
123 (%o3)                          100
124 @end example
126 Por outro lado, o arquivo @code{wind.data} contém a média diária de velocidades do ventoem 5 estações meteorológicas na República da Irlanda (Esses dados são parte de um conjunto de dados tomados em 12 estações meteorológicas. O arquivo original está disponivel livremente para download no Repositório de Dados StatLib e sua análise é discutida em Haslett, J., Raftery, A. E. (1989) @var{Space-time Modelling with Long-memory Dependence: Assessing Ireland's Wind Power Resource, with Discussion}. Applied Statistics 38, 1-50). As linhas seguintes mostram como tornar os dados disponíveis para o Maxima:
128 @c ===beg===
129 @c load ("numericalio")$
130 @c s2 : read_matrix (file_search ("wind.data"))$
131 @c length (s2);
132 @c s2 [%]; /* last record */
133 @c ===end===
134 @example
135 (%i1) load ("numericalio")$
136 (%i2) s2 : read_matrix (file_search ("wind.data"))$
137 (%i3) length (s2);
138 (%o3)                          100
139 (%i4) s2 [%]; /* last record */
140 (%o4)            [3.58, 6.0, 4.58, 7.62, 11.25]
141 @end example
143 Algumas amostras possuem dados não numéricos. Como um exemplo, o arquivo @code{biomed.data} (que é parte de outro grande arquivo tomado do Repósitório de Dados StatLib) contém quatro medidas sang@"{u}íneas tomadas de dois grupos de pacientes, @code{A} e @code{B}, de diferentes idades,
145 @c ===beg===
146 @c load ("numericalio")$
147 @c s3 : read_matrix (file_search ("biomed.data"))$
148 @c length (s3);
149 @c s3 [1]; /* first record */
150 @c ===end===
151 @example
152 (%i1) load ("numericalio")$
153 (%i2) s3 : read_matrix (file_search ("biomed.data"))$
154 (%i3) length (s3);
155 (%o3)                          100
156 (%i4) s3 [1]; /* first record */
157 (%o4)            [A, 30, 167.0, 89.0, 25.6, 364]
158 @end example
160 O primeiro indivíduo pertence ao grupo @code{A}, com 30 anos de idade e suas medidas sang@"{u}íneas foram 167.0, 89.0, 25.6 e 364.
162 Se deve tomar cuidado quando se trabalha com dados divididos por categorias. no exemplo seguinte, ao símbolo @code{a} é atribuído um valor em algum momento anterior e então a amostra com valores divididos por categoria @code{a} é interpretada como,
164 @c ===beg===
165 @c a : 1$
166 @c matrix ([a, 3], [b, 5]);
167 @c ===end===
168 @example
169 (%i1) a : 1$
170 (%i2) matrix ([a, 3], [b, 5]);
171                             [ 1  3 ]
172 (%o2)                       [      ]
173                             [ b  5 ]
174 @end example
178 @node Funções e Variáveis Definidas para manipulação da dados, Funções e Variáveis Definidas para estatística descritiva, Introdução ao pacote descriptive, descriptive
179 @section Funções e Variáveis Definidas para manipulação da dados
181 @deffn {Função} continuous_freq (@var{list})
182 @deffnx {Função} continuous_freq (@var{list}, @var{m})
183 O argumetno de @code{continuous_freq} deve ser uma lista de números, que serão então agrupadas em intervalos e contado quantos desses dados pertencem a cada grupo. Opcionalmente, a função @code{continuous_freq} admite um segundo argumento indicando o número de classes, 10 é o valor padrão,
185 @c ===beg===
186 @c load ("numericalio")$
187 @c load ("descriptive")$
188 @c s1 : read_list (file_search ("pidigits.data"))$
189 @c continuous_freq (s1, 5);
190 @c ===end===
191 @example
192 (%i1) load ("numericalio")$
193 (%i2) load ("descriptive")$
194 (%i3) s1 : read_list (file_search ("pidigits.data"))$
195 (%i4) continuous_freq (s1, 5);
196 (%o4) [[0, 1.8, 3.6, 5.4, 7.2, 9.0], [16, 24, 18, 17, 25]]
197 @end example
199 A primeira lista contém os limites de intervalos e o segundo a correspondente contagem: existem 16 algarismos da parte decimal de @code{%pi} dentro do intervalo @code{[0, 1.8]}, isto é 0's e 1's, 24 algarismos em @code{(1.8, 3.6]}, isto é 2's e 3's, e assim por diante.
200 @end deffn
204 @deffn {Função} discrete_freq (@var{list})
205 Conta as freq@"{u}ências absolutas em amostras discretas, em amostras numéricas e em amostras divididas em categorias. Seu único argumento é uma lista,
207 @c ===beg===
208 @c load ("descriptive")$
209 @c load ("numericalio")$
210 @c s1 : read_list (file_search ("pidigits.data"));
211 @c discrete_freq (s1);
212 @c ===end===
213 @example
214 (%i1) load ("descriptive")$
215 (%i2) load ("numericalio")$
216 (%i3) s1 : read_list (file_search ("pidigits.data"));
217 (%o3) [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9, 3, 2, 3, 8, 
218 4, 6, 2, 6, 4, 3, 3, 8, 3, 2, 7, 9, 5, 0, 2, 8, 8, 4, 1, 9, 7, 
219 1, 6, 9, 3, 9, 9, 3, 7, 5, 1, 0, 5, 8, 2, 0, 9, 7, 4, 9, 4, 4, 
220 5, 9, 2, 3, 0, 7, 8, 1, 6, 4, 0, 6, 2, 8, 6, 2, 0, 8, 9, 9, 8, 
221 6, 2, 8, 0, 3, 4, 8, 2, 5, 3, 4, 2, 1, 1, 7, 0, 6, 7]
222 (%i4) discrete_freq (s1);
223 (%o4) [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9], 
224                              [8, 8, 12, 12, 10, 8, 9, 8, 12, 13]]
225 @end example
227 A primeira lista fornece os valores da amostra e a segunda seuas freq@"{u}ências absolutas. Os comandos @code{? col} e @code{? transpose} podem ajudar a você a entender a última entrada.
228 @end deffn
232 @deffn {Função} subsample (@var{matriz_de_dados}, @var{expressão_lógica})
233 @deffnx {Função} subsample (@var{matriz_de_dados}, @var{expressão_lógica}, @var{col_num}, @var{col_num}, ...)
234 Essas funções são um tipo de variação da função @code{submatrix} do Maxima. O primeiro argumento é o nome da matriz de dados, o segundo argumento é uma expressão lógica que recebeu apóstrofo e os argumentos opcionais adicionais são o número de colunas a serem tomadas. Esse comportamento é melhor entendido com exemplos,
236 @c ===beg===
237 @c load ("descriptive")$
238 @c load ("numericalio")$
239 @c s2 : read_matrix (file_search ("wind.data"))$
240 @c subsample (s2, '(%c[1] > 18));
241 @c ===end===
242 @example
243 (%i1) load ("descriptive")$
244 (%i2) load ("numericalio")$
245 (%i3) s2 : read_matrix (file_search ("wind.data"))$
246 (%i4) subsample (s2, '(%c[1] > 18));
247               [ 19.38  15.37  15.12  23.09  25.25 ]
248               [                                   ]
249               [ 18.29  18.66  19.08  26.08  27.63 ]
250 (%o4)         [                                   ]
251               [ 20.25  21.46  19.95  27.71  23.38 ]
252               [                                   ]
253               [ 18.79  18.96  14.46  26.38  21.84 ]
254 @end example
256 Existem registros de várias variáveis nos quais a velocidade do vento na primeira estação meteorológica foram maiores que 18. Veja que na expressão lógica que recebeu apóstrofo o @var{i}-ésimo componente é referenciado como @code{%c[i]}. O símbolo @code{%c[i]} é usado dentro da função @code{subsample}, portanto quando usado como uma variável de uma categoria, Maxima fica confuso. No seguinte exemplo, requisitamos somente o primeiro, o segundo e o quinto componentes desses registro com velocidades de vento maiores que ou igual a 16 nós na estação meteorológica número 1 e menor que 25 nós na estação meteorológica número 4,
258 @c ===beg===
259 @c load ("descriptive")$
260 @c load ("numericalio")$
261 @c s2 : read_matrix (file_search ("wind.data"))$
262 @c subsample (s2, '(%c[1] >= 16 and %c[4] < 25), 1, 2, 5);
263 @c ===end===
264 @example
265 (%i1) load ("descriptive")$
266 (%i2) load ("numericalio")$
267 (%i3) s2 : read_matrix (file_search ("wind.data"))$
268 (%i4) subsample (s2, '(%c[1] >= 16 and %c[4] < 25), 1, 2, 5);
269                      [ 19.38  15.37  25.25 ]
270                      [                     ]
271                      [ 17.33  14.67  19.58 ]
272 (%o4)                [                     ]
273                      [ 16.92  13.21  21.21 ]
274                      [                     ]
275                      [ 17.25  18.46  23.87 ]
276 @end example
278 Aqui está um exemplo com as variáveis divididas em categorias do arquivo @code{biomed.data}. Queremos os registros correspondentes a aqueles pacientes no grupo @code{B} que possuem idade maior que 38 anos,
280 @c ===beg===
281 @c load ("descriptive")$
282 @c load ("numericalio")$
283 @c s3 : read_matrix (file_search ("biomed.data"))$
284 @c subsample (s3, '(%c[1] = B and %c[2] > 38));
285 @c ===end===
286 @example
287 (%i1) load ("descriptive")$
288 (%i2) load ("numericalio")$
289 (%i3) s3 : read_matrix (file_search ("biomed.data"))$
290 (%i4) subsample (s3, '(%c[1] = B and %c[2] > 38));
291                 [ B  39  28.0  102.3  17.1  146 ]
292                 [                               ]
293                 [ B  39  21.0  92.4   10.3  197 ]
294                 [                               ]
295                 [ B  39  23.0  111.5  10.0  133 ]
296                 [                               ]
297                 [ B  39  26.0  92.6   12.3  196 ]
298 (%o4)           [                               ]
299                 [ B  39  25.0  98.7   10.0  174 ]
300                 [                               ]
301                 [ B  39  21.0  93.2   5.9   181 ]
302                 [                               ]
303                 [ B  39  18.0  95.0   11.3  66  ]
304                 [                               ]
305                 [ B  39  39.0  88.5   7.6   168 ]
306 @end example
309 Probavelmente, a análise estatística irá envolver somente as medidas sang@"{u}íneas,
311 @c ===beg===
312 @c load ("descriptive")$
313 @c load ("numericalio")$
314 @c s3 : read_matrix (file_search ("biomed.data"))$
315 @c subsample (s3, '(%c[1] = B and %c[2] > 38), 3, 4, 5, 6);
316 @c ===end===
317 @example
318 (%i1) load ("descriptive")$
319 (%i2) load ("numericalio")$
320 (%i3) s3 : read_matrix (file_search ("biomed.data"))$
321 (%i4) subsample (s3, '(%c[1] = B and %c[2] > 38), 3, 4, 5, 6);
322                    [ 28.0  102.3  17.1  146 ]
323                    [                        ]
324                    [ 21.0  92.4   10.3  197 ]
325                    [                        ]
326                    [ 23.0  111.5  10.0  133 ]
327                    [                        ]
328                    [ 26.0  92.6   12.3  196 ]
329 (%o4)              [                        ]
330                    [ 25.0  98.7   10.0  174 ]
331                    [                        ]
332                    [ 21.0  93.2   5.9   181 ]
333                    [                        ]
334                    [ 18.0  95.0   11.3  66  ]
335                    [                        ]
336                    [ 39.0  88.5   7.6   168 ]
337 @end example
340 Essa é a média de várias variáveis de @code{s3},
342 @c ===beg===
343 @c load ("descriptive")$
344 @c load ("numericalio")$
345 @c s3 : read_matrix (file_search ("biomed.data"))$
346 @c mean (s3);
347 @c ===end===
348 @example
349 (%i1) load ("descriptive")$
350 (%i2) load ("numericalio")$
351 (%i3) s3 : read_matrix (file_search ("biomed.data"))$
352 (%i4) mean (s3);
353        65 B + 35 A  317          6 NA + 8145.0
354 (%o4) [-----------, ---, 87.178, -------------, 18.123, 
355            100      10                100
356                                                     3 NA + 19587
357                                                     ------------]
358                                                         100
359 @end example
360 Aqui, a primeira componente é sem sentido, uma vez que @code{A} e @code{B} são categorias, o segundo componente é a idade média dos indivíduos na forma racional, e o quarto eo último valores exibem um comportamento estranho. Isso ocorre porque o símbolo @code{NA} é usado aqui para indicar dado não disponível (@var{non available} em inglês), e as duas médias são certamente sem sentido. Uma solução possível pode ser jogar fora a matriz cujas linhas possuam símbolos @code{NA}, embora isso cause alguma perda de informação,
362 @c ===beg===
363 @c load ("descriptive")$
364 @c load ("numericalio")$
365 @c s3 : read_matrix (file_search ("biomed.data"))$
366 @c mean (subsample (s3, '(%c[4] # NA and %c[6] # NA), 3, 4, 5, 6));
367 @c ===end===
368 @example
369 (%i1) load ("descriptive")$
370 (%i2) load ("numericalio")$
371 (%i3) s3 : read_matrix (file_search ("biomed.data"))$
372 (%i4) mean (subsample (s3, '(%c[4] # NA and %c[6] # NA), 3, 4, 5, 6));
373 (%o4) [79.4923076923077, 86.2032967032967, 16.93186813186813, 
374                                                             2514
375                                                             ----]
376                                                              13
377 @end example
378 @end deffn
381 @node Funções e Variáveis Definidas para estatística descritiva, Funções e Variáveis Definidas específicas para estatística descritiva de várias variáveis, Funções e Variáveis Definidas para manipulação da dados, descriptive
382 @section Funções e Variáveis Definidas para estatística descritiva
386 @deffn {Função} mean (@var{lista})
387 @deffnx {Função} mean (@var{matriz})
388 Essa função calcula a média de uma amostra, definida como
389 @ifhtml
390 @example
391                        n
392                      ====
393              _   1   \
394              x = -    >    x
395                  n   /      i
396                      ====
397                      i = 1
398 @end example
399 @end ifhtml
400 @ifinfo
401 @example
402                        n
403                      ====
404              _   1   \
405              x = -    >    x
406                  n   /      i
407                      ====
408                      i = 1
409 @end example
410 @end ifinfo
411 @tex
412 $${\bar{x}={1\over{n}}{\sum_{i=1}^{n}{x_{i}}}}$$
413 @end tex
415 Exemplo:
417 @c ===beg===
418 @c load ("descriptive")$
419 @c load ("numericalio")$
420 @c s1 : read_list (file_search ("pidigits.data"))$
421 @c mean (s1);
422 @c %, numer;
423 @c s2 : read_matrix (file_search ("wind.data"))$
424 @c mean (s2);
425 @c ===end===
426 @example
427 (%i1) load ("descriptive")$
428 (%i2) load ("numericalio")$
429 (%i3) s1 : read_list (file_search ("pidigits.data"))$
430 (%i4) mean (s1);
431                                471
432 (%o4)                          ---
433                                100
434 (%i5) %, numer;
435 (%o5)                         4.71
436 (%i6) s2 : read_matrix (file_search ("wind.data"))$
437 (%i7) mean (s2);
438 (%o7)     [9.9485, 10.1607, 10.8685, 15.7166, 14.8441]
439 @end example
440 @end deffn
444 @deffn {Função} var (@var{list})
445 @deffnx {Função} var (@var{matrix})
446 This is the sample variance, defined as
447 @ifhtml
448 @example
449                      n
450                    ====
451            2   1   \          _ 2
452           s  = -    >    (x - x)
453                n   /       i
454                    ====
455                    i = 1
456 @end example
457 @end ifhtml
458 @ifinfo
459 @example
460                      n
461                    ====
462            2   1   \          _ 2
463           s  = -    >    (x - x)
464                n   /       i
465                    ====
466                    i = 1
467 @end example
468 @end ifinfo
469 @tex
470 $${{1}\over{n}}{\sum_{i=1}^{n}{(x_{i}-\bar{x})^2}}$$
471 @end tex
473 Exemplo:
475 @c ===beg===
476 @c load ("descriptive")$
477 @c load ("numericalio")$
478 @c s1 : read_list (file_search ("pidigits.data"))$
479 @c var (s1), numer;
480 @c ===end===
481 @example
482 (%i1) load ("descriptive")$
483 (%i2) load ("numericalio")$
484 (%i3) s1 : read_list (file_search ("pidigits.data"))$
485 (%i4) var (s1), numer;
486 (%o4)                   8.425899999999999
487 @end example
489 See also function @code{var1}.
490 @end deffn
494 @deffn {Função} var1 (@var{lista})
495 @deffnx {Função} var1 (@var{matriz})
496 Essa função calcula a variância da amostra, definida como
497 @ifhtml
498 @example
499                      n
500                    ====
501                1   \          _ 2
502               ---   >    (x - x)
503               n-1  /       i
504                    ====
505                    i = 1
506 @end example
507 @end ifhtml
508 @ifinfo
509 @example
510                      n
511                    ====
512                1   \          _ 2
513               ---   >    (x - x)
514               n-1  /       i
515                    ====
516                    i = 1
517 @end example
518 @end ifinfo
519 @tex
520 $${{1\over{n-1}}{\sum_{i=1}^{n}{(x_{i}-\bar{x})^2}}}$$
521 @end tex
523 Exemplo:
525 @c ===beg===
526 @c load ("descriptive")$
527 @c load ("numericalio")$
528 @c s1 : read_list (file_search ("pidigits.data"))$
529 @c var1 (s1), numer;
530 @c s2 : read_matrix (file_search ("wind.data"))$
531 @c var1 (s2);
532 @c ===end===
533 @example
534 (%i1) load ("descriptive")$
535 (%i2) load ("numericalio")$
536 (%i3) s1 : read_list (file_search ("pidigits.data"))$
537 (%i4) var1 (s1), numer;
538 (%o4)                    8.5110101010101
539 (%i5) s2 : read_matrix (file_search ("wind.data"))$
540 (%i6) var1 (s2);
541 (%o6) [17.39586540404041, 15.13912778787879, 15.63204924242424, 
542                             32.50152569696971, 24.66977392929294]
543 @end example
545 See also function @code{var}.
546 @end deffn
550 @deffn {Função} std (@var{lista})
551 @deffnx {Função} std (@var{matriz})
552 A raíz quadrada da função @code{var}, a variância com denominador @math{n}.
554 Exemplo:
556 @c ===beg===
557 @c load ("descriptive")$
558 @c load ("numericalio")$
559 @c s1 : read_list (file_search ("pidigits.data"))$
560 @c std (s1), numer;
561 @c s2 : read_matrix (file_search ("wind.data"))$
562 @c std (s2);
563 @c ===end===
564 @example
565 (%i1) load ("descriptive")$
566 (%i2) load ("numericalio")$
567 (%i3) s1 : read_list (file_search ("pidigits.data"))$
568 (%i4) std (s1), numer;
569 (%o4)                   2.902740084816414
570 (%i5) s2 : read_matrix (file_search ("wind.data"))$
571 (%i6) std (s2);
572 (%o6) [4.149928523480858, 3.871399812729241, 3.933920277534866, 
573                             5.672434260526957, 4.941970881136392]
574 @end example
576 Veja também as funções @code{var} e @code{std1}.
577 @end deffn
581 @deffn {Função} std1 (@var{lista})
582 @deffnx {Função} std1 (@var{matriz})
583 É a raíz quadrada da função @code{var1}, a variância com denominador @math{n-1}.
585 Exemplo:
587 @c ===beg===
588 @c load ("descriptive")$
589 @c load ("numericalio")$
590 @c s1 : read_list (file_search ("pidigits.data"))$
591 @c std1 (s1), numer;
592 @c s2 : read_matrix (file_search ("wind.data"))$
593 @c std1 (s2);
594 @c ===end===
595 @example
596 (%i1) load ("descriptive")$
597 (%i2) load ("numericalio")$
598 (%i3) s1 : read_list (file_search ("pidigits.data"))$
599 (%i4) std1 (s1), numer;
600 (%o4)                   2.917363553109228
601 (%i5) s2 : read_matrix (file_search ("wind.data"))$
602 (%i6) std1 (s2);
603 (%o6) [4.17083509672109, 3.89090320978032, 3.953738641137555, 
604                             5.701010936401517, 4.966867617451963]
605 @end example
607 Veja também as funções @code{var1} e @code{std}.
608 @end deffn
612 @deffn {Função} noncentral_moment (@var{lista}, @var{k})
613 @deffnx {Função} noncentral_moment (@var{matriz}, @var{k})
614 O momento não central de ordem @math{k}, definido como
615 @ifhtml
616 @example
617                        n
618                      ====
619                  1   \      k
620                  -    >    x
621                  n   /      i
622                      ====
623                      i = 1
624 @end example
625 @end ifhtml
626 @ifinfo
627 @example
628                        n
629                      ====
630                  1   \      k
631                  -    >    x
632                  n   /      i
633                      ====
634                      i = 1
635 @end example
636 @end ifinfo
637 @tex
638 $${{1\over{n}}{\sum_{i=1}^{n}{x_{i}^k}}}$$
639 @end tex
641 Exemplo:
643 @c ===beg===
644 @c load ("descriptive")$
645 @c load ("numericalio")$
646 @c s1 : read_list (file_search ("pidigits.data"))$
647 @c noncentral_moment (s1, 1), numer; /* the mean */
648 @c s2 : read_matrix (file_search ("wind.data"))$
649 @c noncentral_moment (s2, 5);
650 @c ===end===
651 @example
652 (%i1) load ("descriptive")$
653 (%i2) load ("numericalio")$
654 (%i3) s1 : read_list (file_search ("pidigits.data"))$
655 (%i4) noncentral_moment (s1, 1), numer; /* the mean */
656 (%o4)                         4.71
657 (%i6) s2 : read_matrix (file_search ("wind.data"))$
658 (%i7) noncentral_moment (s2, 5);
659 (%o7) [319793.8724761506, 320532.1923892463, 391249.5621381556, 
660                             2502278.205988911, 1691881.797742255]
661 @end example
663 Veja também a função @code{central_moment}.
664 @end deffn
668 @deffn {Função} central_moment (@var{lista}, @var{k})
669 @deffnx {Função} central_moment (@var{matriz}, @var{k})
670 O momento central de ordem @math{k}, definido como
671 @ifhtml
672 @example
673                     n
674                   ====
675               1   \          _ k
676               -    >    (x - x)
677               n   /       i
678                   ====
679                   i = 1
680 @end example
681 @end ifhtml
682 @ifinfo
683 @example
684                     n
685                   ====
686               1   \          _ k
687               -    >    (x - x)
688               n   /       i
689                   ====
690                   i = 1
691 @end example
692 @end ifinfo
693 @tex
694 $${{1\over{n}}{\sum_{i=1}^{n}{(x_{i}-\bar{x})^k}}}$$
695 @end tex
697 Exemplo:
699 @c ===beg===
700 @c load ("descriptive")$
701 @c load ("numericalio")$
702 @c s1 : read_list (file_search ("pidigits.data"))$
703 @c central_moment (s1, 2), numer; /* the variance */
704 @c s2 : read_matrix (file_search ("wind.data"))$
705 @c central_moment (s2, 3);
706 @c ===end===
707 @example
708 (%i1) load ("descriptive")$
709 (%i2) load ("numericalio")$
710 (%i3) s1 : read_list (file_search ("pidigits.data"))$
711 (%i4) central_moment (s1, 2), numer; /* a variância */
712 (%o4)                   8.425899999999999
713 (%i6) s2 : read_matrix (file_search ("wind.data"))$
714 (%i7) central_moment (s2, 3);
715 (%o7) [11.29584771375004, 16.97988248298583, 5.626661952750102, 
716                              37.5986572057918, 25.85981904394192]
717 @end example
719 Veja também as funções @code{central_moment} e @code{mean}.
720 @end deffn
724 @deffn {Função} cv (@var{lista})
725 @deffnx {Função} cv (@var{matriz})
726 O coeficiente de variação é o quociente entre o desvio padrão da amostra (@code{std}) e a média @code{mean},
728 @c ===beg===
729 @c load ("descriptive")$
730 @c load ("numericalio")$
731 @c s1 : read_list (file_search ("pidigits.data"))$
732 @c cv (s1), numer;
733 @c s2 : read_matrix (file_search ("wind.data"))$
734 @c cv (s2);
735 @c ===end===
736 @example
737 (%i1) load ("descriptive")$
738 (%i2) load ("numericalio")$
739 (%i3) s1 : read_list (file_search ("pidigits.data"))$
740 (%i4) cv (s1), numer;
741 (%o4)                   .6193977819764815
742 (%i5) s2 : read_matrix (file_search ("wind.data"))$
743 (%i6) cv (s2);
744 (%o6) [.4192426091090204, .3829365309260502, 0.363779605385983, 
745                             .3627381836021478, .3346021393989506]
746 @end example
748 Veja também as funções @code{std} e @code{mean}.
749 @end deffn
753 @deffn {Função} mini (@var{lista})
754 @deffnx {Função} mini (@var{matriz})
755 É o valor mínimo da amostra @var{lista},
757 @c ===beg===
758 @c load ("descriptive")$
759 @c load ("numericalio")$
760 @c s1 : read_list (file_search ("pidigits.data"))$
761 @c mini (s1);
762 @c s2 : read_matrix (file_search ("wind.data"))$
763 @c mini (s2);
764 @c ===end===
765 @example
766 (%i1) load ("descriptive")$
767 (%i2) load ("numericalio")$
768 (%i3) s1 : read_list (file_search ("pidigits.data"))$
769 (%i4) mini (s1);
770 (%o4)                           0
771 (%i5) s2 : read_matrix (file_search ("wind.data"))$
772 (%i6) mini (s2);
773 (%o6)             [0.58, 0.5, 2.67, 5.25, 5.17]
774 @end example
776 Veja também função @code{maxi}.
777 @end deffn
781 @deffn {Função} maxi (@var{lista})
782 @deffnx {Função} maxi (@var{matriz})
783 É o valor máximo da amostra @var{lista},
785 @c ===beg===
786 @c load ("descriptive")$
787 @c load ("numericalio")$
788 @c s1 : read_list (file_search ("pidigits.data"))$
789 @c maxi (s1);
790 @c s2 : read_matrix (file_search ("wind.data"))$
791 @c maxi (s2);
792 @c ===end===
793 @example
794 (%i1) load ("descriptive")$
795 (%i2) load ("numericalio")$
796 (%i3) s1 : read_list (file_search ("pidigits.data"))$
797 (%i4) maxi (s1);
798 (%o4)                           9
799 (%i5) s2 : read_matrix (file_search ("wind.data"))$
800 (%i6) maxi (s2);
801 (%o6)          [20.25, 21.46, 20.04, 29.63, 27.63]
802 @end example
804 Veja também a função @code{mini}.
805 @end deffn
809 @deffn {Função} range (@var{lista})
810 @deffnx {Função} range (@var{matriz})
811 A amplitude é a diferença entre os valores de maximo e de mínimo.
813 Exemplo:
815 @c ===beg===
816 @c load ("descriptive")$
817 @c load ("numericalio")$
818 @c s1 : read_list (file_search ("pidigits.data"))$
819 @c range (s1);
820 @c s2 : read_matrix (file_search ("wind.data"))$
821 @c range (s2);
822 @c ===end===
823 @example
824 (%i1) load ("descriptive")$
825 (%i2) load ("numericalio")$
826 (%i3) s1 : read_list (file_search ("pidigits.data"))$
827 (%i4) range (s1);
828 (%o4)                           9
829 (%i5) s2 : read_matrix (file_search ("wind.data"))$
830 (%i6) range (s2);
831 (%o6)          [19.67, 20.96, 17.37, 24.38, 22.46]
832 @end example
833 @end deffn
837 @deffn {Função} quantile (@var{lista}, @var{p})
838 @deffnx {Função} quantile (@var{matriz}, @var{p})
839 É o @var{p}-@code{quantile} (quantil de ordem @var{p}), com @var{p} sendo um número em @math{[0, 1]} (intervalo fechado), da amostra @var{lista}.
840 Embora exista muitas definições para quantil de uma amostra (Hyndman, R. J., Fan, Y. (1996) @var{Sample quantiles in statistical packages}. American Statistician, 50, 361-365), aquela que se baseia em interpolação linear é a que foi implementada no pacote @code{descriptive}.
842 Exemplo:
844 @c ===beg===
845 @c load ("descriptive")$
846 @c load ("numericalio")$
847 @c s1 : read_list (file_search ("pidigits.data"))$
848 @c /* 1st and 3rd quartiles */ [quantile (s1, 1/4), quantile (s1, 3/4)], numer;
849 @c s2 : read_matrix (file_search ("wind.data"))$
850 @c quantile (s2, 1/4);
851 @c ===end===
852 @example
853 (%i1) load ("descriptive")$
854 (%i2) load ("numericalio")$
855 (%i3) s1 : read_list (file_search ("pidigits.data"))$
856 (%i4) /* 1st and 3rd quartiles */ [quantile (s1, 1/4), quantile (s1, 3/4)], numer;
857 (%o4)                      [2.0, 7.25]
858 (%i5) s2 : read_matrix (file_search ("wind.data"))$
859 (%i6) quantile (s2, 1/4);
860 (%o6)    [7.2575, 7.477500000000001, 7.82, 11.28, 11.48]
861 @end example
862 @end deffn
866 @deffn {Função} median (@var{lista})
867 @deffnx {Função} median (@var{matriz})
868 Uma vez que a amostra está ordenada, se o tamanho da amostra for ímpar a mediana é o valor central, de outra forma a mediana será a média dos dois valores centrais.
870 Exemplo:
872 @c ===beg===
873 @c load ("descriptive")$
874 @c load ("numericalio")$
875 @c s1 : read_list (file_search ("pidigits.data"))$
876 @c median (s1);
877 @c s2 : read_matrix (file_search ("wind.data"))$
878 @c median (s2);
879 @c ===end===
880 @example
881 (%i1) load ("descriptive")$
882 (%i2) load ("numericalio")$
883 (%i3) s1 : read_list (file_search ("pidigits.data"))$
884 (%i4) median (s1);
885                                 9
886 (%o4)                           -
887                                 2
888 (%i5) s2 : read_matrix (file_search ("wind.data"))$
889 (%i6) median (s2);
890 (%o6)         [10.06, 9.855, 10.73, 15.48, 14.105]
891 @end example
893 A mediana é o 1/2-@code{quantil}.
895 Veja também function @code{quantile}.
896 @end deffn
900 @deffn {Função} qrange (@var{lista})
901 @deffnx {Função} qrange (@var{matriz})
902 A amplitude do interquartil é a diferença entre o terceiro e o primeiro quartil, @code{quantile(@var{lista},3/4) - quantile(@var{lista},1/4)},
904 @c ===beg===
905 @c load ("descriptive")$
906 @c load ("numericalio")$
907 @c s1 : read_list (file_search ("pidigits.data"))$
908 @c qrange (s1);
909 @c s2 : read_matrix (file_search ("wind.data"))$
910 @c qrange (s2);
911 @c ===end===
912 @example
913 (%i1) load ("descriptive")$
914 (%i2) load ("numericalio")$
915 (%i3) s1 : read_list (file_search ("pidigits.data"))$
916 (%i4) qrange (s1);
917                                21
918 (%o4)                          --
919                                4
920 (%i5) s2 : read_matrix (file_search ("wind.data"))$
921 (%i6) qrange (s2);
922 (%o6) [5.385, 5.572499999999998, 6.0225, 8.729999999999999, 
923                                                6.650000000000002]
924 @end example
926 Veja também a função @code{quantile}.
927 @end deffn
931 @deffn {Função} mean_deviation (@var{lista})
932 @deffnx {Função} mean_deviation (@var{matriz})
933 O desvio médio, definido como
934 @ifhtml
935 @example
936                      n
937                    ====
938                1   \          _
939                -    >    |x - x|
940                n   /       i
941                    ====
942                    i = 1
943 @end example
944 @end ifhtml
945 @ifinfo
946 @example
947                      n
948                    ====
949                1   \          _
950                -    >    |x - x|
951                n   /       i
952                    ====
953                    i = 1
954 @end example
955 @end ifinfo
956 @tex
957 $${{1\over{n}}{\sum_{i=1}^{n}{|x_{i}-\bar{x}|}}}$$
958 @end tex
960 Exemplo:
962 @c ===beg===
963 @c load ("descriptive")$
964 @c load ("numericalio")$
965 @c s1 : read_list (file_search ("pidigits.data"))$
966 @c mean_deviation (s1);
967 @c s2 : read_matrix (file_search ("wind.data"))$
968 @c mean_deviation (s2);
969 @c ===end===
970 @example
971 (%i1) load ("descriptive")$
972 (%i2) load ("numericalio")$
973 (%i3) s1 : read_list (file_search ("pidigits.data"))$
974 (%i4) mean_deviation (s1);
975                                51
976 (%o4)                          --
977                                20
978 (%i5) s2 : read_matrix (file_search ("wind.data"))$
979 (%i6) mean_deviation (s2);
980 (%o6) [3.287959999999999, 3.075342, 3.23907, 4.715664000000001, 
981                                                4.028546000000002]
982 @end example
984 Veja também a função @code{mean}.
985 @end deffn
989 @deffn {Função} median_deviation (@var{lista})
990 @deffnx {Função} median_deviation (@var{matriz})
991 O desvio da mediana, definido como
992 @ifhtml
993 @example
994                  n
995                ====
996            1   \
997            -    >    |x - med|
998            n   /       i
999                ====
1000                i = 1
1001 @end example
1002 @end ifhtml
1003 @ifinfo
1004 @example
1005                  n
1006                ====
1007            1   \
1008            -    >    |x - med|
1009            n   /       i
1010                ====
1011                i = 1
1012 @end example
1013 @end ifinfo
1014 @tex
1015 $${{1\over{n}}{\sum_{i=1}^{n}{|x_{i}-med|}}}$$
1016 @end tex
1017 onde @code{med} é a mediana da @var{lista}.
1019 Exemplo:
1021 @c ===beg===
1022 @c load ("descriptive")$
1023 @c load ("numericalio")$
1024 @c s1 : read_list (file_search ("pidigits.data"))$
1025 @c median_deviation (s1);
1026 @c s2 : read_matrix (file_search ("wind.data"))$
1027 @c median_deviation (s2);
1028 @c ===end===
1029 @example
1030 (%i1) load ("descriptive")$
1031 (%i2) load ("numericalio")$
1032 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1033 (%i4) median_deviation (s1);
1034                                 5
1035 (%o4)                           -
1036                                 2
1037 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1038 (%i6) median_deviation (s2);
1039 (%o6)           [2.75, 2.755, 3.08, 4.315, 3.31]
1040 @end example
1042 Veja também a função @code{mean}.
1043 @end deffn
1047 @deffn {Função} harmonic_mean (@var{lista})
1048 @deffnx {Função} harmonic_mean (@var{matriz})
1049 A média harmônica, definida como
1050 @ifhtml
1051 @example
1052                   n
1053                --------
1054                 n
1055                ====
1056                \     1
1057                 >    --
1058                /     x
1059                ====   i
1060                i = 1
1061 @end example
1062 @end ifhtml
1063 @ifinfo
1064 @example
1065                   n
1066                --------
1067                 n
1068                ====
1069                \     1
1070                 >    --
1071                /     x
1072                ====   i
1073                i = 1
1074 @end example
1075 @end ifinfo
1076 @tex
1077 $${{n}\over{\sum_{i=1}^{n}{{{1}\over{x_{i}}}}}}$$
1078 @end tex
1080 Exemplo:
1082 @c ===beg===
1083 @c load ("descriptive")$
1084 @c load ("numericalio")$
1085 @c y : [5, 7, 2, 5, 9, 5, 6, 4, 9, 2, 4, 2, 5]$
1086 @c harmonic_mean (y), numer;
1087 @c s2 : read_matrix (file_search ("wind.data"))$
1088 @c harmonic_mean (s2);
1089 @c ===end===
1090 @example
1091 (%i1) load ("descriptive")$
1092 (%i2) load ("numericalio")$
1093 (%i3) y : [5, 7, 2, 5, 9, 5, 6, 4, 9, 2, 4, 2, 5]$
1094 (%i4) harmonic_mean (y), numer;
1095 (%o4)                   3.901858027632205
1096 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1097 (%i6) harmonic_mean (s2);
1098 (%o6) [6.948015590052786, 7.391967752360356, 9.055658197151745, 
1099                             13.44199028193692, 13.01439145898509]
1100 @end example
1102 Veja também as funções @code{mean} e @code{geometric_mean}.
1103 @end deffn
1107 @deffn {Função} geometric_mean (@var{lista})
1108 @deffnx {Função} geometric_mean (@var{matriz})
1109 A média geométrica, definida como
1110 @ifhtml
1111 @example
1112                  /  n      \ 1/n
1113                  | /===\   |
1114                  |  ! !    |
1115                  |  ! !  x |
1116                  |  ! !   i|
1117                  | i = 1   |
1118                  \         /
1119 @end example
1120 @end ifhtml
1121 @ifinfo
1122 @example
1123                  /  n      \ 1/n
1124                  | /===\   |
1125                  |  ! !    |
1126                  |  ! !  x |
1127                  |  ! !   i|
1128                  | i = 1   |
1129                  \         /
1130 @end example
1131 @end ifinfo
1132 @tex
1133 $$\left(\prod_{i=1}^{n}{x_{i}}\right)^{{{1}\over{n}}}$$
1134 @end tex
1136 Exemplo:
1138 @c ===beg===
1139 @c load ("descriptive")$
1140 @c load ("numericalio")$
1141 @c y : [5, 7, 2, 5, 9, 5, 6, 4, 9, 2, 4, 2, 5]$
1142 @c geometric_mean (y), numer;
1143 @c s2 : read_matrix (file_search ("wind.data"))$
1144 @c geometric_mean (s2);
1145 @c ===end===
1146 @example
1147 (%i1) load ("descriptive")$
1148 (%i2) load ("numericalio")$
1149 (%i3) y : [5, 7, 2, 5, 9, 5, 6, 4, 9, 2, 4, 2, 5]$
1150 (%i4) geometric_mean (y), numer;
1151 (%o4)                   4.454845412337012
1152 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1153 (%i6) geometric_mean (s2);
1154 (%o6) [8.82476274347979, 9.22652604739361, 10.0442675714889, 
1155                             14.61274126349021, 13.96184163444275]
1156 @end example
1158 Veja também as funções @code{mean} e @code{harmonic_mean}.
1159 @end deffn
1163 @deffn {Função} kurtosis (@var{lista})
1164 @deffnx {Função} kurtosis (@var{matriz})
1165 O coeficiente de curtose, definido como
1166 @ifhtml
1167 @example
1168                     n
1169                   ====
1170             1     \          _ 4
1171            ----    >    (x - x)  - 3
1172               4   /       i
1173            n s    ====
1174                   i = 1
1175 @end example
1176 @end ifhtml
1177 @ifinfo
1178 @example
1179                     n
1180                   ====
1181             1     \          _ 4
1182            ----    >    (x - x)  - 3
1183               4   /       i
1184            n s    ====
1185                   i = 1
1186 @end example
1187 @end ifinfo
1188 @tex
1189 $${{1\over{n s^4}}{\sum_{i=1}^{n}{(x_{i}-\bar{x})^4}}-3}$$
1190 @end tex
1192 Exemplo:
1194 @c ===beg===
1195 @c load ("descriptive")$
1196 @c load ("numericalio")$
1197 @c s1 : read_list (file_search ("pidigits.data"))$
1198 @c kurtosis (s1), numer;
1199 @c s2 : read_matrix (file_search ("wind.data"))$
1200 @c kurtosis (s2);
1201 @c ===end===
1202 @example
1203 (%i1) load ("descriptive")$
1204 (%i2) load ("numericalio")$
1205 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1206 (%i4) kurtosis (s1), numer;
1207 (%o4)                  - 1.273247946514421
1208 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1209 (%i6) kurtosis (s2);
1210 (%o6) [- .2715445622195385, 0.119998784429451, 
1211    - .4275233490482866, - .6405361979019522, - .4952382132352935]
1212 @end example
1214 Veja também as funções @code{mean}, @code{var} e @code{skewness}.
1215 @end deffn
1219 @deffn {Função} skewness (@var{lista})
1220 @deffnx {Função} skewness (@var{matriz})
1221 O coeficiente de assimetria, definido como
1222 @ifhtml
1223 @example
1224                     n
1225                   ====
1226             1     \          _ 3
1227            ----    >    (x - x)
1228               3   /       i
1229            n s    ====
1230                   i = 1
1231 @end example
1232 @end ifhtml
1233 @ifinfo
1234 @example
1235                     n
1236                   ====
1237             1     \          _ 3
1238            ----    >    (x - x)
1239               3   /       i
1240            n s    ====
1241                   i = 1
1242 @end example
1243 @end ifinfo
1244 @tex
1245 $${{1\over{n s^3}}{\sum_{i=1}^{n}{(x_{i}-\bar{x})^3}}}$$
1246 @end tex
1248 Exemplo:
1250 @c ===beg===
1251 @c load ("descriptive")$
1252 @c load ("numericalio")$
1253 @c s1 : read_list (file_search ("pidigits.data"))$
1254 @c skewness (s1), numer;
1255 @c s2 : read_matrix (file_search ("wind.data"))$
1256 @c skewness (s2);
1257 @c ===end===
1258 @example
1259 (%i1) load ("descriptive")$
1260 (%i2) load ("numericalio")$
1261 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1262 (%i4) skewness (s1), numer;
1263 (%o4)                  .009196180476450306
1264 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1265 (%i6) skewness (s2);
1266 (%o6) [.1580509020000979, .2926379232061854, .09242174416107717, 
1267                             .2059984348148687, .2142520248890832]
1268 @end example
1270 Veja também as funções @code{mean}, @code{var} e @code{kurtosis}.
1271 @end deffn
1275 @deffn {Função} pearson_skewness (@var{lista})
1276 @deffnx {Função} pearson_skewness (@var{matriz})
1277 O coeficiente de assimetria de pearson, definido como 
1278 @ifhtml
1279 @example
1280                 _
1281              3 (x - med)
1282              -----------
1283                   s
1284 @end example
1285 @end ifhtml
1286 @ifinfo
1287 @example
1288                 _
1289              3 (x - med)
1290              -----------
1291                   s
1292 @end example
1293 @end ifinfo
1294 @tex
1295 $${{3\,\left(\bar{x}-med\right)}\over{s}}$$
1296 @end tex
1297 onde @var{med} é a mediana de @var{lista}.
1299 Exemplo:
1301 @c ===beg===
1302 @c load ("descriptive")$
1303 @c load ("numericalio")$
1304 @c s1 : read_list (file_search ("pidigits.data"))$
1305 @c pearson_skewness (s1), numer;
1306 @c s2 : read_matrix (file_search ("wind.data"))$
1307 @c pearson_skewness (s2);
1308 @c ===end===
1309 @example
1310 (%i1) load ("descriptive")$
1311 (%i2) load ("numericalio")$
1312 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1313 (%i4) pearson_skewness (s1), numer;
1314 (%o4)                   .2159484029093895
1315 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1316 (%i6) pearson_skewness (s2);
1317 (%o6) [- .08019976629211892, .2357036272952649, 
1318          .1050904062491204, .1245042340592368, .4464181795804519]
1319 @end example
1321 Veja também as funções @code{mean}, @code{var} e @code{median}.
1322 @end deffn
1326 @deffn {Função} quartile_skewness (@var{lista})
1327 @deffnx {Função} quartile_skewness (@var{matriz})
1328 O coeficiented de assimetria do quartil, definido como 
1329 @ifhtml
1330 @example
1331                c    - 2 c    + c
1332                 3/4      1/2    1/4
1333                --------------------
1334                    c    - c
1335                     3/4    1/4
1336 @end example
1337 @end ifhtml
1338 @ifinfo
1339 @example
1340                c    - 2 c    + c
1341                 3/4      1/2    1/4
1342                --------------------
1343                    c    - c
1344                     3/4    1/4
1345 @end example
1346 @end ifinfo
1347 @tex
1348 $${{c_{{{3}\over{4}}}-2\,c_{{{1}\over{2}}}+c_{{{1}\over{4}}}}\over{c
1349  _{{{3}\over{4}}}-c_{{{1}\over{4}}}}}$$
1350 @end tex
1351 onde @math{c_p} é o quartil de ordem @var{p} da amostra @var{lista}.
1353 Exemplo:
1355 @c ===beg===
1356 @c load ("descriptive")$
1357 @c load ("numericalio")$
1358 @c s1 : read_list (file_search ("pidigits.data"))$
1359 @c quartile_skewness (s1), numer;
1360 @c s2 : read_matrix (file_search ("wind.data"))$
1361 @c quartile_skewness (s2);
1362 @c ===end===
1363 @example
1364 (%i1) load ("descriptive")$
1365 (%i2) load ("numericalio")$
1366 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1367 (%i4) quartile_skewness (s1), numer;
1368 (%o4)                  .04761904761904762
1369 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1370 (%i6) quartile_skewness (s2);
1371 (%o6) [- 0.0408542246982353, .1467025572005382, 
1372        0.0336239103362392, .03780068728522298, 0.210526315789474]
1373 @end example
1375 Veja também a função @code{quantile}.
1376 @end deffn
1380 @node Funções e Variáveis Definidas específicas para estatística descritiva de várias variáveis, Funções e Variáveis Definidas para gráficos estatísticos, Funções e Variáveis Definidas para estatística descritiva, descriptive
1381 @section Funções e Variáveis Definidas específicas para estatística descritiva de várias variáveis
1385 @deffn {Função} cov (@var{matriz})
1386 A matriz de covariância da amostra de várias variáveis, definida como
1387 @ifhtml
1388 @example
1389               n
1390              ====
1391           1  \           _        _
1392       S = -   >    (X  - X) (X  - X)'
1393           n  /       j        j
1394              ====
1395              j = 1
1396 @end example
1397 @end ifhtml
1398 @ifinfo
1399 @example
1400               n
1401              ====
1402           1  \           _        _
1403       S = -   >    (X  - X) (X  - X)'
1404           n  /       j        j
1405              ====
1406              j = 1
1407 @end example
1408 @end ifinfo
1409 @tex
1410 $${S={1\over{n}}{\sum_{j=1}^{n}{\left(X_{j}-\bar{X}\right)\,\left(X_{j}-\bar{X}\right)'}}}$$
1411 @end tex
1412 onde @math{X_j} é a @math{j}-ésima linha da matriz de amostra.
1414 Exemplo:
1416 @c ===beg===
1417 @c load ("descriptive")$
1418 @c load ("numericalio")$
1419 @c s2 : read_matrix (file_search ("wind.data"))$
1420 @c fpprintprec : 7$  /* modifique a precisão para uma saída melhor */
1421 @c cov (s2);
1422 @c ===end===
1423 @example
1424 (%i1) load ("descriptive")$
1425 (%i2) load ("numericalio")$
1426 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1427 (%i4) fpprintprec : 7$  /* modifique a precisão para obter uma saída melhor */
1428 (%i5) cov (s2);
1429       [ 17.22191  13.61811  14.37217  19.39624  15.42162 ]
1430       [                                                  ]
1431       [ 13.61811  14.98774  13.30448  15.15834  14.9711  ]
1432       [                                                  ]
1433 (%o5) [ 14.37217  13.30448  15.47573  17.32544  16.18171 ]
1434       [                                                  ]
1435       [ 19.39624  15.15834  17.32544  32.17651  20.44685 ]
1436       [                                                  ]
1437       [ 15.42162  14.9711   16.18171  20.44685  24.42308 ]
1438 @end example
1440 Veja também a função @code{cov1}.
1441 @end deffn
1445 @deffn {Função} cov1 (@var{matriz})
1446 A matriz de covariância da amostra de várias variáveis, definida como
1447 @ifhtml
1448 @example
1449               n
1450              ====
1451          1   \           _        _
1452    S  = ---   >    (X  - X) (X  - X)'
1453     1   n-1  /       j        j
1454              ====
1455              j = 1
1456 @end example
1457 @end ifhtml
1458 @ifinfo
1459 @example
1460               n
1461              ====
1462          1   \           _        _
1463    S  = ---   >    (X  - X) (X  - X)'
1464     1   n-1  /       j        j
1465              ====
1466              j = 1
1467 @end example
1468 @end ifinfo
1469 @tex
1470 $${{1\over{n-1}}{\sum_{j=1}^{n}{\left(X_{j}-\bar{X}\right)\,\left(X_{j}-\bar{X}\right)'}}}$$
1471 @end tex
1472 where @math{X_j} is the @math{j}-th row of the sample matrix.
1474 Exemplo:
1476 @c ===beg===
1477 @c load ("descriptive")$
1478 @c load ("numericalio")$
1479 @c s2 : read_matrix (file_search ("wind.data"))$
1480 @c fpprintprec : 7$ /* modifique a precisão para obter uma saída melhor */
1481 @c cov1 (s2);
1482 @c ===end===
1483 @example
1484 (%i1) load ("descriptive")$
1485 (%i2) load ("numericalio")$
1486 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1487 (%i4) fpprintprec : 7$ /* modifique a precisão para obter uma saída melhor */
1488 (%i5) cov1 (s2);
1489       [ 17.39587  13.75567  14.51734  19.59216  15.5774  ]
1490       [                                                  ]
1491       [ 13.75567  15.13913  13.43887  15.31145  15.12232 ]
1492       [                                                  ]
1493 (%o5) [ 14.51734  13.43887  15.63205  17.50044  16.34516 ]
1494       [                                                  ]
1495       [ 19.59216  15.31145  17.50044  32.50153  20.65338 ]
1496       [                                                  ]
1497       [ 15.5774   15.12232  16.34516  20.65338  24.66977 ]
1498 @end example
1500 Veja também a função @code{cov}.
1501 @end deffn
1505 @deffn {Função} global_variances (@var{matriz})
1506 @deffnx {Função} global_variances (@var{matriz}, @var{valor_lógico})
1507 A função @code{global_variances} retorna uma lista de medidas de variância global:
1509 @itemize @bullet
1510 @item
1511 @var{variância total}: @code{trace(S_1)},
1512 @item
1513 @var{variância média}: @code{trace(S_1)/p},
1514 @item
1515 @var{variância generalizada}: @code{determinant(S_1)},
1516 @item
1517 @var{desvio padrão generalizado}: @code{sqrt(determinant(S_1))},
1518 @item
1519 @var{variância efetiva} @code{determinant(S_1)^(1/p)}, (defined in: Peña, D. (2002) @var{Análisis de datos multivariantes}; McGraw-Hill, Madrid.)
1520 @item
1521 @var{desvio padrão efetivo}: @code{determinant(S_1)^(1/(2*p))}.
1522 @end itemize
1523 onde @var{p} é a dimensão das várias variáveis aleatórias e @math{S_1} a matriz de covariância retornada por @code{cov1}.
1525 Exemplo:
1527 @c ===beg===
1528 @c load ("descriptive")$
1529 @c load ("numericalio")$
1530 @c s2 : read_matrix (file_search ("wind.data"))$
1531 @c global_variances (s2);
1532 @c ===end===
1533 @example
1534 (%i1) load ("descriptive")$
1535 (%i2) load ("numericalio")$
1536 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1537 (%i4) global_variances (s2);
1538 (%o4) [105.338342060606, 21.06766841212119, 12874.34690469686, 
1539          113.4651792608502, 6.636590811800794, 2.576158149609762]
1540 @end example
1542 A função @code{global_variances} tem um argumento lógico opcional: @code{global_variances(x,true)} diz ao Maxima que @code{x} é a matriz de dados, fazendo o mesmo que @code{global_variances(x)}. Por outro lado, @code{global_variances(x,false)} significa que @code{x} não é a matriz de dados, mas a matriz de covariância, evitando a repetição seu cálculo,
1544 @c ===beg===
1545 @c load ("descriptive")$
1546 @c load ("numericalio")$
1547 @c s2 : read_matrix (file_search ("wind.data"))$
1548 @c s : cov1 (s2)$
1549 @c global_variances (s, false);
1550 @c ===end===
1551 @example
1552 (%i1) load ("descriptive")$
1553 (%i2) load ("numericalio")$
1554 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1555 (%i4) s : cov1 (s2)$
1556 (%i5) global_variances (s, false);
1557 (%o5) [105.338342060606, 21.06766841212119, 12874.34690469686, 
1558          113.4651792608502, 6.636590811800794, 2.576158149609762]
1559 @end example
1561 Veja também @code{cov} e @code{cov1}.
1562 @end deffn
1566 @deffn {Função} cor (@var{matriz})
1567 @deffnx {Função} cor (@var{matriz}, @var{valor_lógico})
1568 A matriz de correlação da maostra de várias variáveis.
1570 Exemplo:
1572 @c ===beg===
1573 @c load ("descriptive")$
1574 @c load ("numericalio")$
1575 @c fpprintprec:7$
1576 @c s2 : read_matrix (file_search ("wind.data"))$
1577 @c cor (s2);
1578 @c ===end===
1579 @example
1580 (%i1) load ("descriptive")$
1581 (%i2) load ("numericalio")$
1582 (%i3) fpprintprec:7$
1583 (%i4) s2 : read_matrix (file_search ("wind.data"))$
1584 (%i5) cor (s2);
1585       [   1.0     .8476339  .8803515  .8239624  .7519506 ]
1586       [                                                  ]
1587       [ .8476339    1.0     .8735834  .6902622  0.782502 ]
1588       [                                                  ]
1589 (%o5) [ .8803515  .8735834    1.0     .7764065  .8323358 ]
1590       [                                                  ]
1591       [ .8239624  .6902622  .7764065    1.0     .7293848 ]
1592       [                                                  ]
1593       [ .7519506  0.782502  .8323358  .7293848    1.0    ]
1594 @end example
1596 A função @code{cor} tem um argumento lógico opcional: @code{cor(x,true)} diz ao Maxima que @code{x} é a matriz de dados, fazendo o mesmo que @code{cor(x)}. Por outro lado, @code{cor(x,false)} significa que @code{x} não é a matriz de dados, mas a matriz de covariância, evitando a repetição de seu cálculo,
1598 @c ===beg===
1599 @c load ("descriptive")$
1600 @c load ("numericalio")$
1601 @c fpprintprec:7$
1602 @c s2 : read_matrix (file_search ("wind.data"))$
1603 @c s : cov1 (s2)$
1604 @c cor (s, false); /* this is faster */
1605 @c ===end===
1606 @example
1607 (%i1) load ("descriptive")$
1608 (%i2) load ("numericalio")$
1609 (%i3) fpprintprec:7$
1610 (%i4) s2 : read_matrix (file_search ("wind.data"))$
1611 (%i5) s : cov1 (s2)$
1612 (%i6) cor (s, false); /* this is faster */
1613       [   1.0     .8476339  .8803515  .8239624  .7519506 ]
1614       [                                                  ]
1615       [ .8476339    1.0     .8735834  .6902622  0.782502 ]
1616       [                                                  ]
1617 (%o6) [ .8803515  .8735834    1.0     .7764065  .8323358 ]
1618       [                                                  ]
1619       [ .8239624  .6902622  .7764065    1.0     .7293848 ]
1620       [                                                  ]
1621       [ .7519506  0.782502  .8323358  .7293848    1.0    ]
1622 @end example
1624 Veja também @code{cov} e @code{cov1}.
1625 @end deffn
1629 @deffn {Função} list_correlations (@var{matriz})
1630 @deffnx {Função} list_correlations (@var{matriz}, @var{valor_lógico})
1631 A função @code{list_correlations} retorna uma lista de medidas de correlação:
1633 @itemize @bullet
1635 @item
1636 @var{matriz de precisão}: o inverso da matriz de covariância @math{S_1},
1637 @ifhtml
1638 @example
1639        -1     ij
1640       S   = (s  )             
1641        1         i,j = 1,2,...,p
1642 @end example
1643 @end ifhtml
1644 @ifinfo
1645 @example
1646        -1     ij
1647       S   = (s  )             
1648        1         i,j = 1,2,...,p
1649 @end example
1650 @end ifinfo
1651 @tex
1652 $${S_{1}^{-1}}={\left(s^{ij}\right)_{i,j=1,2,\ldots, p}}$$
1653 @end tex
1655 @item
1656 @var{vetor de correlação multipla}:  @math{(R_1^2, R_2^2, ..., R_p^2)}, com 
1657 @ifhtml
1658 @example
1659        2          1
1660       R  = 1 - -------
1661        i        ii
1662                s   s
1663                     ii
1664 @end example
1665 @end ifhtml
1666 @ifinfo
1667 @example
1668        2          1
1669       R  = 1 - -------
1670        i        ii
1671                s   s
1672                     ii
1673 @end example
1674 @end ifinfo
1675 @tex
1676 $${R_{i}^{2}}={1-{{1}\over{s^{ii}s_{ii}}}}$$
1677 @end tex
1678 sendo um indicador do melhor do ajuste do modelo de regressão linear de várias variáveis dobre @math{X_i} quando o resto das variáveis são usados como regressores.
1680 @item
1681 @var{matriz de correlação parcial}: como elemento @math{(i, j)} sendo
1682 @ifhtml
1683 @example
1684                          ij
1685                         s
1686       r        = - ------------
1687        ij.rest     / ii  jj\ 1/2
1688                    |s   s  |
1689                    \       /
1690 @end example
1691 @end ifhtml
1692 @ifinfo
1693 @example
1694                          ij
1695                         s
1696       r        = - ------------
1697        ij.rest     / ii  jj\ 1/2
1698                    |s   s  |
1699                    \       /
1700 @end example
1701 @end ifinfo
1702 @tex
1703 $${r_{ij.rest}}={-{{s^{ij}}\over \sqrt{s^{ii}s^{jj}}}}$$
1704 @end tex
1706 @end itemize
1708 Exemplo:
1710 @c ===beg===
1711 @c load ("descriptive")$
1712 @c load ("numericalio")$
1713 @c s2 : read_matrix (file_search ("wind.data"))$
1714 @c z : list_correlations (s2)$
1715 @c fpprintprec : 5$ /* for pretty output */
1716 @c z[1];  /* matriz de precisão */
1717 @c z[2];  /* vetor de correlação multipla */
1718 @c z[3];  /* matriz parcial de correlação */
1719 @c ===end===
1720 @example
1721 (%i1) load ("descriptive")$
1722 (%i2) load ("numericalio")$
1723 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1724 (%i4) z : list_correlations (s2)$
1725 (%i5) fpprintprec : 5$ /* for pretty output */
1726 (%i6) z[1];  /* precision matrix */
1727       [  .38486   - .13856   - .15626   - .10239    .031179  ]
1728       [                                                      ]
1729       [ - .13856   .34107    - .15233    .038447   - .052842 ]
1730       [                                                      ]
1731 (%o6) [ - .15626  - .15233    .47296    - .024816  - .10054  ]
1732       [                                                      ]
1733       [ - .10239   .038447   - .024816   .10937    - .034033 ]
1734       [                                                      ]
1735       [ .031179   - .052842  - .10054   - .034033   .14834   ]
1736 (%i7) z[2];  /* multiple correlation vector */
1737 (%o7)       [.85063, .80634, .86474, .71867, .72675]
1738 (%i8) z[3];  /* partial correlation matrix */
1739        [  - 1.0     .38244   .36627   .49908   - .13049 ]
1740        [                                                ]
1741        [  .38244    - 1.0    .37927  - .19907   .23492  ]
1742        [                                                ]
1743 (%o8)  [  .36627    .37927   - 1.0    .10911    .37956  ]
1744        [                                                ]
1745        [  .49908   - .19907  .10911   - 1.0     .26719  ]
1746        [                                                ]
1747        [ - .13049   .23492   .37956   .26719    - 1.0   ]
1748 @end example
1750 A função @code{list_correlations} também tem um argumento lógico opcional: @code{list_correlations(x,true)} diz ao Maxima que @code{x} é a matriz de dados, fazendo o mesmo que @code{list_correlations(x)}. Por outro lado, @code{list_correlations(x,false)} significa que @code{x} não é a matriz de correlação, mas a matriz de covariancia, evitando a repetição de seu cálculo.
1752 Veja também @code{cov} e @code{cov1}.
1753 @end deffn
1757 @node Funções e Variáveis Definidas para gráficos estatísticos,  , Funções e Variáveis Definidas específicas para estatística descritiva de várias variáveis, descriptive
1758 @section Funções e Variáveis Definidas para gráficos estatísticos
1762 @deffn {Função} dataplot (@var{lista})
1763 @deffnx {Função} dataplot (@var{lista}, @var{opção_1}, @var{opção_2}, ...)
1764 @deffnx {Função} dataplot (@var{matriz})
1765 @deffnx {Função} dataplot (@var{matriz}, @var{opção_1}, @var{opção_2}, ...)
1766 A função @code{dataplot} permite visualização direta de dados de amostra, ambas d uma única variável (@var{lista}) e de várias variáveis (@var{matriz}). Fornecendo valores para as seguintes @var{opções} que são alguns aspéctos de impressão que podem ser controlados:
1768 @itemize @bullet
1770 @item
1771 @code{'outputdev}, o valor padrão é @code{"x"}, indica o formato de dispositivo/arquivo da figura de saída; valores corretos são @code{"x"}, @code{"eps"} e @code{"png"}, para a tela, formato de arquivo postscript e formato de arquivo png, respectivamente.
1773 @item
1774 @code{'maintitle}, o valor padrão é @code{""}, é o título principal entre aspas duplas.
1776 @item
1777 @code{'axisnames}, o valor padrão é @code{["x","y","z"]}, é uma lista de nomes dos eixos @code{x}, @code{y} e @code{z}.
1779 @item
1780 @code{'joined}, o valor padrão é @code{false}, um valor lógico para selecionar pontos em 2D para serem unidos ou isolados.
1782 @item
1783 @code{'picturescales}, o valor padrão é @code{[1.0, 1.0]}, fator de proporcionalidade para o tamanho do gráfico.
1785 @item
1786 @code{'threedim}, o valor padrão é @code{true}, diz ao Maxima se ou monta-se o gráfico de uma matriz de três colunas como um diagrama 3D ou se monta-se o gráfico como um diagrama de dispersão de várias variáveis. Veja exemplos abaixo.
1788 @item
1789 @code{'axisrot}, o valor padrão é @code{[60, 30]}, modifica o ponto de visualização quando @code{'threedim} for escolhido para @code{true} dados forem armazenados em uma matriz de três colunas. O primeiro número é o ângulo de rotação do eixo @var{x}, e o segundo número é o angulo de rotação do eixo @var{z}-axis, ambas as medidas em graus.
1791 @item
1792 @code{'nclasses}, o valor padrão é @code{10}, é o número de classes para histogramas na diagonal de gráficos de dispersão de várias variáveis.
1794 @item
1795 @code{'pointstyle}, o valor padrão é @code{1}, é um inteiro que indica como mostrar pontos de amostra.
1797 @end itemize
1799 Por exemplo, com a seguite entrada um gráfico simples dos primeiros vinte dígitos de @code{%pi} é requisitado e a saída é armazenada em um arquivo no formato eps.
1801 @c ===beg===
1802 @c load ("descriptive")$
1803 @c load ("numericalio")$
1804 @c s1 : read_list (file_search ("pidigits.data"))$
1805 @c dataplot (makelist (s1[k], k, 1, 20), 'pointstyle = 3)$
1806 @c ===end===
1807 @example
1808 (%i1) load ("descriptive")$
1809 (%i2) load ("numericalio")$
1810 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1811 (%i4) dataplot (makelist (s1[k], k, 1, 20), 'pointstyle = 3)$
1812 @end example
1814 Note que dados unidimensionais são colocados no gráfico como uma série de tempo. No caso seguinte, ocorre a mesma coisa só que com mais dados e com mais configurações,
1816 @c ===beg===
1817 @c load ("descriptive")$
1818 @c load ("numericalio")$
1819 @c s1 : read_list (file_search ("pidigits.data"))$
1820 @c dataplot (makelist (s1[k], k, 1, 50), 'maintitle = "Primeiros dígitos de pi",
1821 @c  'axisnames = ["ordem do dígito", "valor do dígito"], 'pointstyle = 2,
1822 @c  'joined = true)$
1823 @c ===end===
1824 @example
1825 (%i1) load ("descriptive")$
1826 (%i2) load ("numericalio")$
1827 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1828 (%i4) dataplot (makelist (s1[k], k, 1, 50), 'maintitle = "Primeiros dígitos de pi",
1829  'axisnames = ["ordem do dígito", "valor do dígito"], 'pointstyle = 2,
1830  'joined = true)$
1831 @end example
1833 A função @code{dataplot} pode ser usada para montar gráficos de pontos no plano. O exemplo seguinte é gráfico de dispersão de pares de pontos de velocidades de vento para o primeira e para o quinta estação meteorológica,
1835 @c ===beg===
1836 @c load ("descriptive")$
1837 @c load ("numericalio")$
1838 @c s2 : read_matrix (file_search ("wind.data"))$
1839 @c dataplot (submatrix (s2, 2, 3, 4), 'pointstyle = 2,
1840 @c  'maintitle = "Pares de medidas de velocidade do vento em nós",
1841 @c  'axisnames = ["Velocidade do vento em A", "Velocidade do vento em E"])$
1842 @c ===end===
1843 @example
1844 (%i1) load ("descriptive")$
1845 (%i2) load ("numericalio")$
1846 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1847 (%i4) dataplot (submatrix (s2, 2, 3, 4), 'pointstyle = 2,
1848  'maintitle = "Pares de medidas de velocidade do vento em nós",
1849  'axisnames = ["Velocidade do vento em A", "Velocidade do vento em E"])$
1850 @end example
1852 Se pontos forem armazenados em uma matriz de duas colunas, @code{dataplot} pode montar o gráfico desses pontos diretamente, mas se eles forem formatados em uma lista de pares, essa lista deve ser transformada em uma matriz como no seguinte exemplo.
1854 @c ===beg===
1855 @c load ("descriptive")$
1856 @c x : [[-1, 2], [5, 7], [5, -3], [-6, -9], [-4, 6]]$
1857 @c dataplot (apply ('matrix, x), 'maintitle = "Pontos",
1858 @c  'joined = true, 'axisnames = ["", ""], 'picturescales = [0.5, 1.0])$
1859 @c ===end===
1860 @example
1861 (%i1) load ("descriptive")$
1862 (%i2) x : [[-1, 2], [5, 7], [5, -3], [-6, -9], [-4, 6]]$
1863 (%i3) dataplot (apply ('matrix, x), 'maintitle = "Pontos",
1864  'joined = true, 'axisnames = ["", ""], 'picturescales = [0.5, 1.0])$
1865 @end example
1867 Pontos no espaço tridimensional podem ser vistos como uma projeção no plano. Nesse exemplo, o gráfico de velocidades do vento correspondendo a três estações meteorológicas são requisitados, primeiramente em um gráfico em 3D e a seguir em um gráfico de dispersão de várias variáveis.
1869 @c ===beg===
1870 @c load ("descriptive")$
1871 @c load ("numericalio")$
1872 @c s2 : read_matrix (file_search ("wind.data"))$
1873 @c /* Gráfico em 3Dt */ dataplot (submatrix (s2, 4, 5), 'pointstyle = 2,
1874 @c  'maintitle = "Pares de medidas de velocidades do vento em nós",
1875 @c  'axisnames = ["Estação A", "Estação B", "Estação C"])$
1876 @c /* Gráfico de dispersão de várias variáveis */ dataplot (submatrix (s2, 4, 5),
1877 @c  'nclasses = 6, 'threedim = false)$
1878 @c ===end===
1879 @example
1880 (%i1) load ("descriptive")$
1881 (%i2) load ("numericalio")$
1882 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1883 (%i4) /* 3D plot */ dataplot (submatrix (s2, 4, 5), 'pointstyle = 2,
1884  'maintitle = "Pares de medidas de velocidades do vento em nós",
1885  'axisnames = ["Estação A", "Estação B", "Estação C"])$
1886 (%i5) /* Gráfico de dispersão de várias variáveis */ dataplot (submatrix (s2, 4, 5),
1887  'nclasses = 6, 'threedim = false)$
1888 @end example
1889 Note que no último exemplo, o número de classes no histogramas da diagonal é escolhido para 6, e aquela opção @code{'threedim} for escolhida para @code{false}.
1891 Para mais que três dimensões somente gráficos de dispersão de várias variáveis são possível, como em
1893 @c ===beg===
1894 @c load ("descriptive")$
1895 @c load ("numericalio")$
1896 @c s2 : read_matrix (file_search ("wind.data"))$
1897 @c dataplot (s2)$
1898 @c ===end===
1899 @example
1900 (%i1) load ("descriptive")$
1901 (%i2) load ("numericalio")$
1902 (%i3) s2 : read_matrix (file_search ("wind.data"))$
1903 (%i4) dataplot (s2)$
1904 @end example
1905 @end deffn
1909 @deffn {Função} histogram (@var{lista})
1910 @deffnx {Função} histogram (@var{lista}, @var{opção_1}, @var{opção_2}, ...)
1911 @deffnx {Função} histogram (@var{one_column_matrix})
1912 @deffnx {Função} histogram (@var{one_column_matrix}, @var{opção_1}, @var{opção_2}, ...)
1913 Essa função monta um gráfico de um histograma. Dados de amostras devem ser armazenados em uma lista de números ou em uma matriz de uma coluna. Fornecendo valores para as seguintes @var{opções} alguns aspéctos do gráfico podem ser controlados:
1915 @itemize @bullet
1917 @item
1918 @code{'outputdev}, o valor padrão é @code{"x"}, indica o formato de arquivo da figura de saída; valores corretos são @code{"x"}, @code{"eps"} e @code{"png"}, para a tela, formato de arquivo postscript e formato de arquivo png, respectivamente.
1920 @item
1921 @code{'maintitle}, o valor padrão é @code{""}, é o título principal entre aspas duplas.
1923 @item
1924 @code{'axisnames}, o valor padrão é @code{["x", "Fr."]}, é uma lista de nomes dos eixos @code{x} e @code{y}.
1926 @item
1927 @code{'picturescales}, o valor padrão é @code{[1.0, 1.0]}, fator de proporcionalidade para o tamanho do gráfico.
1929 @item
1930 @code{'nclasses}, o valor padrão é @code{10}, é o número de classes ou o número de barras.
1932 @item
1933 @code{'relbarwidth}, o valor padrão é @code{0.9}, um número decimao entre 0 e 1 para controlar a largura das barras.
1935 @item
1936 @code{'barcolor}, o valor padrão é @code{1}, um inteiro para indicar a cor das barras.
1938 @item
1939 @code{'colorintensity}, o valor padrão é @code{1}, um número decimal entre 0 e 1 para estabelecer a intensidade da cor.
1941 @end itemize
1943 Nos próximos dois exemplos, histogramas são requisitados para os primeiros 100 dígitos do número @code{%pi} e para velocidades do vento na terceira estação meteorológica.
1945 @c ===beg===
1946 @c load ("descriptive")$
1947 @c load ("numericalio")$
1948 @c s1 : read_list (file_search ("pidigits.data"))$
1949 @c histogram (s1, 'maintitle = "dígitos de pi", 'axisnames = ["", "Freq@"{u}ência absoluta"],
1950 @c  'relbarwidth = 0.2, 'barcolor = 3, 'colorintensity = 0.6)$
1951 @c s2 : read_matrix (file_search ("wind.data"))$
1952 @c histogram (col (s2, 3), 'colorintensity = 0.3)$
1953 @c ===end===
1954 @example
1955 (%i1) load ("descriptive")$
1956 (%i2) load ("numericalio")$
1957 (%i3) s1 : read_list (file_search ("pidigits.data"))$
1958 (%i4) histogram (s1, 'maintitle = "dígitos de pi", 'axisnames = ["", "Freq@"{u}ência absoluta"],
1959  'relbarwidth = 0.2, 'barcolor = 3, 'colorintensity = 0.6)$
1960 (%i5) s2 : read_matrix (file_search ("wind.data"))$
1961 (%i6) histogram (col (s2, 3), 'colorintensity = 0.3)$
1962 @end example
1963 Note tque no primeiro caso, @code{s1} é uma lista  e o segundo exemplo, @code{col(s2,3)} é uma matriz.
1965 Veja também a função @code{barsplot}.
1966 @end deffn
1970 @deffn {Função} barsplot (@var{lista})
1971 @deffnx {Função} barsplot (@var{lista}, @var{opção_1}, @var{opção_2}, ...)
1972 @deffnx {Função} barsplot (@var{one_column_matrix})
1973 @deffnx {Função} barsplot (@var{one_column_matrix}, @var{opção_1}, @var{opção_2}, ...)
1974 Similar a @code{histogram} mas para variáveis estatísticas, numéricas ou divididas em categorias. As opções estão abaixo,
1976 @itemize @bullet
1978 @item
1979 @code{'outputdev}, o valor padrão é @code{"x"}, indica o formato de arquivo da figura de saída; valores corretos são @code{"x"}, @code{"eps"} e @code{"png"}, para a tela, formato de arquivo postscript e formato de arquivo png, respectivamente.
1981 @item
1982 @code{'maintitle}, o valor padrão é @code{""}, é o título principal entre aspas duplas.
1984 @item
1985 @code{'axisnames}, o valor padrão é @code{["x", "Fr."]}, é uma lista de nomes dos eixos @code{x} e @code{y}.
1987 @item
1988 @code{'picturescales}, o valor padrão é @code{[1.0, 1.0]}, fator de proporcionalidade para o tamanho do gráfico.
1990 @item
1991 @code{'relbarwidth}, o valor padrão é @code{0.9}, um número decimao entre 0 e 1 para controlar a largura das barras.
1993 @item
1994 @code{'barcolor}, o valor padrão é @code{1}, um inteiro para indicar a cor das barras.
1996 @item
1997 @code{'colorintensity}, o valor padrão é @code{1}, um número decimal entre 0 e 1 para estabelecer a intensidade da cor.
2000 @end itemize
2002 Esse exemplo monta um gráfico de barras para os grupos @code{A} e @code{B} de pacientes na amostra @code{s3},
2004 @c ===beg===
2005 @c load ("descriptive")$
2006 @c load ("numericalio")$
2007 @c s3 : read_matrix (file_search ("biomed.data"))$
2008 @c barsplot (col (s3, 1), 'maintitle = "Grupos de pacientes",
2009 @c  'axisnames = ["Grupo", "# de indivíduos"], 'colorintensity = 0.2)$
2010 @c ===end===
2011 @example
2012 (%i1) load ("descriptive")$
2013 (%i2) load ("numericalio")$
2014 (%i3) s3 : read_matrix (file_search ("biomed.data"))$
2015 (%i4) barsplot (col (s3, 1), 'maintitle = "Grupos de pacientes",
2016  'axisnames = ["Grupo", "# de indivíduos"], 'colorintensity = 0.2)$
2017 @end example
2018 A primeira coluna na amostra @code{s3} armazena os valores das categorias @code{A} e @code{B}, também conhecidos algumas vezes como fatores. Por outro lado, os números inteiros positivos na segunda coluna sào idades, em anos, que se comportam como variável discreta, então podemos montar um gráfico as freq@"{u}ências absolutas para esses valores,
2020 @c ===beg===
2021 @c load ("descriptive")$
2022 @c load ("numericalio")$
2023 @c s3 : read_matrix (file_search ("biomed.data"))$
2024 @c barsplot (col (s3, 2), 'maintitle = "Idades",
2025 @c  'axisnames = ["Anos", "# dos indivíduos"], 'colorintensity = 0.2,
2026 @c  'relbarwidth = 0.6)$
2027 @c ===end===
2028 @example
2029 (%i1) load ("descriptive")$
2030 (%i2) load ("numericalio")$
2031 (%i3) s3 : read_matrix (file_search ("biomed.data"))$
2032 (%i4) barsplot (col (s3, 2), 'maintitle = "Idades",
2033  'axisnames = ["Anos", "# dos indivíduos"], 'colorintensity = 0.2,
2034  'relbarwidth = 0.6)$
2035 @end example
2038 Veja também a função @code{histogram}.
2039 @end deffn
2043 @deffn {Função} boxplot (@var{data})
2044 @deffnx {Função} boxplot (@var{data}, @var{opção_1}, @var{opção_2}, ...)
2045 Essa função monta diagramas em caixas. O argumento @var{data} pode ser uma lista, que não é de grande interesse, uma vez que esses diagramas são principalmente usados para comparação entre diferentes amostras, ou uma matriz, eentão é possível comparar dois ou mais componentes de uma variável estatística de várias variáveis. Mas é também permitido @var{data} se uma lista de amostras com tamanhos diferentes de amostra, de fato essa é aa única função no pacote @code{descriptive} que admite esse tipo de estrutura de dados. Veja o exemplo abaixo.  Abaixo etão as opções,
2047 @itemize @bullet
2049 @item
2050 @code{'outputdev}, o valor padrão é @code{"x"}, indica o formato de arquivo da figura de saída; valores corretos são @code{"x"}, @code{"eps"} e @code{"png"}, para a tela, formato de arquivo postscript e formato de arquivo png, respectivamente.
2052 @item
2053 @code{'maintitle}, o valor padrão é @code{""}, é o título principal entre aspas duplas.
2055 @item
2056 @code{'axisnames}, o valor padrão é @code{["sample", "y"]}, é uma lista de nomes dos eixos @code{x} e @code{y}.
2058 @item
2059 @code{'picturescales}, o valor padrão é @code{[1.0, 1.0]}, fator de proporcionalidade para o tamanho do gráfico.
2061 @end itemize
2063 Examples:
2065 @c ===beg===
2066 @c load ("descriptive")$
2067 @c load ("numericalio")$
2068 @c s2 : read_matrix (file_search ("wind.data"))$
2069 @c boxplot (s2, 'maintitle = "Velocidade do vento em nós",
2070 @c  'axisnames = ["Estação do ano", ""])$
2071 @c A :
2072 @c  [[6, 4, 6, 2, 4, 8, 6, 4, 6, 4, 3, 2],
2073 @c   [8, 10, 7, 9, 12, 8, 10],
2074 @c   [16, 13, 17, 12, 11, 18, 13, 18, 14, 12]]$
2075 @c boxplot (A)$
2076 @c ===end===
2077 @example
2078 (%i1) load ("descriptive")$
2079 (%i2) load ("numericalio")$
2080 (%i3) s2 : read_matrix (file_search ("wind.data"))$
2081 (%i4) boxplot (s2, 'maintitle = "Velocidade do vento em nós",
2082  'axisnames = ["Estação do ano", ""])$
2083 (%i5) A :
2084  [[6, 4, 6, 2, 4, 8, 6, 4, 6, 4, 3, 2],
2085   [8, 10, 7, 9, 12, 8, 10],
2086   [16, 13, 17, 12, 11, 18, 13, 18, 14, 12]]$
2087 (%i6) boxplot (A)$
2088 @end example
2089 @end deffn