vahuynh / dyngenie3 Goto Github PK
View Code? Open in Web Editor NEWSemi-parametric approach for the inference of gene regulatory networks from time series of expression data
Semi-parametric approach for the inference of gene regulatory networks from time series of expression data
Hello,
I was hoping that you would have time to give some advice on how to input different conditions and replicates to dynGENIE3. I'm successfully running the R implementation on my time series RNAseq data. However, I'm not quite sure the recommended way to input the different replicates and conditions.
My data is:
6 time points
8 conditions plus control
2-3 replicates per condition.
The way I am doing it now, I am inputting each condition and replicate as a separate time series and treating control as a separate condition and running them all at once. Do you recommend this, or to separate conditions into different runs and perhaps treat the control as steady state data?
Thank you for the helpful tool!
Best,
Rebecca
Hi,
I am using dynGENIE3 on a 6-sample dataset, with 5 time points each. While setting alpha = fixed_value
works perfectly, using alpha = "from.data"
gives
Error in { :
task 2 failed - "NA/NaN/Inf in foreign function call (arg 4)"
Any idea where this error comes from, and how to solve it?
Thanks
I have a 53306 x 14 matrix (genes x timepoints) that I am analyzing with dynGENIE3 (3638 of those genes are considered regulators). The dynGENIE3 function finishes to completion, but there is an error in getting the link.list.
> link.list <- get.link.list(res$weight.matrix, threshold=0.005)
Error in if (n > 0) c(NA_integer_, -n) else integer() :
missing value where TRUE/FALSE needed
In addition: Warning messages:
1: In rep.fac * nx : NAs produced by integer overflow
2: In .set_row_names(as.integer(prod(d))) :
NAs introduced by coercion to integer range
This error persists even if make the threshold more stringent and if I modify the report.max
. Can you please advise?
Thanks,
Corrinne
This is what I have loaded
> sessionInfo()
R version 4.2.2 (2022-10-31)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux 9.0 (Plow)
Matrix products: default
BLAS/LAPACK: /opt/rit/el9/20230413/app/linux-rhel9-x86_64_v3/gcc-11.2.1/openblas-0.3.21-zniqbxhjyx3vl653otz7fkmwqvp7pzds/lib/libopenblasp-r0.3.21.so
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] parallel stats graphics grDevices utils datasets methods
[8] base
other attached packages:
[1] lubridate_1.9.2 forcats_1.0.0 stringr_1.5.0 dplyr_1.1.1
[5] purrr_1.0.1 readr_2.1.4 tidyr_1.3.0 tibble_3.2.1
[9] ggplot2_3.4.1 tidyverse_2.0.0 doRNG_1.8.6 rngtools_1.5.2
[13] doParallel_1.0.17 iterators_1.0.14 foreach_1.5.2 reshape2_1.4.4
loaded via a namespace (and not attached):
[1] Rcpp_1.0.10 compiler_4.2.2 pillar_1.9.0 plyr_1.8.8
[5] tools_4.2.2 digest_0.6.31 timechange_0.2.0 lifecycle_1.0.3
[9] gtable_0.3.3 pkgconfig_2.0.3 rlang_1.1.0 cli_3.6.1
[13] withr_2.5.0 hms_1.1.3 generics_0.1.3 vctrs_0.6.2
[17] grid_4.2.2 tidyselect_1.2.0 glue_1.6.2 R6_2.5.1
[21] fansi_1.0.4 tzdb_0.3.0 magrittr_2.0.3 scales_1.2.1
[25] codetools_0.2-19 colorspace_2.1-0 utf8_1.2.3 stringi_1.7.12
[29] munsell_0.5.0
Is there a minimum number of time points required to run this? I have 3 time points with 3, 3, and 2 replicates. I get this error
res <- dynGENIE3(TS.data, time.points)
Error in (num.samples.count + 1):(num.samples.count + num.samples.current) :
argument of length 0
Hi there,
I am working on time series data (Illumina raw reads quantified using Salmon) and ran into the following error:
Error in dynGENIE3(TS.data2, time.points2) :
NA/NaN/Inf in foreign function call (arg 4)
I initially suspected this was related to a large number of zeros in my dataset, but this problem persists even when I remove all rows containing zeros from the analysis. If you have some input into this problem, I would greatly appreciate it!
Hi,
I was wondering if there was a way to visualize an AUROC plot (TPs vs. FPs) for a given gene regulatory network (GRN) constructed by the dynGENIE3 framework. If there isn't an easily available function, are there other ways to perform such a procedure? Any clarification would be greatly appreciated!
Best,
Rohak
hi,
I'm running dynGENIE3 on a cluster with 48 cores, and the code finish successfully, but return the following warning. When I check the result, I find something was missing.
r$> length(res$alphas)
[1] 56500
r$> dim(res$weight.matrix)
[1] 2866 12948
Warning messages:
scheduled cores 1, 2, 4, 5, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 20, 22, 23, 24, 25, 26, 28, 29, 31, 32, 33, 34, 36, 38, 40, 41, 42, 43, 44, 45, 46, 47, 48 did not deliver results, all values of the jobs will be affected
Hi,
I encountered an error while attempting to utilize all quantified genes in order to construct a comprehensive regulatory network, from which I aim to extract subnetworks containing the genes of interest. The transcriptome data was quantified using triploid typing genomes, encompassing 6 time points with 3 replicates each (totaling 18 samples). For file designation, replicates 1 of each time point were labeled as "time_series_1," replicates 2 as "time_series_2," and replicates 3 as "time_series_3." To address the issue of numerous genes exhibiting expression values of zero or partial samples with zero expression values, only those genes displaying expression levels exceeding 0.1 TPM across all samples were utilized for program execution.
Error in if (n > 0) c(NA_integer_, -n) else integer() :
missing value where TRUE/FALSE needed
Calls: get.link.list ... melt -> melt.matrix -> expand.grid -> .set_row_names
In addition: Warning messages:
1: In rep.fac * nx : NAs produced by integer overflow
2: In .set_row_names(as.integer(prod(d))) :
NAs introduced by coercion to integer range
Execution halted
I sincerely look forward to your assistance ๏ผ
What is the reasoning behind randomly permuting the edges with score 0 in get_link_list
?
dynGENIE3/dynGENIE3_python/dynGENIE3.py
Line 111 in ce8a35a
Does it make sense to simply throw these edges away?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.