Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

This is a workflow to develop multiplex assay from singleplex data in PCR

NotificationsYou must be signed in to change notification settings

LMigliet/SmartPlexer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Please use the branch: "smartplexer_paper_nature" if you want to see the code reported in theNature paper.

Welcome to the Smart-Plexer repository! This repository contains the code used for the development and validation of the Smart-Plexer framework, as described in our paper. Smart-Plexer is designed to optimize the selection of primer mixes for multiplex PCR assays through a combination of empirical testing and in-silico simulations.

How It Works

You should first use theAdaptiveFilter Algorithm to get the processed dataframes and the metadata needed.

This impluies that you are extracting data from the fluidigm real-time digital PCR machine. If data have different format please raise an issue. Check the section below and thetest_data to see the structure.

Introduction

The Smart-Plexer framework is developed to streamline the development of multiplex PCR assays by combining empirical testing with computer simulations. The framework leverages kinetic inter-target distances among amplification curves to optimize the selection of primer sets for accurate multi-pathogen identification. Initially, the ‘c’ parameter was used as the main feature for optimization. However, we have extended the feature set to include additional robust features that enhance the reliability and accuracy of the assay selection process.

Features

  • Curve Fitting: Fits the PCR amplification curves using a 5-parameter sigmoid model.
  • Feature Extraction: Extract features from the amplification curves, including the ‘c’ parameter and additional robust features.
  • Distance Calculation: Calculates distances between amplification curves using various metrics.
  • Assay Selection: Ranks and selects optimal multiplex PCR assays based on feature distances.
  • Empirical Validation: Validates selected assays through wet-lab experiments.

Disclaimer:There are two patents related to this work at Imperial College London:

Folder Structure

Your folder structure should look like this:How your folder should look like:Usr/code/data/20210701_01/Inside the folder (if you usedAdaptiveFilter Algorithm), there will be:

  • raw_data,
  • processed,
  • plots
  • metadata.csv

Metadata Structure

In this example, there are 5 columns in the metadata:

PanelPrimerMixTargetAssayConc
1PM3.17MERMER_N_021.00E+05
2PM3.17COCCOC_N_051.00E+05

Data Retrieval and Experiment Object Creation

The first step involves retrieving the data and creating experiment objects using thecreate_experiment_objects function. This function loads data from specified directories and structures it into experiment objects for further processing.

# Define the path where experiment folders are storeddata_path=Path.cwd().parents[0]/"00_data"# Experiment IDs (ensure folders are named only with the experiment ID)experiment_ids= ["20210701_01","20210701_02"]# Define the METADATA LEN as they will be exclueded from the curve/param data.META_LEN=5

Assay Combination Generation

Once the experiment data is loaded, the next step is to generate all possible combinations of assays based on their targets. The process involves:

  1. Grouping assays by target: Assays are grouped by their target gene.
  2. Filtering for singleplex panels: Only panels with primermix set to "singleplex" are considered for combinations.
  3. Generating combinations: The Combinator class is used to generate and store all possible combinations of assays forthe given targets.

Explanation of Key Components

  • Combinator Class: The Combinator class is responsible for generating all possible combinations of assays based on the provided assay dictionary. It stores the combinations and provides methods to access the generated combinations and the count.

  • create_experiment_objects Function: This function initializes experiment objects from raw data, facilitating further processing and analysis.

Running the Code

  1. Ensure your experiment data is correctly formatted and stored in the specified directory.
  2. Update theexperiment_ids list with the IDs of your experiments.
  3. Run the code to generate assay combinations and analyze the results.

Conclusion

The Smart-Plexer framework is a powerful tool for the development and validation of multiplex PCR assays. By combining in-silico simulations with empirical testing, it optimizes the selection of primer sets, ensuring accurate and reliable multi-pathogen identification.

About

This is a workflow to develop multiplex assay from singleplex data in PCR

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages


[8]ページ先頭

©2009-2025 Movatter.jp