GithubHelp home page GithubHelp logo

question about cell order about higashi HOT 5 CLOSED

ma-compbio avatar ma-compbio commented on August 16, 2024
question about cell order

from higashi.

Comments (5)

ruochiz avatar ruochiz commented on August 16, 2024

kept and read_count_all should have the same order as the input data.

from higashi.

Xieeeee avatar Xieeeee commented on August 16, 2024

OK, thanks!

from higashi.

Xieeeee avatar Xieeeee commented on August 16, 2024

Hi Ruochi,
Sorry for disturbing again. when we say "order of input data", does it mean the order of barcodes (from 0 to n, I record it in an array cellid), or the order of barcodes first appear in input data (could be 0, 32, 5, 11...)?

I tried to filter out those cells that didn't pass QC: cellid[kept.astype(bool)] and then regenerate the input file to make sure it only contains the barcodes past qc. But when loading the new input file, not all the cells are defined as pass qc, and the ratio of "good cells" mimics the unfiltered data.

from higashi.

ruochiz avatar ruochiz commented on August 16, 2024

Hey, What you did using cellid[kept.astype(bool)] is correct. The behavior is also expected, because in the current code, the good_qc of cells are defined based on quantile, so things like this can happen.

The logic goes like this:

  1. calculate n_counts per chrom. If there are more than 50% of the cells that have n_counts > number of bins in this chromosome, we use n_counts > n_bin as the metric. If not, we use n_counts > np.quantile(n_counts, 0.5) as the metric. This metric is per chromosome.
  2. Good qc cells are cells that pass metric for all chromosomes.

So, if there are fewer than 50% of the cells that have n_counts > n_bins on one or some of the chromosomes, the metric is defined based on quantile, which means cells can be further filtered.

from higashi.

Xieeeee avatar Xieeeee commented on August 16, 2024

Thanks for the clarification!

from higashi.

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.