Git Product home page Git Product logo

deduper's People

Contributors

leslie-c avatar severianovillarruel avatar

Watchers

 avatar

deduper's Issues

Peer Review

Hi Seve,
Awesome work!
Here are my comments for pseudocode
Does the proposed algorithm make sense to you? Can you follow the logic?
Yes, It is very clearly written and logic is easy to follow.

  1. Does the algorithm do everything it's supposed to do? (see part 1)?
    Yes for the most part. In the pseudo-code for point # 7a , it is mentioned that "if the read is mapped to the forward strand" then it will check if the "tuple" is present in the forward dictionary, which makes sense.
    But, In point #8a, you are checking the same thing in the forward dictionary again, even if it is reverse mapped.I know you meant to check in the reverse dictionary and it is I think just a copy-paste error,but I would advise caution when writing actual code.
    Also, make sure you close your files!

3.Are proposed functions reasonable? Are they "standalone" pieces of code?
Yes, functions to parse cigar strings and flags are clearly written and standalone pieces of code.

Again, awesome work!
-Pranav

Peer review by David

Hi Sevi.

I noted a way in which your pseudocode is an improvement over mine. I see that you include a step to not write-out a read if the bitwise flag indicates that it is not mapped. I'm going to add that to mine. :) Your pseudocode has high-level functions and appears quite logical. I think you might be able to get away with not having a reference dictionary outside of your loop. I'd be happy to show you how I plan on avoiding that, if you like. I am curious as to how you plan on doing the "flush/reset" of your global dictionary. Is that by nesting it inside a loop in such a way that additions get left behind, when you leave that loop? Also, I noted your example output and input sam files, but I did not see unit tests in your pseudocode. It's been really important to me to have unit tests for each function and for steps along the way, as I write my script. But, that may be because my scripting skills are still rudimentary.

Best, David

Anastasiya Review Deduper

Seve,

This is a fantastic game plan! If anything, I was taking notes on what I can include in my own pseudocode! Your algorithm tracks the same as what I had in mind for this assignment, so it makes sense to me! However, I don't think you need two separate dictionaries to contain forward and reverse (I am am assuming it takes more computational capacity to do so). You could just save the tuple key to contain UMI + strand + chr + position and it would be specific enough to not warrant a new dictionary. Overall though, your included all the key points your algorithm was meant to accomplish! Nice Job! Your functions for parsing the flag and cigar string are great as well! I know I said I had a hard time understanding it, but I figured it out and it makes sense, I was just confused because you referred to "I" as "indexing" when I am pretty sure it indicates an "insert". Your pseudocode looks lovely! Keep up the good work! You are doing great!

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.