Convert Salmon output to Sleuth-compatible format

Program introduction

What is Sleuth?

Sleuth is a program that performs differential expression analysis of gene isoforms using the transcript abundance estimates output from alignment-free methods, such as Sailfish, Salmon and Kallisto.

What is wasabi?

Wasabi is a program that converts Sailfish and Salmon output for downstream analysis with Sleuth.

Format conversion

We use Wasabi to prepare Salmon output for downstream analysis with sleuth

$ cd /home/USER/SSAPs
$ R

Define the file path to Salmon (and STAR+Salmon) quant directories

  • The "Salmon" mapping strategy is described here

  • The "STAR + Salmon" strategy is described here

  • The "Salmon with bootstrap" strategy is described here

library(wasabi)

# Salmon
files1 = file.path("salmon", list.files("salmon"))

# STAR + Salmon
files2 = file.path("salmon_star", list.files("salmon_star"))

# Salmon with bootstrap
files3 = file.path("salmon-bs", list.files("salmon-bs"))
> files1
 [1] "salmon/ERR2675454" "salmon/ERR2675455" "salmon/ERR2675458"
 [4] "salmon/ERR2675459" "salmon/ERR2675460" "salmon/ERR2675461"
 [7] "salmon/ERR2675464" "salmon/ERR2675465" "salmon/ERR2675468"
[10] "salmon/ERR2675469" "salmon/ERR2675472" "salmon/ERR2675473"
[13] "salmon/ERR2675476" "salmon/ERR2675477" "salmon/ERR2675478"
[16] "salmon/ERR2675479" "salmon/ERR2675480" "salmon/ERR2675481"
[19] "salmon/ERR2675484" "salmon/ERR2675485"

> files2
 [1] "salmon_star/ERR2675454" "salmon_star/ERR2675455" "salmon_star/ERR2675458"
 [4] "salmon_star/ERR2675459" "salmon_star/ERR2675460" "salmon_star/ERR2675461"
 [7] "salmon_star/ERR2675464" "salmon_star/ERR2675465" "salmon_star/ERR2675468"
[10] "salmon_star/ERR2675469" "salmon_star/ERR2675472" "salmon_star/ERR2675473"
[13] "salmon_star/ERR2675476" "salmon_star/ERR2675477" "salmon_star/ERR2675478"
[16] "salmon_star/ERR2675479" "salmon_star/ERR2675480" "salmon_star/ERR2675481"
[19] "salmon_star/ERR2675484" "salmon_star/ERR2675485"

> files3
 [1] "salmon-bs/ERR2675454" "salmon-bs/ERR2675455" "salmon-bs/ERR2675458"
 [4] "salmon-bs/ERR2675459" "salmon-bs/ERR2675460" "salmon-bs/ERR2675461"
 [7] "salmon-bs/ERR2675464" "salmon-bs/ERR2675465" "salmon-bs/ERR2675468"
[10] "salmon-bs/ERR2675469" "salmon-bs/ERR2675472" "salmon-bs/ERR2675473"
[13] "salmon-bs/ERR2675476" "salmon-bs/ERR2675477" "salmon-bs/ERR2675478"
[16] "salmon-bs/ERR2675479" "salmon-bs/ERR2675480" "salmon-bs/ERR2675481"
[19] "salmon-bs/ERR2675484" "salmon-bs/ERR2675485"

Run the prepare_fish_for_sleuth function to start conversion

prepare_fish_for_sleuth(files1)
prepare_fish_for_sleuth(files2)
prepare_fish_for_sleuth(files3)

The function will create abundance.h5 files in sleuth-compatible format in the same directory as the Salmon quant.sf files

> list.files(file.path("salmon", list.files("salmon")), 
full.names = TRUE, pattern = "abundance.h5")
 [1] "salmon/ERR2675454/abundance.h5" "salmon/ERR2675455/abundance.h5"
 [3] "salmon/ERR2675458/abundance.h5" "salmon/ERR2675459/abundance.h5"
 [5] "salmon/ERR2675460/abundance.h5" "salmon/ERR2675461/abundance.h5"
 [7] "salmon/ERR2675464/abundance.h5" "salmon/ERR2675465/abundance.h5"
 [9] "salmon/ERR2675468/abundance.h5" "salmon/ERR2675469/abundance.h5"
[11] "salmon/ERR2675472/abundance.h5" "salmon/ERR2675473/abundance.h5"
[13] "salmon/ERR2675476/abundance.h5" "salmon/ERR2675477/abundance.h5"
[15] "salmon/ERR2675478/abundance.h5" "salmon/ERR2675479/abundance.h5"
[17] "salmon/ERR2675480/abundance.h5" "salmon/ERR2675481/abundance.h5"
[19] "salmon/ERR2675484/abundance.h5" "salmon/ERR2675485/abundance.h5"
> list.files(file.path("salmon_star", list.files("salmon_star")), 
full.names = TRUE, pattern = "abundance.h5")
 [1] "salmon_star/ERR2675454/abundance.h5" "salmon_star/ERR2675455/abundance.h5"
 [3] "salmon_star/ERR2675458/abundance.h5" "salmon_star/ERR2675459/abundance.h5"
 [5] "salmon_star/ERR2675460/abundance.h5" "salmon_star/ERR2675461/abundance.h5"
 [7] "salmon_star/ERR2675464/abundance.h5" "salmon_star/ERR2675465/abundance.h5"
 [9] "salmon_star/ERR2675468/abundance.h5" "salmon_star/ERR2675469/abundance.h5"
[11] "salmon_star/ERR2675472/abundance.h5" "salmon_star/ERR2675473/abundance.h5"
[13] "salmon_star/ERR2675476/abundance.h5" "salmon_star/ERR2675477/abundance.h5"
[15] "salmon_star/ERR2675478/abundance.h5" "salmon_star/ERR2675479/abundance.h5"
[17] "salmon_star/ERR2675480/abundance.h5" "salmon_star/ERR2675481/abundance.h5"
[19] "salmon_star/ERR2675484/abundance.h5" "salmon_star/ERR2675485/abundance.h5"
> list.files(file.path("salmon-bs", list.files("salmon-bs")), 
full.names = TRUE, pattern = "abundance.h5")
 [1] "salmon-bs/ERR2675454/abundance.h5" "salmon-bs/ERR2675455/abundance.h5"
 [3] "salmon-bs/ERR2675458/abundance.h5" "salmon-bs/ERR2675459/abundance.h5"
 [5] "salmon-bs/ERR2675460/abundance.h5" "salmon-bs/ERR2675461/abundance.h5"
 [7] "salmon-bs/ERR2675464/abundance.h5" "salmon-bs/ERR2675465/abundance.h5"
 [9] "salmon-bs/ERR2675468/abundance.h5" "salmon-bs/ERR2675469/abundance.h5"
[11] "salmon-bs/ERR2675472/abundance.h5" "salmon-bs/ERR2675473/abundance.h5"
[13] "salmon-bs/ERR2675476/abundance.h5" "salmon-bs/ERR2675477/abundance.h5"
[15] "salmon-bs/ERR2675478/abundance.h5" "salmon-bs/ERR2675479/abundance.h5"
[17] "salmon-bs/ERR2675480/abundance.h5" "salmon-bs/ERR2675481/abundance.h5"
[19] "salmon-bs/ERR2675484/abundance.h5" "salmon-bs/ERR2675485/abundance.h5"

Last updated