lgatto / synapter

Label-free data analysis pipeline for optimal identification and quantitation
https://lgatto.github.io/synapter/
4 stars 2 forks source link

Which default value for `IisL`? #133

Closed sgibb closed 7 years ago

sgibb commented 7 years ago

IisL controls whether Isoleucine and Leucine are treated as equal or independent. Currently we have different defaults:

Should we change IisL in synergise2 into FALSE as well?

(for synergise1 FALSE is useful to keep backward compatibility)

lgatto commented 7 years ago

Consistency is key, so I would vote for yes.

pavel-shliaha commented 7 years ago

I understand that IisL = FALSE results in peptides with L or I being removed? If so I would vote no. Strongly. Perhaps go the other way round and change IisL to TRUE in synergise1?

I myself got into trouble when was testing synergise2 and it took some time for me to understand what is going on. Also I imagine the majority (if not all) users would want IisL = TRUE.

lgatto commented 7 years ago

Fine by me, as long as we are consistent. It will be important to document this change in the respective man pages.

sgibb commented 7 years ago

I understand that IisL = FALSE results in peptides with L or I being removed? If so I would vote no.

If we have a peptide xxxIR and xxxLR the createUniquePeptideDb will do the following:

That's part of the documentation. It is a new synapter 2.0 feature. That's why the default IisL = FALSE was chosen. But @pavel-shliaha told me or I read it in some of his scripts that synergise2 should use IisL = TRUE.

In the usual workflow you create an RDS file with createUniquePeptideDbRds (to avoid multiple calls of createUniquePeptideDb). But if you just use the current defaults synergise2 will complain with the following warning message:

The RDS file was created with IisL=FALSE. Your current setting has not any effect! Recreate your RDS file if you want to change these settings.

That means if you use createUniquePeptideDbRds and subsequently synergise2 it will use IisL=FALSE as default (and throw a warning that synergise2's IisL=TRUE was ignored). But if you call synergise2 on its own (if you analyse just one ident + quant run) IisL would be TRUE.

So I would vote for synergise2(..., IisL=FALSE). (BTW: the current analysis of the kuharev data runs with IisL=TRUE; I need to restart it if we want to use IisL=FALSE).

pavel-shliaha commented 7 years ago

1) Sorry Sebastian, I did not get it at first. I vote for the option that preserves xxxIR and xxxLR when applying the createUniquePeptideDb(). From your explanation I understand that this option is IisL=FALSE. If this is correct then lets have it at FALSE.

2) please apply the same logic to master construction