AlexandrovLab / SigProfilerExtractor

SigProfilerExtractor allows de novo extraction of mutational signatures from data generated in a matrix format. The tool identifies the number of operative mutational signatures, their activities in each sample, and the probability for each signature to cause a specific mutation type in a cancer sample. The tool makes use of SigProfilerMatrixGenerator and SigProfilerPlotting.
BSD 2-Clause "Simplified" License
153 stars 51 forks source link

error in plotDBS #181

Closed JLiandbear closed 1 year ago

JLiandbear commented 1 year ago

Hi SigProfiler team I had the following error while running:

sig.sigProfilerExtractor("vcf", "Extractor_test", data, reference_genome="GRCh38", opportunity_genome = "GRCh38", exome = True, minimum_signatures=1, maximum_signatures=2)

There may be an issue with the formatting of your matrix file. Traceback (most recent call last): File "/home/julie/envs/SigProfiler/lib/python3.7/site-packages/sigProfilerPlotting/sigProfilerPlotting.py", line 4743, in plotDBS fig_orig=pickle.load(open(spplt.path[0]+'/templates/DBS78.pkl','rb')) FileNotFoundError: [Errno 2] No such file or directory: '/home/julie/envs/SigProfiler/lib/python3.7/site-packages/sigProfilerPlotting/templates/DBS78.pkl'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "", line 1, in File "/home/julie/envs/SigProfiler/lib/python3.7/site-packages/SigProfilerExtractor/sigpro.py", line 789, in sigProfilerExtractor sub.export_information(loopResults, m, layer_directory, index, colnames, wall=wall, sequence=sequence) File "/home/julie/envs/SigProfiler/lib/python3.7/site-packages/SigProfilerExtractor/subroutines.py", line 1110, in export_information plot.plotDBS(signature_subdirectory+"/"+mutation_type+"_S"+str(i)+"_Signatures"+".txt", signature_subdirectory+"/Signature_plot" , "S"+str(i), "78", True, custom_text_upper=stability_list, custom_text_middle=total_mutation_list) File "/home/julie/envs/SigProfiler/lib/python3.7/site-packages/sigProfilerPlotting/sigProfilerPlotting.py", line 4883, in plotDBS os.remove(output_path + 'DBS_78plots' + project + '.pdf') FileNotFoundError: [Errno 2] No such file or directory: 'Extractor_test/DBS78/All_Solutions/DBS78_1_Signatures/Signatures/Signature_plotDBS_78_plots_S1.pdf'

I have read issue #170, removed previous SigProfilerPlotting and re-install SigProfilerPlotting-1.3.2. I am using: python 3.7.15 SigProfilerAssignment-0.0.19 SigProfilerExtractor-1.1.15 SigProfilerMatrixGenerator-1.2.13 sigProfilerPlotting-1.3.2 matplotlib 3.4.3

Thank you in advance for any advice. Regards

mdbarnesUCSD commented 1 year ago

Please update sigProfilerPlotting to v1.3.5 or newer. The issue should be resolved in that release. Please reach out if the issue persists.

JLiandbear commented 1 year ago

Please update sigProfilerPlotting to v1.3.5 or newer. The issue should be resolved in that release. Please reach out if the issue persists.

Thanks for the quick reply. I have upgrade my python and sigProfilerPlotting to the latest version and get the test run done without any error.

Here's my command:

data="/mnt/research-data/PRJ-CRC/JunLi/IMAP/WES/SigProfiler/vcf" sig.sigProfilerExtractor("vcf", "Extractor_test", data, reference_genome="GRCh38", opportunity_genome = "GRCh38", exome = True, minimum_signatures=1, maximum_signatures=2)

However, I notice in screen message, it used COSMIC_v3.3_DBS_GRCh37 and COSMIC_v3.3_SBS_GRCh37 to generate plots. " Decomposing De Novo Signatures ..... Generating plots for COSMIC_v3.3_DBS_GRCh37 now... Plots for COSMIC_v3.3_DBS_GRCh37 have been successfully installed. Decompositon Plot:DBS78A |▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉| 1/1 [100%]

Assigning decomposed signature |████████████████████████████████████████| 74/74 [100%] in 0.5s (163.88/s)

Your Job Is Successfully Completed! Thank You For Using SigProfilerAssignment."

My data was based on GRCh38 and I installed GRCh38 reference genome using command:

from SigProfilerMatrixGenerator import install as genInstall genInstall.install('GRCh38', bash=True)

I looked into COSMIC Mutational Signatures Data Files and there're GRCh38 SBS and DBS versions.

I am wondering whether I am using wrong settings? Please advise where I am possibly wrong. Here's the version info of installations: Successfully installed PyMuPDF-1.21.0 PyPDF2-2.11.2 SigProfilerAssignment-0.0.20 SigProfilerExtractor-1.1.16 SigProfilerMatrixGenerator-1.2.13 about-time-3.1.1 alive-progress-2.4.1 cycler-0.11.0 grapheme-0.6.0 joblib-1.2.0 kiwisolver-1.4.4 matplotlib-3.4.3 nimfa-1.4.0 numpy-1.23.5 nvidia-cublas-cu11-11.10.3.66 nvidia-cuda-nvrtc-cu11-11.7.99 nvidia-cuda-runtime-cu11-11.7.99 nvidia-cudnn-cu11-8.5.0.96 packaging-21.3 pandas-1.5.2 patsy-0.5.3 pdf2image-1.16.0 pillow-9.3.0 psutil-5.9.4 pyparsing-3.0.9 python-dateutil-2.8.2 pytz-2022.6 reportlab-3.6.12 scikit-learn-1.1.3 scipy-1.9.3 sigProfilerPlotting-1.3.6 statsmodels-0.13.5 threadpoolctl-3.1.0 torch-1.13.0 typing_extensions-4.4.0

Thank you in advance