Giter Club home page Giter Club logo

dsc-log-fold-change's People

Contributors

gaow avatar jdblischak avatar jhsiao999 avatar pcarbo avatar stephens999 avatar zouyuxin avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dsc-log-fold-change's Issues

Simplify logic of the pipelines

Subject: pipe_null and pipe_power
Goal: simply the logic so that these two pipelines call the same score modules

Curent version

  define:
    data: data_poisthin_null, data_poisthin_power
    method: t_test, wilcoxon
    score: type_one_error, pval_adj, fdr, auc
  run:
    pipe_null: data_poisthin_null * method * type_one_error
    pipe_power: data_poisthin_power * method * pval_adj * (fdr * auc)

This is the first idea I tried but I got errors...

  define:
    data: data_poisthin_null, data_poisthin_power
    method: t_test, wilcoxon
    score: type_one_error, pval_adj * (fdr, auc)
  run:
    pipe_null: data_poisthin_null * method * score
    pipe_power: data_poisthin_power * method * score

qvalue function error

I got this error: Error in smooth.spline(lambda, pi0, df = smooth.df)

This issue has been discussed on the qvalue package GitHub site in multiple threads: StoreyLab/qvalue#9
StoreyLab/qvalue#13

qvalue returns this error when the p-value distribution is truncated, i.e., not spanning the entire range of [0,1]. The authors of the qvalue package offers an alternative function qvalue_truncp to estimate qvalue in this situation.

I opened this issue to remind myself to write an errorHandling function for truncated p-value distribution.

Methods to be added

  • DESeq2
  • limmaVoom
  • edgeR
  • glm-pois
  • glm-quasipois
  • limma-voom
  • MAST
  • t-test
  • wilcoxon
  • zinb-wave plus edgeR
  • zinb-wave plus DESeq2

Simulate module: allow sample sizes to vary

Problem: currently the module input is the total number of samples, then poisthin function splits this into two groups of equal sample size.
Ideas: add to poisthin function a new parameter of the ratio of sample size

syntax for logical pipeline variable

@gaow

In dsc-log-fold-change/dsc/benchmark.dsc, I'd to have in data_poisthin a logical argument shuffle_sample. This dsc module calls pois_thin function in the module folder. The syntax now only gives me one file. I expect two files: one when shuffle_sample=TRUE and one when shuffle_sample=FALSE. How do I do this? Thanks!

data_poisthin: R(counts = readRDS(dataFile)) + \
       dataSimulate.R + \
       R(set.seed(seed=seed); out = poisthin(mat=t(counts), nsamp=nsamp, ngene=ngene, gselect=gselect, shuffle_sample=shuffle_sample, signal_dist=signal_dist, prop_null = prop_null)) + \
       R(groupInd = out$X[,2]; Y1 = t(out$Y[groupInd==1,]); Y2 = t(out$Y[groupInd==0,]))
  dataFile: "data/pbmc_counts.rds"
  seed: R{2:101}
  nsamp: 90
  ngene: 1000
  prop_null: .5, .9, 1
  shuffle_sample: T, F
  gselect: "random"
  signal_dist: "bignormal"
  $Y1: Y1
  $Y2: Y2
  $beta: out$beta

Declare module specific R libraries

@jhsiao999 I've got 2 comments for DESeq2 module:

  1. You might want to add a @CONF: R_libs=DESeq2 or @CONF: R_libs = DESeq2, voom, ... if there are more libraries used. That way the library not only gets automatically installed when others run it, but also gets loaded. Otherwise even your code as is would not work due to missing load lib statements.

  2. Maybe consider putting the code under code folder instead? See my get_data.R example

Now you can make the changes and add your module to benchmark.dsc and give it a go using --target get_data * run_DESeq2 :)

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.