Comments (4)
Hi @SergeiF1987,
Thank for your issue.
First, yacrd perform two similar but different task, detection (and management of chimera) and scrubbing. If I understand you correctly you want detect chimera, but the parameter you use is designed for scrubbing not for chimera detection.
Second:
If I understand you correctly, you think the -n
parameter control the length of not covered region yacrd
needs to mark a read as Chimeric, it's not the case.
yacrd
mark a read asChimeric
if a region in middle of read has coverage equal or bellow than the value in-c
parameter.yacrd
didn't check the length of this region if it's only one base,yacrd
mark the reads as chimeric, it's not very clever. I can probably had a parameter to control the minimal length of coverage drop.yacrd
mark a read asNotCovered
, if large part of read isn't covered, this proportion is control by parameter-n
. If a read isn't covered we can't say if this read is chimeric or not and we probably can't trust him.
So if you only want detect chimera I recommend you to use this parameter:
minimap2 -x ava-ont reads.fasta reads.fasta > overlap.paf
yacrd -i overlap.paf -o report.yacrd -c 0 -n 0.8
If a read have a drop of coverage to 0 it's probably a chimera, if read isn't covered more than 80 percent of length this read can't be trust.
To improve the readme can you please indicate to me what made you think that the -n
parameter controlled the size of not covered region?
Thanks in advance
from yacrd.
Hi @natir,
Thanks for such a quick reply! Actually, -n parameter looks clear, a ratio of zero-covered to a total read length. But -c... Sorry for that, but I still don't get how a region with 0 coverage could be chimeric? Does it mean that a read has no coverage at all? In this case, a sequence is presented only once and could stem from a weird source (sequencing errors, etc.) and considered as chimeric.
from yacrd.
In yacrd
we assume, if part of read have no coverage this part didn't exist in other reads and probably denote this read is chimeric (or this region have very high error rate).
We use minimap2
to search overlap between reads and use this overlap to evaluate coverage.
minimap2
didn't perform exact alignment between reads, it perform overlap search, two reads share an overlap if they seem the same not exactly the same, so small sequencing errors are ignored.
from yacrd.
I get it! Thanks a lot! Perhaps you could add a more detailed explanation of this in the manual for slow minds like mine.
Thanks again and good luck!
from yacrd.
Related Issues (20)
- Kernel panic at 'called `Option::unwrap()` HOT 2
- Reduce memory usage HOT 1
- escape characters `/` and `\` in ondisk filename HOT 1
- thread 'main' panicked at 'slice index starts at 8092 but ends at 7507' HOT 12
- Error: --input provided more than once.... HOT 2
- Filter from .yacrd report HOT 8
- Faster yacrd HOT 5
- Mismatched types HOT 2
- interpreting results HOT 5
- What pipeline should I use? HOT 7
- raw fastq file sequences ID did not fully appear in the *report.yacrd HOT 5
- how about using -X when running minimap2? HOT 1
- Compilation error due to incompatible clap version? HOT 3
- Why the overlap? HOT 2
- Error while running yacrd HOT 6
- Detection of chimeras in nanopore reads HOT 6
- Order of Chimera detection and scrubbing HOT 2
- yacrd for detecting chimeras in amplicon sequences HOT 3
- many metagenomic samples has redundant reads but not errors HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from yacrd.