From 464c588a97e6bc11c5fb6b14e6764fbe997cb6b0 Mon Sep 17 00:00:00 2001 From: jprocter Date: Thu, 6 Sep 2012 15:44:52 +0100 Subject: [PATCH] JAL-1013 JAL-1167 JAL-1121 JAL-1125 --- help/html/calculations/pca.html | 49 +++++++++++++++++++++++----------- help/html/calculations/pcaviewer.gif | Bin 0 -> 15569 bytes 2 files changed, 33 insertions(+), 16 deletions(-) create mode 100644 help/html/calculations/pcaviewer.gif diff --git a/help/html/calculations/pca.html b/help/html/calculations/pca.html index 695c45a..09529a5 100755 --- a/help/html/calculations/pca.html +++ b/help/html/calculations/pca.html @@ -26,11 +26,12 @@ similarities within a selected group, or all of the sequences in an alignment. After the calculation finishes, a 3D viewer displays the set of sequences as points in 'similarity space', and similar sequences tend to lie near each other in the space.

-

Note: The calculation is computationally expensive, and may fail +

Caveats
The calculation is computationally expensive, and may fail for very large sets of sequences - usually because the JVM has run out of memory. A future release of Jalview will be able to avoid this by executing the calculation via a web service.

-

Principal components analysis is a technique for examining the + +

About PCAPrincipal components analysis is a technique for examining the structure of complex data sets. The components are a set of dimensions formed from the measured values in the data set, and the principle component is the one with the greatest magnitude, or length. The sets of @@ -38,18 +39,34 @@ measurements that differ the most should lie at either end of this principle axis, and the other axes correspond to less extreme patterns of variation in the data set.

-

In this case, the components are generated by an eigenvector -decomposition of the matrix formed from the sum of BLOSUM scores at each -aligned position between each pair of sequences. The matrix is not -symmetric - elements in the upper diagonal give the sum of scores for -mutating in one direction, and the lower diagonal is the sum of scores -for mutating in the other. This is a refinement of the method described -in the paper by G. Casari, C. Sander and A. Valencia. Structural Biology -volume 2, no. 2, February 1995 (pubmed) -and implemented at the SeqSpace server at the EBI.

- -

The PCA Viewer

+

+ Calculating PCAs for aligned sequences
Jalview can + perform PCA analysis on both proteins and nucleotide sequence + alignments. In both cases, components are generated by an eigenvector + decomposition of the matrix formed from the sum of substitution matrix + scores at each aligned position between each pair of sequences - + computed either with BLOSUM62 or the simple single nucleotide + substitution matrix. The options available for calculation are given + in the Change Parameters menu.
+ Jalview allows two types of PCA calculation. The default Jalview + PCA Calculation mode (indicated when that option is ticked in the Change + Parameters menu) of the viewer performs PCA on a matrix where + elements in the upper diagonal give the sum of scores for mutating in + one direction, and the lower diagonal is the sum of scores for + mutating in the other. For protein substitution models like BLOSUM62, + this gives an asymmetric matrix, and a different PCA to one produced + with the method described in the paper by G. Casari, C. Sander and A. + Valencia. Structural Biology volume 2, no. 2, February 1995 (pubmed) + and implemented at the SeqSpace server at the EBI. The original method + preconditions the matrix by multiplying it with its transpose, and + this mode is enabled by unchecking the Jalview + PCA Calculation option in the Change + Parameters menu. +

+ +

The PCA Viewer

This is an interactive display of the sequences positioned within the similarity space, as points in a rotateable 3D scatterplot. The colour of each sequence point is the same as the sequence group colours, @@ -83,10 +100,10 @@ Nodes sub-menu.

Initially, the display shows the first three components of the similarity space, but any eigenvector can be used by changing the selected dimension for the x, y, or z axis through each ones menu -located below the 3d display. The Reset button will reset axis and rotation settings to their defaults.

+located below the 3d display. The Reset button will reset axis and rotation settings to their defaults.

The output of points and transformed point coordinates was added to the Jalview desktop in v2.7. -The Reset button, and Nucleotide or Protein calculation settings were added in Jalview 2.8. +The Reset button and Change Parameters menu were added in Jalview 2.8. diff --git a/help/html/calculations/pcaviewer.gif b/help/html/calculations/pcaviewer.gif new file mode 100644 index 0000000000000000000000000000000000000000..215ceaf40e5f4de04e52146a1e6cd6007d40c6f7 GIT binary patch literal 15569 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 literal 0 HcmV?d00001 -- 1.7.10.2