Daniel:Notebook/ComboLock/CProbeDesign: Difference between revisions

From ZhangLabWiki
Jump to navigation Jump to search
>Djacobse
>Djacobse
 
(7 intermediate revisions by the same user not shown)
Line 2: Line 2:


[[Daniel:Notebook/ComboLock|Back to Notebook]]
[[Daniel:Notebook/ComboLock|Back to Notebook]]
*[http://www.nature.com/nmeth/journal/v13/n3/abs/nmeth.3742.html Frei et al paper] C probe desing is based on


This page describes the methods used for designing C-Probes for Combo Lock.  The illustration below shows what a C-probe is expected to look like.  The descriptions given include the original design sizes.
This page describes the methods used for designing C-Probes for Combo Lock.  The illustration below shows what a C-probe is expected to look like.  The descriptions given include the original design sizes.


[[Image:C_Probes.png|600px]]
[[Image:C_Probes.png|600px]]
==Designing Capture Arm==
The capture arm design aims to create 2 sequences that are orthogonal to the human genome/transcriptome, so that these sequences will not have non-specific binding.  The two flanking sequences (one for padlock and one for latch) will have an 8bp region between them that will be a barcode unique to each C-probe. 
Each C probe of a pair will have:
#Padlock matching region, this will be a different sequence for each of the pair of C probes, but will be the same across pairs
#Latch matching region, this will be a different sequence for each of the pair of C probes, but will be the same across pairs
#8 bp barcode region, this will be unique for every C probe
<ol>
<li>Randomly generate a large list of 18bp sequences</li>
python primergenerator.py -a -n $nprimers -l $plength -o primers.fa  [[Media:Primergenerator.txt|primergenerator.py]]
<li>BLAST sequences against genome</li>
blastn -db hg19.fa -query primers.fa -num_descriptions 5 -task blastn-short -out primers.blastout.txt -outfmt 7
<li>Reorder the sequences based on BLAST results (oligos with fewest hits are best)</li>
python primerblast.analyzer.py -n $nprimers -l $plength -o $OUTFILE  [[Media:Primerblast.analyzer.txt|Primerblast.analyzer.py]]
<li>Generate random 8bp barcodes and make sure they are not too similar to one another (I use >=2bp of difference) </li>
python barcodegenerator.py -n $nbarcodes -l $blength  [[Media:Barcodegenerator.txt|Barcodegenerator.py]]
<li>Select two oligo sequences and link them together with barcodes</li>
[[Media:Makecprobearm.sh.txt|bash script]]
<li>BLAST sequences against genome and transcriptome</li>
[[Media:Blastoff.txt|shell script]] and python script: [[Media:Probearm.blastanalyzer.txt|probearm.blastanalyzer.py]]
</ol>
===Test Run===
The tallies I came away with were:
#Setting Tm to 60+-3C and length to 18bp for padlock/latch matching sequences and 8bp for barcode:
##Found many potential primer sets to use (I used primers 2 and 4)
#In combining them with 100 barcodes
## 96 barcodes were at least 2 bp apart
## Of the 96, 73 had significant blast matches
##Final tally was therefore 23/100 primer-flanked barcodes were usable


==Designing Transcript Matching Region==
==Designing Transcript Matching Region==
Line 33: Line 69:
</li>
</li>
  PLAYRDesign.run()
  PLAYRDesign.run()
<li>After running, you will get a image on the side that looks like this:
[[Image:PLAYRDesign_Snapshot_Figure.png|500px]]</li>
<li>Select your probe or probes of interest by clicking on the bottom blocks.  Clicking on one block of the pair will select both
</ol>
</ol>


===PLAYRDesign Configuration File===
===PLAYRDesign Configuration File===

Latest revision as of 00:49, 22 April 2016

C Probe Design[edit]

Back to Notebook

This page describes the methods used for designing C-Probes for Combo Lock. The illustration below shows what a C-probe is expected to look like. The descriptions given include the original design sizes.

File:C Probes.png

Designing Capture Arm[edit]

The capture arm design aims to create 2 sequences that are orthogonal to the human genome/transcriptome, so that these sequences will not have non-specific binding. The two flanking sequences (one for padlock and one for latch) will have an 8bp region between them that will be a barcode unique to each C-probe.

Each C probe of a pair will have:

  1. Padlock matching region, this will be a different sequence for each of the pair of C probes, but will be the same across pairs
  2. Latch matching region, this will be a different sequence for each of the pair of C probes, but will be the same across pairs
  3. 8 bp barcode region, this will be unique for every C probe
  1. Randomly generate a large list of 18bp sequences
  2. python primergenerator.py -a -n $nprimers -l $plength -o primers.fa primergenerator.py
  3. BLAST sequences against genome
  4. blastn -db hg19.fa -query primers.fa -num_descriptions 5 -task blastn-short -out primers.blastout.txt -outfmt 7
  5. Reorder the sequences based on BLAST results (oligos with fewest hits are best)
  6. python primerblast.analyzer.py -n $nprimers -l $plength -o $OUTFILE Primerblast.analyzer.py
  7. Generate random 8bp barcodes and make sure they are not too similar to one another (I use >=2bp of difference)
  8. python barcodegenerator.py -n $nbarcodes -l $blength Barcodegenerator.py
  9. Select two oligo sequences and link them together with barcodes
  10. bash script
  11. BLAST sequences against genome and transcriptome
  12. shell script and python script: probearm.blastanalyzer.py

Test Run[edit]

The tallies I came away with were:

  1. Setting Tm to 60+-3C and length to 18bp for padlock/latch matching sequences and 8bp for barcode:
    1. Found many potential primer sets to use (I used primers 2 and 4)
  2. In combining them with 100 barcodes
    1. 96 barcodes were at least 2 bp apart
    2. Of the 96, 73 had significant blast matches
    3. Final tally was therefore 23/100 primer-flanked barcodes were usable

Designing Transcript Matching Region[edit]

    Must install R, Primer3, and Blast+ before using
  1. Make blast databases
  2. make one for repetitive regions (from Repbase)
  3. makeblastdb -in repbase.fa -dbtype nucl
  4. Make one for transcriptome; use only high quality bases (from NCBI ftp)
  5. makeblastdb -in rna_human_high_qual.fa -parse_seqids -dbtype nucl
  6. In R:
  7. library(devtools) install_github("nolanlab/PLAYRDesign") library(PLAYRDesign)
  8. Next make a library from UCSC in R:
  9. library(GenomicFeatures) txdb <- makeTxDbFromUCSC(genome = "hg19", tablename = "refGene") saveDb(txdb, "PUT THE PATH TO THE OUTPUT FILE HERE")
  10. Finally, run PLAYRDesign
    1. Select a file (any file) in the working directory you wish to use
    2. You must have a configuartion file in the directory you wish to use (see below)
    3. You can hit escape any time in the R window to stop PLAYRDesign
  11. PLAYRDesign.run()
  12. After running, you will get a image on the side that looks like this: File:PLAYRDesign Snapshot Figure.png
  13. Select your probe or probes of interest by clicking on the bottom blocks. Clicking on one block of the pair will select both


PLAYRDesign Configuration File[edit]

Needed to run PLAYRDesign. The name of the file must be playrdesign_conf.txt and must be in your working directory. An example is below. Note that if there are any spaces in your file (including after the path name) PLAYRDesign will not work properly

BLASTN_EXEC=/usr/bin/blastn           (The full path to the blastn executable)
BLASTN_DB=/opt/BLAST/                 (The directory containing your BLAST database files)
PRIMER3_EXEC=/usr/bin/primer3_core    (The full path to the primer3_core executable)
PRIMER3_CONFIG=/opt/primer3_config/   (The primer3_config directory that is found in the primer3 distribution, see above)
PLAYRDESIGN_DATA=/opt/PLAYRDesign_data   (The directory containing the EST and exon data, see above)

PLAYRDesign Output[edit]

I have attached a sample of the output probes from the C-probe designer: C Probe Analysis SOD1/VIM (pdf)

C Probe Analysis SOD1/VIM (docx)


Looking at the file, probes, I have highlighted the sequences that match the mRNA (mRNA sequence used is below the probe). From looking at two different pairs of probes for SOD1 and VIM (8 probes total), it is clear that the first 24bp are genomic matching. There then appears to be a 10 base poly-A spacer region, followed by the relevant barcodes. I have used the 24bp transcript matching region and 10bp spacer in my own designs.