-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
demux: should golay-error-correction be False by default? #102
Comments
Should it have a default? Maybe this is a required argument, not sure if that's actually better or not as False still demultiplexes fine. |
Setting the default to Do we have a sense of how many If it's a significant number, making this a required argument might be a good idea. It would be a minor inconvenience to all users, but would require them to better understand their lab protocols - not entirely a bad thing. |
And
I think it's a great idea to hold a forum poll! There are some other examples out there for how to set up these polls... one of them actually concerns demux needs, so may already answer this question. But I would bet many users have non-Golay barcodes. The "EMP" format was adopted and adapted by many other projects, so there are a few "traditions" floating out there that look like EMP but have different barcode schemes.
I think that is overly optimistic. The most common questions on the forum are still asked frequently, perhaps because new users are not aware of the search functionality. In the case of this problem it is unlikely to go away because demux can fail for many reasons and whether golay barcodes are the problem is difficult to ascertain (perhaps we should implement a golay barcode validation method that users can run on their barcodes to check)
We can take this as a "straw poll": to my reckoning, few users asked about the lack of golay error correction before it was implemented. But now many users are complaining about the mysterious errors they are receiving (evidently because their barcodes are non-golay). |
👍 Thanks all. I like the idea of dropping the default, that seems like a simple way forward, but will break existing workflows for users. Something to think about. Another option: Thoughts? I have had a few side-line discussions with @wasade, @ebolyen, & @nbokulich, and will attempt to pull in some discussion points:
I am sure I missed or misunderstood some of these side discussions summarized above, please correct me! Thanks! PS - a brief summary of options that I see:
|
Thanks, @thermokarst! A slight addendum, the mining of Qiita would be for looking at the first few observed nt off the 5' end of the read for EMP (frequently TAC). And, could be really nice for differentiating dual/single indexing or just overload method names. E.g.,
|
Just a thought, to tie together two ideas of @thermokarst :
Maybe make a generalized psuedo-emp method that can be expanded to accommodate all of these options, including EMP barcodes. The This will serve a few purposes:
Proposed new names (I am just scratching my head here): |
I am very much in support of having separate EMP only actions, with stricter validation, and then some number of catch-alls for other index-based demultiplexing. With respect to tutorials, I really like this idea:
We could say: We can probably use TypeMap to make less actions (e.g. the single vs paired split becomes less interesting). However, we're lacking a way to creating a Union view-type for the python type annotation, so we'd have to use this hack in the meanwhile. Maybe a dumb question, but do dual-index schemes have 4 files in total? If so, we'd need a new format for that, which means we could similarly disambiguate the view-types and overload the action name like for single/paired. As for For names, I like something along the lines of |
Just something I noticed that may belong here for a mini-discussion regarding default values. https://forum.qiime2.org/t/questions-about-import-paired-end-sequencing-data/12531/3
So if I'm reading this correctly, in order for Golay error-correction to be valid the users need to be including both rev-comp option if they have true EMP daata?
But this isn't set by default, and shouldn't this plugin technically be ready to go for EMP data with defaults? If ^ is true then I would propose that these be set TRUE by default. If not true and I'm misreading then just ignore this! |
Great question - I would need to go look up the EMP to be more informed. Pinging @gregcaporaso - do you recall why the param defaults are what they are in this plugin? |
Proposed Behavior
I think yes, default should be False, but I see both sides of the argument:
emp-*
methods are designed for EMP, after all. EMP uses golay barcodes (correct?) and hence anyone truly following that protocol would have golay (by default).The text was updated successfully, but these errors were encountered: