Sequence Analysis (GYDE)
Frequency analysis component for analyzing amino acid mutations across sequence alignments. Originally from the GYDE (Genentech Antibody Design Environment) application.
Live Demo
Features
Mutation Frequency Analysis
Analyze the frequency of amino acid substitutions at each position in a multiple sequence alignment.
Selection Modes
Single, multiple, and frequency cutoff selection modes for flexible analysis.
Chain Navigation
Support for multi-chain sequences like heavy and light chains in antibodies.
CSV Export
Export frequency analysis results for further processing.
Implementation Guide
Step 1: Install Dependencies
Add the required packages to your project:
npm install @mui/material @emotion/react @emotion/styledStep 2: Copy Component Files
Copy these files from the GYDE source to your project:
src/gyde/frequencyAnalysis/FrequencyAnalysis.jssrc/gyde/frequencyAnalysis/frequencyAnalysisUtils.jssrc/gyde/frequencyAnalysis/Summary.js
Step 3: Prepare Your Data
Format your sequence alignment data as columnar arrays:
// columnarData: object with sequence columns
const columnarData = {
seq_heavy: ['EVQLV...', 'QVQLV...', ...],
seq_light: ['DIQMT...', 'EIVLT...', ...]
};
// alignments: aligned sequences with gaps
const alignments = {
heavy: ['-EVQLV...', 'QVQLV-...'],
light: ['DIQMT-...', '-EIVLT...']
};
// references: reference sequence for each chain
const references = {
heavy: 'EVQLVESGG...',
light: 'DIQMTQSPS...'
};Step 4: Add the Component
Import and use the FrequencyAnalysis component:
import FrequencyAnalysis from './gyde/frequencyAnalysis/FrequencyAnalysis';
function MyApp() {
const [selectedColumns, setSelectedColumns] = useState({});
return (
<FrequencyAnalysis
data={columnarData}
alignments={alignments}
references={references}
seqColumns={['seq_heavy', 'seq_light']}
selectedColumns={selectedColumns}
updateSelectedColumns={setSelectedColumns}
/>
);
}Step 5: Handle Selection Events
The updateSelectedColumns callback receives selected positions for mutation analysis or design workflows.