LiftOver Howto: Difference between revisions
From genomewiki
Jump to navigationJump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
Creating a liftOver file is very similar to a whole-genome alignment. | Creating a liftOver file is very similar to a whole-genome alignment. This page is based on [[Minimal_Steps_For_LiftOver]], but is even more minimalistic. | ||
Also see the page [[Whole_genome_alignment_howto]] for some background on tools and terminology. | |||
== Outline == | == Outline == | ||
* BLAT the new genome onto the old genome | * BLAT the new genome onto the old genome | ||
* Sort/Chain/ | * Sort/Chain/Merge/Split/Net | ||
== Alignment == | == Alignment == | ||
* I have repeatmasked my new genome assembly | * My genome is rather small, so I don't do any splitting or lifting steps anywhere, that makes it simpler. | ||
* I have repeatmasked my new genome assembly. The masked fa files are in ../ci3/rm/masked | |||
* The old assembly is called ci2.2bit, the new assembly is in the directory ../ci3. After repeatmasking it's in rm/masked | |||
* I want the alignment .psl to be in the directory psl | * I want the alignment .psl to be in the directory psl | ||
mkdir psl | |||
for i in ../ci3/rm/masked/*.masked; do blat ../ci2.2bit $i -tileSize=12 -fastMap -minIdentity=98 psl/`basename $i .fa.masked`.psl -noHead -minScore=100; done | for i in ../ci3/rm/masked/*.masked; do blat ../ci2.2bit $i -tileSize=12 -fastMap -minIdentity=98 psl/`basename $i .fa.masked`.psl -noHead -minScore=100; done | ||
* Chain all the psl files into the directory chain: | |||
mkdir chain | |||
for i in psl/*.psl; do axtChain -linearGap=medium -psl $i ../ci2.2bit ../ci3/ci3.2bit chain/`basename $i .psl`.chain; done | |||
* Merge them into the directory chainMerge: | |||
mkdir chainMerge | |||
chainMergeSort chain/*.chain | chainSplit chainMerge stdin -lump=50 | |||
* And net them: | |||
twoBitInfo ../ci3/ci3.2bit ci3.chromInfo | |||
twoBitInfo ../ci2.2bit ci2.chromInfo | |||
cat chainMerge/*.chain > all.chain | |||
chainSort all.chain all.sorted.chain | |||
mkdir net | |||
chainNet all.sorted.chain ci2.chromInfo ci3.chromInfo net/all.net /dev/null | |||
* Create liftOver Info from nets: | |||
netChainSubset net/all.net all.chain ci2ToCi3.liftOver |
Revision as of 15:50, 30 June 2010
Creating a liftOver file is very similar to a whole-genome alignment. This page is based on Minimal_Steps_For_LiftOver, but is even more minimalistic.
Also see the page Whole_genome_alignment_howto for some background on tools and terminology.
Outline
- BLAT the new genome onto the old genome
- Sort/Chain/Merge/Split/Net
Alignment
- My genome is rather small, so I don't do any splitting or lifting steps anywhere, that makes it simpler.
- I have repeatmasked my new genome assembly. The masked fa files are in ../ci3/rm/masked
- The old assembly is called ci2.2bit, the new assembly is in the directory ../ci3. After repeatmasking it's in rm/masked
- I want the alignment .psl to be in the directory psl
mkdir psl for i in ../ci3/rm/masked/*.masked; do blat ../ci2.2bit $i -tileSize=12 -fastMap -minIdentity=98 psl/`basename $i .fa.masked`.psl -noHead -minScore=100; done
- Chain all the psl files into the directory chain:
mkdir chain for i in psl/*.psl; do axtChain -linearGap=medium -psl $i ../ci2.2bit ../ci3/ci3.2bit chain/`basename $i .psl`.chain; done
- Merge them into the directory chainMerge:
mkdir chainMerge chainMergeSort chain/*.chain | chainSplit chainMerge stdin -lump=50
- And net them:
twoBitInfo ../ci3/ci3.2bit ci3.chromInfo twoBitInfo ../ci2.2bit ci2.chromInfo cat chainMerge/*.chain > all.chain chainSort all.chain all.sorted.chain mkdir net chainNet all.sorted.chain ci2.chromInfo ci3.chromInfo net/all.net /dev/null
- Create liftOver Info from nets:
netChainSubset net/all.net all.chain ci2ToCi3.liftOver