bigbio / sdrf-pipelines

A repository to convert SDRF proteomics files into pipelines config files
Apache License 2.0
16 stars 21 forks source link

Added a few more parameters for generating the maxquant parameter file #138

Closed veitveit closed 1 year ago

veitveit commented 2 years ago
fabianegli commented 2 years ago

@veitveit You could install the pre-commit hooks to remove some burden from you when it comes to code formatting...

fabianegli commented 1 year ago

@veitveit I have experienced issues when trying to use mqpar.xml files generated wiht one version of MQ with another version of MQ. Is the parameter file this creates MQ version agnostic or tailored to a specific version?

veitveit commented 1 year ago

@fabianegli I am using maxquant 2.0.3 and it works with several sdrf files.

fabianegli commented 1 year ago

The MaxQuant parameter file incompatibilities were observed in the 1.x.x versions, but I would expect the issue to reappear with future versions of MaxQuant and I think we should try and find a way to tell the users for which MaxQuant version these parameter files are created.

fabianegli commented 1 year ago
% parse_sdrf convert-maxquant -h                                     
Usage: parse_sdrf convert-maxquant [OPTIONS]

Options:
  -s, --sdrf TEXT              SDRF file  [required]
  -f, --fastafilepath TEXT     protein database file path  [required]
  -mcf, --mqconfdir TEXT       MaxQuant default configure path
  -m, --matchbetweenruns TEXT  via matching between runs to boosts number of
                               identifications
  -pef, --peptidefdr FLOAT     posterior error probability calculation based
                               on target-decoy search
  -prf, --proteinfdr FLOAT     protein score = product of peptide PEPs (one
                               for each sequence)
  -t, --tempfolder TEXT        temporary folder: place on SSD (if possible)
                               for faster search
  -r, --raw_folder TEXT        spectrum raw data folder  [required]
  -n, --numthreads INTEGER     each thread needs at least 2 GB of RAM,number
                               of threads should be ≤ number of logical cores
                               available (otherwise, MaxQuant can crash)
  -o1, --output1 TEXT          parameters .xml file  output file path
  -o2, --output2 TEXT          maxquant experimental design .txt file
  -h, --help                   Show this message and exit.
% parse_sdrf convert-maxquant --sdrf sdrf_pipelines/testdata/sdrf.tsv -f fasta/file/path -r raw/file/folder
PROCESSING: sdrf_pipelines/testdata/sdrf.tsv"
Traceback (most recent call last):
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/bin/parse_sdrf", line 8, in <module>
    sys.exit(main())
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/sdrf_pipelines/parse_sdrf.py", line 226, in main
    cli()
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/lib/python3.8/site-packages/click/core.py", line 1130, in __call__
    return self.main(*args, **kwargs)
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/lib/python3.8/site-packages/click/core.py", line 1055, in main
    rv = self.invoke(ctx)
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/lib/python3.8/site-packages/click/core.py", line 1657, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/lib/python3.8/site-packages/click/core.py", line 1404, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/lib/python3.8/site-packages/click/core.py", line 760, in invoke
    return __callback(*args, **kwargs)
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/venv/lib/python3.8/site-packages/click/decorators.py", line 26, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/sdrf_pipelines/parse_sdrf.py", line 101, in maxquant_from_sdrf
    Maxquant().maxquant_convert(
  File "/Users/eglif/github/fabianegli/sdrf-pipelines/sdrf_pipelines/maxquant/maxquant.py", line 1230, in maxquant_convert
    first = list(file2params["enable_match_between_runs"].values())[0]
IndexError: list index out of range

--matchbetweenruns seems to be required?

fabianegli commented 1 year ago

But the help message doesn't say what it expects.

% parse_sdrf convert-maxquant --sdrf sdrf_pipelines/testdata/sdrf.tsv -f fasta/file/path -r raw/file/folder --matchbetweenruns
Error: Option '--matchbetweenruns' requires an argument.

Number? Boolean? Some magic words?

veitveit commented 1 year ago

Sorry, I thought I answered to these. We can state that the script works for the 2.0.3 version of MaxQuant.

I assume that matchbetweenruns should be true or false. Be aware that I am not the original author of this script.

veitveit commented 1 year ago

I never used this option. Maybe true and false?

On Thu, Sep 29, 2022, 13:58 Fabian Egli @.***> wrote:

But the help message doesn't say what it expects.

% parse_sdrf convert-maxquant --sdrf sdrf_pipelines/testdata/sdrf.tsv -f fasta/file/path -r raw/file/folder --matchbetweenruns Error: Option '--matchbetweenruns' requires an argument.

Number? Boolean? Some magic words?

— Reply to this email directly, view it on GitHub https://github.com/bigbio/sdrf-pipelines/pull/138#issuecomment-1262174544, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADYRTBONDDARAYMXRSVR3YLWAV75RANCNFSM57TFSO5A . You are receiving this because you were mentioned.Message ID: @.***>