lisiarend / PRONE.Shiny

Code of the R Shiny App of the PRONE R Package.
https://exbio.wzw.tum.de/prone/
GNU General Public License v3.0
1 stars 0 forks source link

Normalization Failed #6

Closed abadgerw closed 3 months ago

abadgerw commented 3 months ago

I tried running all normalization methods on my data and got a failure message that stated: return code from pthread_create() is 22. Any insight into why this is happening?

lisiarend commented 3 months ago

Hey @abadgerw,

The issue you’re experiencing is likely due to the Quantile normalization method. There’s a related issue here: https://github.com/Bioconductor/bioconductor_docker/issues/22. It seems to be a problem with package versioning. I’ll look into this and notify you once the Shiny App is updated.

Best, Lis

abadgerw commented 3 months ago

Thank you! I started checking normalization methods one by one and noticed that both Normics methods were throwing an error indicating that the top protein value was null even though it was being set in the GUI.

lisiarend commented 3 months ago

I will check this as well. Thank you very much for testing it. If you find any other bugs, please add them here, and I will try to fix them. The first real user always discovers bugs that are invisible to the developer;)

Additionally, we have not yet tested the Shiny app with such a large dataset, so it is very interesting to see if it will handle it without breaking. It's likely that some visualizations may not be as suitable and comprehensive with such a high amount of samples.

Can I just ask you a question. How did you come across PRONE? We are currently preparing a manuscript and I was curious about how you found it?

Best, Lis

abadgerw commented 3 months ago

Thank you! I stumbled upon your vignettes while google searching normalization methods for proteomics.

abadgerw commented 3 months ago

Last thing: I do find that cyclic loess PMAD, etc looks very different in your software compared to NormalyzerDE. In NormalyzerDE, cyclic loess demonstrates the best performance on my data but poor performance with PRONE. Any idea why there is a discrepancy?

lisiarend commented 3 months ago

Can you provide an example picture showcasing PMAD of PRONE and NormalyzerDE

abadgerw commented 3 months ago

image

image

image

image

lisiarend commented 3 months ago

I will have a look at this too. I will write you next week once I had time to check on all your comments.

lisiarend commented 3 months ago

Last thing: I do find that cyclic loess PMAD, etc looks very different in your software compared to NormalyzerDE. In NormalyzerDE, cyclic loess demonstrates the best performance on my data but poor performance with PRONE. Any idea why there is a discrepancy?

I checked this.

In performCyclicLoessNormalization() of NormalyzerDE, they call limma::normalizeCyclicLoess(log2Matrix, method = "fast").

However, this is not the cyclic version of the local regression normalization but the fast local regression method.

In PRONE:

Hence, to compare NormalyzerDE and PRONE, you should compare CyclicLoess of NormalyzerDE to LoessF of PRONE. I checked both functions with an example data set and they are giving the same results for my case.

abadgerw commented 3 months ago

Fantastic! To summarize and keep organized, the only outstanding things I noticed were:

  1. The quantile normalization issue with pthread_create()

  2. Normics normalization error (see image below)

image

  1. Graphing errors (see images below)

image

image

lisiarend commented 3 months ago

Hey @abadgerw,

a new version of PRONE is now available. All problems should be resolved now.

If some persist of new problems arise for your data set, feel free to open a new issue.

Best, Lis