Giter Site home page Giter Site logo

Comments (6)

stanstrup avatar stanstrup commented on June 26, 2024

I don't have an example in front of me to check how things are exactly so I could be wrong but from memory:

  • As far as I remember you get a warning when you convert to xcmsSet about sample classes. When you convert to the old style it doesn't know what the equivalent of sampleGroups is supposed to be. This used to be set at the "xcmsSet" stage. So you would at the very least have to set that to xdata2$sample_group to get the same results.
  • Other source of differences: #425

from xcms.

Pembs avatar Pembs commented on June 26, 2024

Thank you for your comment :

  • yes, there is a warning message of "Note: you might want to set/adjust the "sampclass" of the returned xcmSet object before proceeding with the analysis.

I realised that I hadn't specifed class in my phenodata dataframe. Whilst there are tutorials for the new XCMSnExp workflow, I'm yet to come across one for xcmsSet. I thought sample_group column would be enough for xcmsSet grouping, but perhaps not! After converting the xdata2 to an xcmSet object ( xdata_old), sampclass(xdata_old) also gets 370 levels, so one for each sample, when there should only be two ( one for sample and one for QC). I'll specify a class column in my PD/phenodata and will see how this affects the feature numbers through filling.

-thank you for the link , I followed the advice specified here and filtered out empty spectra.

from xcms.

Pembs avatar Pembs commented on June 26, 2024

What I still remain confused by is why after grouping , where the xcmsSet had no sample group/class information whilst XCMSnExp did, how they still had the same number of peaks per sample after this? Whereas after filling, there are marked differences.

And if in a workflow, all samples are in the same group, do I need to have a class column?

from xcms.

stanstrup avatar stanstrup commented on June 26, 2024

How are you counting peaks? Aren't you counting the peaks found for each sample? Not the number of features after grouping.

The difference after filling seems large but you are using two different methods for gap-filling. The old version is equivalent to using FillChromPeaksParam instead of ChromPeakAreaParam.
I don't know if that could explain the difference but it is a difference between the approaches at least.

from xcms.

Pembs avatar Pembs commented on June 26, 2024

I have counted the number of peaks through either as.data.frame(table(peaks(xdata_oldgrp)[, "sample"])) for xcmsSet or through as.data.frame(table(chromPeaks(xdata_group3)[, "sample"])).

I've found two things (and will probably close this and re-open another issue):
-if I specified my xdata_old$pheno$class as the original sample_group and then grouped and filled, I had similar numbers of peaks and the same number of features for each workflow. So I can close this issue because they are the same now if I am ensuring that the sample_groups ( for XCMSnExp) or class (xcmsSet) have been specified.

I suppose the previous confusion of the same number of peaks after grouping with and without class information no longer matters.

My issue now is why does grouping and subsequent filling when specifying sample group information (samples and QCs) result in considerably less peaks than without specifying group/class information. This must not just be due to the retention of features which are present in at least 50% of only one group (when minFraction is 0.5), because without class information, there are 5129 features present in at least 50% of any one group, but with class information there are 999.

from xcms.

Pembs avatar Pembs commented on June 26, 2024

Other issue #678

from xcms.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.