File: pca.man

package info (click to toggle)
tcllib 1.20%2Bdfsg-1
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 68,064 kB
  • sloc: tcl: 216,842; ansic: 14,250; sh: 2,846; xml: 1,766; yacc: 1,145; pascal: 881; makefile: 107; perl: 84; f90: 84; python: 33; ruby: 13; php: 11
file content (136 lines) | stat: -rw-r--r-- 4,631 bytes parent folder | download | duplicates (2)
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
[comment {-*- tcl -*- doctools manpage}]
[manpage_begin math::PCA n 1.0]
[keywords PCA]
[keywords statistics]
[keywords math]
[keywords tcl]
[moddesc   {Principal Components Analysis}]
[titledesc {Package for Principal Component Analysis}]
[category  Mathematics]
[require Tcl [opt 8.6]]
[require math::linearalgebra 1.0]

[description]
[para]
The PCA package provides a means to perform principal components analysis
in Tcl, using an object-oriented technique as facilitated by TclOO. It
actually defines a single public method, [term ::math::PCA::createPCA],
which constructs an object based on the data that are passed to perform
the actual analysis.

[para]
The methods of the PCA objects that are created with this command allow one
to examine the principal components, to approximate (new) observations
using all or a selected number of components only and to examine the
properties of the components and the statistics of the approximations.

[para]
The package has been modelled after the PCA example provided by the
original linear algebra package by Ed Hume.

[section "Commands"]
The [term math::PCA] package provides one public command:
[list_begin definitions]

[call [cmd ::math::PCA::createPCA] [arg data] [opt args]]
Create a new object, based on the data that are passed via the [term data] argument.
The principal components may be based on either correlations or covariances.
All observations will be normalised according to the mean and standard deviation
of the original data.

[list_begin arguments]
[arg_def list data] - A list of observations (see the example below).
[arg_def list args] - A list of key-value pairs defining the options. Currently there is
only one key: [term -covariances]. This indicates if covariances are to be used
(if the value is 1) or instead correlations (value is 0). The default is to use
correlations.
[list_end]

[list_end]

The PCA object that is created has the following methods:
[list_begin definitions]

[call [cmd "\$pca using"] [opt number]|[opt "-minproportion value"]]
Set the number of components to be used in the analysis (the number of retained components).
Returns the number of components, also if no argument is given.

[list_begin arguments]
[arg_def int number] - The number of components to be retained
[arg_def double value] - Select the number of components based on the minimum proportion
of variation that is retained by them. Should be a value between 0 and 1.
[list_end]


[call [cmd "\$pca eigenvectors"] [opt option]]
Return the eigenvectors as a list of lists.

[list_begin arguments]
[arg_def string option] - By default only the [emph retained] components are returned.
If all eigenvectors are required, use the option [term -all].
[list_end]


[call [cmd "\$pca eigenvalues"] [opt option]]
Return the eigenvalues as a list of lists.

[list_begin arguments]
[arg_def string option] - By default only the eigenvalues of the [emph retained] components are returned.
If all eigenvalues are required, use the option [term -all].
[list_end]


[call [cmd "\$pca proportions"] [opt option]]
Return the proportions for all components, that is, the amount of variations that each
components can explain.


[call [cmd "\$pca approximate"] [arg observation]]
Return an approximation of the observation based on the retained components

[list_begin arguments]
[arg_def list observation] - The values for the observation.
[list_end]


[call [cmd "\$pca approximatOriginal"]]
Return an approximation of the original data, using the retained components. It is
a convenience method that works on the complete set of original data.


[call [cmd "\$pca scores"] [arg observation]]
Return the scores per retained component for the given observation.

[list_begin arguments]
[arg_def list observation] - The values for the observation.
[list_end]


[call [cmd "\$pca distance"] [arg observation]]
Return the distance between the given observation and its approximation. (Note:
this distance is based on the normalised vectors.)

[list_begin arguments]
[arg_def list observation] - The values for the observation.
[list_end]


[call [cmd "\$pca qstatistic"] [arg observation] [opt option]]
Return the Q statistic, basically the square of the distance, for the given observation.

[list_begin arguments]
[arg_def list observation] - The values for the observation.
[arg_def string option] - If the observation is part of the original data, you may want
to use the corrected Q statistic. This is achieved with the option "-original".
[list_end]

[list_end]

[section EXAMPLE]
TODO: NIST example



[vset CATEGORY PCA]
[include ../common-text/feedback.inc]
[manpage_end]