Murali-group / Beeline

BEELINE: evaluation of algorithms for gene regulatory network inference
GNU General Public License v3.0
171 stars 51 forks source link

scTenifoldNet + SCORPION Docker + Runners Added #89

Open dosorio opened 1 year ago

dosorio commented 1 year ago

Hi,

Thank you for the invitation to collaborate with the Docker and Runners for our methods. I have included them in this PR.

Please let us know if anything else is needed,

Best wishes,

Daniel

yiqisu commented 1 year ago

@dosorio Thanks for pulling the request for SCORPION and scTenifoldNet, Dr. Osorio! We are under testing the two algorithms and will merge your PR once the testing is done.

SCORPION works well for synthetic datasets with a number of cells 100, 200, and 500. However, regarding larger numbers of cells, i.e., 2,000 and 5,000, for both synthetic and curated datasets, we got the following error message:

Warning in irlba::irlba(X.for.pca, n.pc) :
  You're computing too large a percentage of total singular values, use a standard svd instead.
Error in if (work <= 1) stop("work must be greater than 1") :
  the condition has length > 1
Calls: <Anonymous> -> <Anonymous>
Execution halted

Since you used the GSD dataset with 2,000 cells in the SCORPION paper, we were wondering if you came across this problem before? If so, could you please provide any instructions on this?

For scTenifoldNet, it sets the default number of components to 9. However, as some synthetic networks in BEELINE have fewer than 9 genes, such as dyn-LI and dyn-BF, there is a problem:

Error in pcNet(X = inputExpr, nComp = 9) :
  nCom should be greater or equal than 2 and lower than the total number of genes
Calls: as.matrix -> pcNet
Execution halted

We'd like to ask your opinion if it is appropriate to change the default value by introducing a parameter to determine the default value for each input network? Thanks a lot!

Best regards, Yiqi