Tuesday, February 9, 2021

"sleuth" hdf5. file accessibilty. unable to open file (Mac)

I was informed that an error occurs when loading kallisto files into sleuth using sleuth_prep().
"sleuth" hdf5. file accessibilty. unable to open file
When I tried to run the program, I got the same error. I couldn't find any useful solutions on google, so I tried to figure it out by myself.

In my case, this error seems to be caused by kallisto, not sleuth. Because kallisto's quant() command gave a warning message and the .hd5 file was not created.
Warning: kallisto was not compiled with HDF5 support so no bootstrapping will be performed. Run quant with --plaintext option or recompile with HDF5 support to obtain bootstrap estimates.

I think the problem was caused by a system update, but I couldn't figure out why. Probably, it can be handled if we can prepare a clean environment.

1. Create an independent clean conda environment. Here, I named it kallisto. And activate the environment. You can delete the environment when you no longer need it.
conda create -n kallisto -y
conda activate kallisto

2. Install kallisto and sleuth in the new environment.
conda install kallisto
conda install -c bioconda r-sleuth

3. Run kallisto as you always do. Then, you will probably get .hd5 and .tsv files.
Make sure that you use kallisto which was installed by above command.
kallisto quant --index=${rootdir}/ref/kallisto.idx --output-dir=SRR1551005 --bootstrap-samples=2 --threads=2 ${rootdir}/seq/SRR1551005_1.fastq ${rootdir}/seq/SRR1551005_2.fastq

4. Run sleuth as you always do.
R
library(sleuth)
so=sleuth_prep(...) # kallisto data was successfully loaded in my case 
...
q()

5. Deactivate the environment. Files will be retained.
conda deactivate

No comments:

Post a Comment

Generate Manhattan plots with ggplot2

Since the Manhattan plot draws millions (sometimes tens of millions) of points, it is not wise to output the plots in vector format. To gene...