diff --git a/docs/articles/iceqream.html b/docs/articles/iceqream.html index fb4d0f5..37d5df8 100644 --- a/docs/articles/iceqream.html +++ b/docs/articles/iceqream.html @@ -6,7 +6,7 @@ -iceqream • iceqream +IceQream • iceqream @@ -17,7 +17,7 @@ - + +
+

Downloading Example Data +

+

See below for minimal instructions on how to use IceQream on your own data.

+

For this tutorial, we'll use pre-prepared data from a mouse gastrulation trajectory. Let's download and load this data:

 download.file("https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation-example.tar.gz", "gastrulation-example.tar.gz")
 untar("gastrulation-example.tar.gz")
@@ -110,13 +113,12 @@

Download the example filespeak_intervals <- readr::read_tsv("gastrulation-example/peak_intervals.tsv", show_col_types = FALSE) atac_scores <- readr::read_rds("gastrulation-example/atac_scores.rds") additional_features <- readr::read_rds("gastrulation-example/additional_features.rds") - normalization_intervals <- readr::read_tsv("gastrulation-example/gastrulation_intervals.tsv", show_col_types = FALSE)

-

We loaded the following objects:

- +

Let's examine the structure of our input data:

+
+# Peak intervals
+print("Peak Intervals:")
+#> [1] "Peak Intervals:"
 head(peak_intervals)
 #> # A tibble: 6 × 6
@@ -129,12 +131,13 @@ 

Download the example files#> 5 chr1 3191760 3192060 1_Xkr4_3192 FALSE 23571 #> 6 chr1 3264000 3264300 1_Xkr4_3264 FALSE -48368

-nrow(peak_intervals)
-#> [1] 99291
- +print(paste("Number of peaks:", nrow(peak_intervals))) +#> [1] "Number of peaks: 99291" +
+
+# ATAC scores
+print("\nATAC Scores:")
+#> [1] "\nATAC Scores:"
 head(atac_scores)
 #>                    bin1        bin2       bin3       bin4
@@ -145,12 +148,16 @@ 

Download the example files#> 1_Xkr4_3192 0.234917748 0.159842916 0.24823286 0.40749248 #> 1_Xkr4_3264 0.057764122 0.079473969 0.05351386 0.05018866

-nrow(atac_scores)
-#> [1] 99291
- +print(paste("Number of peaks:", nrow(atac_scores))) +#> [1] "Number of peaks: 99291" +
+print(paste("Number of bins:", ncol(atac_scores)))
+#> [1] "Number of bins: 4"
+
+
+# Additional features
+print("\nAdditional Features:")
+#> [1] "\nAdditional Features:"
 head(additional_features)
 #>               cg_cont k4me3 k27me3 k27ac prox_bin1_punc_all spatial_ratio
@@ -182,39 +189,36 @@ 

Download the example files#> 1_Xkr4_3192 4.054054 6.2500 #> 1_Xkr4_3264 3.783784 3.4375

-nrow(additional_features)
-#> [1] 99291
-

In addition, we loaded a set of genomic intervals that will be used for motif energy normalization. These intervals are all the peaks including the ones that are close to TSSs.

+print(paste("Number of peaks:", nrow(additional_features))) +#> [1] "Number of peaks: 99291" +
+print(paste("Number of features:", ncol(additional_features)))
+#> [1] "Number of features: 22"
+

The peak_intervals dataframe contains the genomic positions of accessibility peaks. The atac_scores matrix contains ATAC-seq signal intensities for each peak across different stages of the trajectory. additional_features includes extra genomic features for each peak.

-
-

Compute motif energies -

-

The first step in the IceQream pipeline is to compute motif energies for each motif model and each peak. This process is computationally intensive as we are computing the energy for 21862 motifs collected from HOMER, JASPAR, Jolma et al., HOCOMOCO and SCENIC databases.

-
-length(unique(motif_db$motif))
-#> [1] 21862
-

Calculation is done by:

-
-# motif_energies <- compute_motif_energies(peak_intervals, motif_db, normalization_intervals = normalization_intervals)
-

If you want to start with a less computationally intensive example, you can use the the scenic clusters (1615) instead of the full motif database. This will still take ~10-15 minutes, and the performance will be significantly lower.

+
+

Computing Motif Energies +

+

The first step in the IceQream pipeline is to compute motif energies for each transcription factor model and each peak. This process is computationally intensive, as it calculates energies for over 20,000 motifs from various databases.

-# motif_energies <- compute_motif_energies(peak_intervals, motif_db_scenic_clusters, normalization_intervals = normalization_intervals)
-

In any case, we will load the precomputed motif energies for this example. Note that the full matrix requires ~23GB of RAM.

+motif_energies <- compute_motif_energies(peak_intervals, motif_db, normalization_intervals = normalization_intervals)
+

For this tutorial, we'll use pre-computed motif energies:

 download.file("https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation_energies.tar.gz", "gastrulation_energies.tar.gz")
 untar("gastrulation_energies.tar.gz")
-

Load the motif energies:

 motif_energies <- readr::read_rds("gastrulation_energies.rds")
 motif_energies <- motif_energies[peak_intervals$peak_name, ]
-dim(motif_energies)
-#> [1] 99291 21862
+print(paste("Motif energy matrix dimensions:", paste(dim(motif_energies), collapse = " x "))) +#> [1] "Motif energy matrix dimensions: 99291 x 21862"
+

For a less memory and computationally intensive analysis, you can use the SCENIC motif clusters instead of all motifs (See Performance Considerations section).

-
-

Run IceQream -

-

We will now run IceQream on the gastrulation trajectory:

+
+

Running IceQream +

+

Now we're ready to run the IceQream regression:

+

This takes ~25 minutes on a 40 core machine with 256GB of RAM.

-

The result is a TrajectoryModel object that contains the regression results and the model report:

+

Let's examine the output:

-traj_model
+print(traj_model)
 #> <TrajectoryModel> with 21 motifs and 22 additional features
 #> 
 #> Slots include:
@@ -432,141 +436,378 @@ 

Run IceQream#> #> R^2 train: 0.304 #> R^2 test: 0.305

+

The TrajectoryModel object contains components such as the regression model, motif models, and predicted accessibility scores.

-
-

Plot results -

-

We can plot the performance of the model:

+
+

Visualizing Results +

+

Let's start with a scatter plot of observed vs. predicted accessibility changes:

-

And the model report:

-
-plot_traj_model_report(traj_model)
-#>  Plotting 21 motifs
-#> Warning: The `<scale>` argument of `guides()` cannot be `FALSE`. Use "none" instead as
-#> of ggplot2 3.3.4.
-#>  The deprecated feature was likely used in the ggseqlogo package.
-#>   Please report the issue at <https://github.com/omarwagih/ggseqlogo/issues>.
-#> This warning is displayed once every 8 hours.
-#> Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
-#> generated.
-#>  Plotting motif "SCENIC.cisbp__M00835"
-#>  Plotting motif "JASPAR.SOX14"
-#>  Plotting motif "SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD"
-#>  Plotting motif "JASPAR.nub"
-#>  Plotting motif "SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr"
-#>  Plotting motif "SCENIC.predrem__nrMotif1342"
-#>  Plotting motif "SCENIC.swissregulon__mm__Gata1"
-#>  Plotting motif "SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C"
-#>  Plotting motif "SCENIC.swissregulon__hs__ID4"
-#>  Plotting motif "SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A"
-#>  Plotting motif "SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1"
-#>  Plotting motif "SCENIC.jaspar__MA0869.2"
-#>  Plotting motif "HOMER.PQM_1"
-#>  Plotting motif "SCENIC.cisbp__M02320"
-#>  Plotting motif "HOCOMOCO.SUH_MOUSE.H11MO.0.A"
-#>  Plotting motif "SCENIC.jaspar__MA1621.1"
-#>  Plotting motif "SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth"
-#>  Plotting motif "SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL"
-#>  Plotting motif "JOLMA.FIGLA_di_DBD"
-#>  Plotting motif "SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr"
-#>  Plotting motif "HOMER.TATA_box_1"
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning in ks.test.default(plot_df$observed[plot_df$energy == "0-3"],
-#> plot_df$observed[plot_df$energy == : p-value will be approximate in the
-#> presence of ties
-#> Warning: Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Warning: Removed 42 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-#> Warning: Removed 46 rows containing missing values or values outside the scale range
-#> (`geom_line()`).
-

+

This plot shows how well our model predicts accessibility changes. Points closer to the diagonal line indicate better predictions. We measure the accuracy of the model using the coefficient of determination (R^2).

+
+

Model report +

+

Next, let's look at the model report, which provides detailed information about the motifs and their contributions:

+
+plot_traj_model_report(traj_model, filename = "model_report.pdf")
+
+knitr::include_graphics("model_report.pdf")
+

+
+
+

Interpreting the trajectory model report +

+

The model report provides several key pieces of information (from left to right):

+
    +
  1. Motif logos show the inferred sequence preferences for each transcription factor model.
  2. +
  3. Response curves show how the accessibility changes as a function of binding energy for each TF.
  4. +
  5. Barplots show the coefficient of each non-linear term of every motif in the model.
  6. +
  7. Spatial model curves show the parameters of the spatial model for each TF. The R² values indicate the predictive power each TF adds to the model.
  8. +
  9. Spatial curves show the frequencey of each TF binding site along the peaks from the bottom 10% (blue) and top 10% (red) of the differential accessibility (dAP) distribution.
  10. +
  11. Boxplots show the distribution of ATAC differences (dAP, y-axis) for bins of binding energy (x-axis) for each TF.
  12. +
+
+
+
+

Renaming the motif models +

+

You can rename the motif models to more informative names, either manually using rename_motif_models or automatically using match_traj_model_motif_names:

+
+names_map <- match_traj_model_motif_names(traj_model)
+#>  Matching motif names, note that this might take a while.
+#> → Matching JASPAR.nub
+#> → Matched with "HOMER.Oct4", PSSM correlation = 0.898696170118534
+#> → Matching SCENIC.predrem__nrMotif1342
+#> → Matched with "HOMER.Atoh1", PSSM correlation = 0.74898042552435
+#> → Matching SCENIC.cisbp__M00835
+#> → Matched with "HOMER.Tbx5", PSSM correlation = 0.904736231501015
+#> → Matching SCENIC.swissregulon__hs__ID4
+#> → Matched with "HOMER.E2A_1", PSSM correlation = 0.867727837996119
+#> → Matching SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD
+#> → Matched with "HOMER.Isl1", PSSM correlation = 0.869760207503598
+#> → Matching SCENIC.jaspar__MA1621.1
+#> → Matched with "HOMER.E2A_1", PSSM correlation = 0.918354413557226
+#> → Matching JOLMA.FIGLA_di_DBD
+#> → Matched with "HOMER.MyoG", PSSM correlation = 0.721047792856512
+#> → Matching SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth
+#> → Matched with "HOMER.Atoh1", PSSM correlation = 0.669100601091648
+#> → Matching SCENIC.swissregulon__mm__Gata1
+#> → Matched with "HOMER.GATA3_2", PSSM correlation = 0.95177409403423
+#> → Matching SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL
+#> → Matched with "HOMER.Meis1", PSSM correlation = 0.733098848365572
+#> → Matching HOCOMOCO.SUH_MOUSE.H11MO.0.A
+#> → Matched with "HOMER.E2F6", PSSM correlation = 0.657723158470179
+#> → Matching SCENIC.jaspar__MA0869.2
+#> → Matched with "HOMER.Pit1", PSSM correlation = 0.532601141276059
+#> → Matching HOMER.PQM_1
+#> → Matched with "HOMER.PQM_1", PSSM correlation = 0.94889261728701
+#> → Matching SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A
+#> → Matched with "HOMER.TboxSmad", PSSM correlation = 0.971715050385645
+#> → Matching SCENIC.cisbp__M02320
+#> → Matched with "HOMER.GATA3_2", PSSM correlation = 0.802823387218573
+#> → Matching SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C
+#> → Matched with "HOMER.E_box_2", PSSM correlation = 0.710572263191446
+#> → Matching JASPAR.SOX14
+#> → Matched with "HOMER.Tcf3", PSSM correlation = 0.67164203806063
+#> → Matching SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr
+#> → Matched with "HOMER.Tcf4", PSSM correlation = 0.950211584477428
+#> → Matching SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1
+#> → Matched with "HOMER.Atoh1", PSSM correlation = 0.886109683951447
+#> → Matching HOMER.TATA_box_1
+#> → Matched with "HOMER.TATA_box", PSSM correlation = 0.867728627783548
+#> → Matching SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr
+#> → Matched with "HOMER.Lhx2", PSSM correlation = 0.525391618049386
+
+names_map
+#>                                HOCOMOCO.SUH_MOUSE.H11MO.0.A 
+#>                                                      "E2F6" 
+#>                                                 HOMER.PQM_1 
+#>                                                     "PQM_1" 
+#>                                            HOMER.TATA_box_1 
+#>                                                  "TATA_box" 
+#>                                                JASPAR.SOX14 
+#>                                                      "Tcf3" 
+#>                                                  JASPAR.nub 
+#>                                                      "Oct4" 
+#>                                          JOLMA.FIGLA_di_DBD 
+#>                                                      "MyoG" 
+#>                                        SCENIC.cisbp__M00835 
+#>                                                      "Tbx5" 
+#>                                        SCENIC.cisbp__M02320 
+#>                                                   "GATA3_2" 
+#>        SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1 
+#>                                                     "Atoh1" 
+#>                      SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A 
+#>                                                  "TboxSmad" 
+#>                       SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C 
+#>                                                   "E_box_2" 
+#>                                     SCENIC.jaspar__MA0869.2 
+#>                                                      "Pit1" 
+#>                                     SCENIC.jaspar__MA1621.1 
+#>                                                     "E2A_1" 
+#>                                 SCENIC.predrem__nrMotif1342 
+#>                                                   "Atoh1.2" 
+#>                                SCENIC.swissregulon__hs__ID4 
+#>                                                   "E2A_1.2" 
+#>                              SCENIC.swissregulon__mm__Gata1 
+#>                                                 "GATA3_2.2" 
+#>                 SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD 
+#>                                                      "Isl1" 
+#>    SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr 
+#>                                                      "Tcf4" 
+#>         SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth 
+#>                                                   "Atoh1.3" 
+#>                  SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL 
+#>                                                     "Meis1" 
+#> SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr 
+#>                                                      "Lhx2"
+
+traj_model <- rename_motif_models(traj_model, names_map)
+#> Warning in eval(family$initialize): non-integer #successes in a binomial glm!
+#> Warning: glmnet.fit: algorithm did not converge
+
+
+

Exporting the model +

+

You can export the minimal model representation to a list of PBM in order to use infer it on new data:

+
+pbm_list <- traj_model_to_pbm_list(traj_model)
+#>  Computing motif energies for 21 motifs on 129963 normalization intervals
+
+pbm_list
+#> $Oct4
+#> a <PBM> object named "Oct4" with 15 positions (`@pssm`)
+#> Energy normalization max = -22.8997500001511 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Atoh1.2
+#> a <PBM> object named "Atoh1.2" with 15 positions (`@pssm`)
+#> Energy normalization max = -22.7175598349943 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Tbx5
+#> a <PBM> object named "Tbx5" with 15 positions (`@pssm`)
+#> Energy normalization max = -23.7724491326609 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $E2A_1.2
+#> a <PBM> object named "E2A_1.2" with 15 positions (`@pssm`)
+#> Energy normalization max = -21.2037809248507 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Isl1
+#> a <PBM> object named "Isl1" with 15 positions (`@pssm`)
+#> Energy normalization max = -25.5471422344978 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $E2A_1
+#> a <PBM> object named "E2A_1" with 15 positions (`@pssm`)
+#> Energy normalization max = -21.4483677716017 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $MyoG
+#> a <PBM> object named "MyoG" with 15 positions (`@pssm`)
+#> Energy normalization max = -23.3601778254574 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Atoh1.3
+#> a <PBM> object named "Atoh1.3" with 15 positions (`@pssm`)
+#> Energy normalization max = -22.1394656075513 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $GATA3_2.2
+#> a <PBM> object named "GATA3_2.2" with 15 positions (`@pssm`)
+#> Energy normalization max = -25.6915278612726 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Meis1
+#> a <PBM> object named "Meis1" with 15 positions (`@pssm`)
+#> Energy normalization max = -24.7345338401995 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $E2F6
+#> a <PBM> object named "E2F6" with 15 positions (`@pssm`)
+#> Energy normalization max = -25.9229999989994 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Pit1
+#> a <PBM> object named "Pit1" with 15 positions (`@pssm`)
+#> Energy normalization max = -26.0310794002464 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $PQM_1
+#> a <PBM> object named "PQM_1" with 15 positions (`@pssm`)
+#> Energy normalization max = -24.6383171142784 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $TboxSmad
+#> a <PBM> object named "TboxSmad" with 15 positions (`@pssm`)
+#> Energy normalization max = -22.3027239225011 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $GATA3_2
+#> a <PBM> object named "GATA3_2" with 15 positions (`@pssm`)
+#> Energy normalization max = -26.5521923358056 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $E_box_2
+#> a <PBM> object named "E_box_2" with 15 positions (`@pssm`)
+#> Energy normalization max = -22.6841209042217 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Tcf3
+#> a <PBM> object named "Tcf3" with 15 positions (`@pssm`)
+#> Energy normalization max = -23.5664496893186 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Tcf4
+#> a <PBM> object named "Tcf4" with 15 positions (`@pssm`)
+#> Energy normalization max = -23.5260544042839 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Atoh1
+#> a <PBM> object named "Atoh1" with 15 positions (`@pssm`)
+#> Energy normalization max = -22.55867400696 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $TATA_box
+#> a <PBM> object named "TATA_box" with 15 positions (`@pssm`)
+#> Energy normalization max = -23.5020346193338 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+#> 
+#> $Lhx2
+#> a <PBM> object named "Lhx2" with 13 positions (`@pssm`)
+#> Energy normalization max = -14.2673450054441 (`@max_energy`)
+#> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp)
+#> (`@spat`)
+#> Includes a model with 4 coefficients ("high-energy", "higher-energy",
+#> "low-energy", and "sigmoid") (`@coefs`)
+

You can now use pbm_list.compute or pbm_list.gextract to infer the model on new data:

+
+new_intervals <- data.frame(
+    chrom = rep("chr1", 3),
+    start = c(3671720, 4412460, 4493400),
+    end = c(3672020, 4412760, 4493700)
+)
+pbm_list.gextract(pbm_list, new_intervals)
+#>  Computing energies for 21 PBMs on 3 sequences
+#>   chrom   start     end     Oct4  Atoh1.2     Tbx5 E2A_1.2     Isl1 E2A_1
+#> 1  chr1 3671720 3672020 0.000000 0.000000 3.360820       0 3.729907     0
+#> 2  chr1 4412460 4412760 2.438457 2.731101 3.491086       0 4.280369     0
+#> 3  chr1 4493400 4493700 0.000000 0.000000 2.669436       0 3.894363     0
+#>        MyoG Atoh1.3 GATA3_2.2    Meis1     E2F6     Pit1    PQM_1  TboxSmad
+#> 1 2.0862625       0  3.806423 3.154064 4.018626 2.305464 1.271002 0.1399182
+#> 2 2.3392323       0  5.520942 6.555252 5.438935 4.640641 5.010974 4.3378987
+#> 3 0.5483327       0  4.763735 4.778387 3.007386 4.004477 1.685282 0.4491135
+#>    GATA3_2   E_box_2     Tcf3      Tcf4    Atoh1 TATA_box Lhx2
+#> 1 6.282286 1.2634071 0.000000 0.4460041 4.839001 0.000000    0
+#> 2 4.587564 0.4109196 2.038721 6.6088638 0.000000 1.872493    0
+#> 3 5.887933 0.9321862 2.091852 0.0000000 0.000000 2.445689    0
+
+
+# directly compute on sequences
+seqs <- prego::intervals_to_seq(new_intervals)
+seqs
+#> [1] "TTCCTCTCCTCCCCTCGCGCGCGCTCCCTCCTCCCGCAGCCTCTCCTCCACCAGCTGACTCCGAGGGAGAGGATGACCTCATCCCTTCCCTTCCAGCTGCCGCCGCTCCCACCCCGGCTGGGGAGGGGCGAGAAGGAGGGCCCGGAGGAGGGGCTGGGATTGAGGGGAGCGGCGGGTGGGGGTGCCTGGCTGGCCAGTGCTGGACGCGGAGGGCAACAGCACGGCAATCGGAGGCCCAGTCCAGGCTCGTGGGATAGCGAAGAGCGTTGAGTGGATTTCCTCGAAGCTGGGGGGATGGGA"
+#> [2] "ATCTCTGGAAAGACTTGTGCTGATCTCTCTCTGCCCCTTCCTTGATTCACATCTCAAGGGACCGAGAAGGGAGGGAAAACACCAGTCCAGTATTTCCTATCAGTTCAGCGGGGCAGGAACCGGGAGCTTTTCCACAGGGCTGAGCCTGGCCCTCCACTGAGCAGTGTCTGCATTCCAAGGCTCCAGCCTGTCACCACCCTTCCAATCCCTTTGAAGCTGGGCAAAAGGCCTGCCAACAAGCACCAAACTTGAGAGCTCCTCTGCCAGCCCTGGGAGGGGCTGTTTCCTGCCTGCTTTTCG"
+#> [3] "GCTCATGGCTCTCCAGACCGACCCCGAGCTCTGCTATGGCCACGGGACACGCCGCTTCCCCCGACCCTGAGGCAGGGATCGGAAGCTAGCCTGGAGATGCCCAGAGGAACTCGTAAAGCTGAGCGGGTGCTACCCTCCCGCTGCTCTCCTGGTAGACCTAACCCTTCGCCTAATCCGCGCTGGAGATCTACCCAGTGACACTGCGGGTGTCCCCCCGGGCCGCGGGGCCCTTTTCTTTATGGACGCGGCCAATGGCGAGGCGGGGGCGGACCGGACCCTAGTCCTTAGGCCCCCGCCCAG"
+
+pbm_list.compute(pbm_list, seqs)
+#>  Computing energies for 21 PBMs on 3 sequences
+#>          Oct4  Atoh1.2     Tbx5 E2A_1.2     Isl1 E2A_1      MyoG Atoh1.3
+#> [1,] 0.000000 0.000000 3.360820       0 3.729907     0 2.0862625       0
+#> [2,] 2.438457 2.731101 3.491086       0 4.280369     0 2.3392323       0
+#> [3,] 0.000000 0.000000 2.669436       0 3.894363     0 0.5483327       0
+#>      GATA3_2.2    Meis1     E2F6     Pit1    PQM_1  TboxSmad  GATA3_2   E_box_2
+#> [1,]  3.806423 3.154064 4.018626 2.305464 1.271002 0.1399182 6.282286 1.2634071
+#> [2,]  5.520942 6.555252 5.438935 4.640641 5.010974 4.3378987 4.587564 0.4109196
+#> [3,]  4.763735 4.778387 3.007386 4.004477 1.685282 0.4491135 5.887933 0.9321862
+#>          Tcf3      Tcf4    Atoh1 TATA_box Lhx2
+#> [1,] 0.000000 0.4460041 4.839001 0.000000    0
+#> [2,] 2.038721 6.6088638 0.000000 1.872493    0
+#> [3,] 2.091852 0.0000000 0.000000 2.445689    0
+
+
+

Performance Considerations +

+

The computational requirements for IceQream depend on the size of your dataset. For reference, the example dataset used here (with ~100,000 peaks and ~20,000 motifs) requires about 23GB of RAM for the motif energy matrix, and will take several hours to create, depending on your hardware.

+

For a less memory and computationally intensive analysis, you can reduce the number of motifs used in the regression by taking a representative from the SCENIC clusters (1615) instead of all motifs (20,000+). This can be done by:

+
+# motif_energies <- compute_motif_energies(peak_intervals, motif_db_scenic_clusters, normalization_intervals = normalization_intervals)
+

Note that the performance of the model will be lower with fewer motifs, but it can still provide valuable insights.

+
+

Running IceQream on your own data +

+

To run IceQream on your own data, you will need to provide the following inputs:

+
    +
  1. Genomic positions of peaks (as a dataframe with columns chrom, start, end, peak_name), optionally it can have a const column indicating constitutive loci.
  2. +
  3. ATAC scores (as a matrix with rows corresponding to peaks and columns corresponding to bins).
  4. +
  5. (Optional) Additional features (as a data frame with rows corresponding to peaks and columns corresponding to features).
  6. +
+

You can then follow the steps outlined in this vignette to compute motif energies and run the regression.

diff --git a/docs/articles/iceqream_files/figure-html/prediction_scatter-1.png b/docs/articles/iceqream_files/figure-html/prediction_scatter-1.png index d2178bb..48af160 100644 Binary files a/docs/articles/iceqream_files/figure-html/prediction_scatter-1.png and b/docs/articles/iceqream_files/figure-html/prediction_scatter-1.png differ diff --git a/docs/articles/index.html b/docs/articles/index.html index 1799cba..9f64bf1 100644 --- a/docs/articles/index.html +++ b/docs/articles/index.html @@ -41,7 +41,7 @@

All vignettes

-
iceqream
+
IceQream
diff --git a/docs/articles/model_report.pdf b/docs/articles/model_report.pdf new file mode 100644 index 0000000..e096c76 Binary files /dev/null and b/docs/articles/model_report.pdf differ diff --git a/docs/pkgdown.yml b/docs/pkgdown.yml index d27976a..118ac45 100644 --- a/docs/pkgdown.yml +++ b/docs/pkgdown.yml @@ -3,7 +3,7 @@ pkgdown: 2.0.9 pkgdown_sha: ~ articles: iceqream: iceqream.html -last_built: 2024-09-23T12:41Z +last_built: 2024-09-27T14:11Z urls: reference: https://tanaylab.github.io/iceqream/reference article: https://tanaylab.github.io/iceqream/articles diff --git a/docs/reference/iq_regression.html b/docs/reference/iq_regression.html index 8ca0a20..1c7d2f3 100644 --- a/docs/reference/iq_regression.html +++ b/docs/reference/iq_regression.html @@ -162,6 +162,9 @@

ArgumentsUsage energy_norm_quantile = 1, norm_energy_max = 10, min_energy = -7, + sample_for_kmers = FALSE, sample_fraction = 0.1, sequences = NULL, seed = NULL, @@ -93,8 +94,12 @@

ArgumentsUsage T_rmax = NULL, motifs = NULL, plot_others = FALSE, + trim_pbms = TRUE, + trim_bits_thresh = 0.1, bits_threshold = NULL, order_motifs = TRUE, atac_names = atac_tracks, @@ -136,6 +138,14 @@

ArgumentsUsage traj_prego = NULL, min_diff = 0.1, distill_on_diff = FALSE, + prego_sample_for_kmers = TRUE, prego_sample_fraction = 0.1, seed = 60427, feature_selection_beta = 0.003, @@ -180,6 +181,10 @@

Arguments Download data","what":"Create a misha genome","title":"iceqream","text":"start creating misha database mm10 genome. already mm10 misha database can skip part load genome using gsetroot(\"path//mm10\").","code":"gdb.create_genome(\"mm10\") gsetroot(\"mm10\")"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"download-the-example-files","dir":"Articles","previous_headings":"Running IceQream on a mouse gastrulation trajectory > Download data","what":"Download the example files","title":"iceqream","text":"basic inputs iceqream regression genomic positions peaks two vectors ATAC scores. Optionally, additional features epigenomic features can provided. download files Epiblast Early nascent mesoderm trajectory mouse gastrulation. loaded following objects: peak_intervals: data frame genomic positions peaks. atac_scores: matrix ATAC scores peak different bins trajectory. regress last bin (bin4) vs first bin (bin1). additional_features: data frame additional features peak. optional. addition, loaded set genomic intervals used motif energy normalization. intervals peaks including ones close TSSs.","code":"download.file(\"https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation-example.tar.gz\", \"gastrulation-example.tar.gz\") untar(\"gastrulation-example.tar.gz\") peak_intervals <- readr::read_tsv(\"gastrulation-example/peak_intervals.tsv\", show_col_types = FALSE) atac_scores <- readr::read_rds(\"gastrulation-example/atac_scores.rds\") additional_features <- readr::read_rds(\"gastrulation-example/additional_features.rds\") normalization_intervals <- readr::read_tsv(\"gastrulation-example/gastrulation_intervals.tsv\", show_col_types = FALSE) head(peak_intervals) #> # A tibble: 6 × 6 #> chrom start end peak_name const tss_dist #> #> 1 chr1 3003620 3003920 1_Xkr4_3004 FALSE 211711 #> 2 chr1 3008880 3009180 1_Xkr4_3009 FALSE 206451 #> 3 chr1 3035780 3036080 1_Xkr4_3036 FALSE 179551 #> 4 chr1 3062880 3063180 1_Xkr4_3063 FALSE 152451 #> 5 chr1 3191760 3192060 1_Xkr4_3192 FALSE 23571 #> 6 chr1 3264000 3264300 1_Xkr4_3264 FALSE -48368 nrow(peak_intervals) #> [1] 99291 head(atac_scores) #> bin1 bin2 bin3 bin4 #> 1_Xkr4_3004 0.004287514 0.005028976 0.04591491 0.02115745 #> 1_Xkr4_3009 0.016835629 0.020535310 0.01645209 0.05152993 #> 1_Xkr4_3036 0.314234571 0.351552061 0.24488575 0.21536988 #> 1_Xkr4_3063 0.302141442 0.368683558 0.14807723 0.09834478 #> 1_Xkr4_3192 0.234917748 0.159842916 0.24823286 0.40749248 #> 1_Xkr4_3264 0.057764122 0.079473969 0.05351386 0.05018866 nrow(atac_scores) #> [1] 99291 head(additional_features) #> cg_cont k4me3 k27me3 k27ac prox_bin1_punc_all spatial_ratio #> 1_Xkr4_3004 0.6949901 0 0 0 0.2781718 4.764228 #> 1_Xkr4_3009 0.4440685 0 0 0 0.3025915 7.041941 #> 1_Xkr4_3036 1.0952665 0 0 0 0.2357028 8.936077 #> 1_Xkr4_3063 0.2247980 0 0 0 0.3126778 7.760096 #> 1_Xkr4_3192 0.9602237 0 0 0 0.6481828 5.660977 #> 1_Xkr4_3264 0.9239115 0 0 0 0.3089618 3.679446 #> TT CT GT AT TC CC GC #> 1_Xkr4_3004 2.1875 8.181818 4.482759 2.500000 7.567568 4.615385 4.897959 #> 1_Xkr4_3009 5.0000 8.181818 3.103448 4.642857 6.216216 6.923077 4.285714 #> 1_Xkr4_3036 9.3750 4.090909 6.206897 4.642857 4.594595 2.820513 3.265306 #> 1_Xkr4_3063 4.3750 6.136364 5.517241 6.071429 7.297297 2.820513 2.653061 #> 1_Xkr4_3192 6.8750 6.363636 5.172414 8.571429 5.405405 4.358974 2.653061 #> 1_Xkr4_3264 7.5000 7.500000 4.827586 4.285714 7.297297 4.871795 3.877551 #> AC TG CG GG AG TA CA #> 1_Xkr4_3004 3.103448 6.842105 0.9756098 7.435897 5.555556 1.111111 5.526316 #> 1_Xkr4_3009 7.241379 6.052632 0.4878049 2.051282 4.888889 4.444444 7.105263 #> 1_Xkr4_3036 4.482759 4.736842 1.2195122 6.153846 6.222222 4.814815 6.052632 #> 1_Xkr4_3063 5.172414 6.052632 0.0000000 4.102564 5.555556 4.074074 7.368421 #> 1_Xkr4_3192 4.827586 6.315789 0.9756098 2.820513 3.555556 8.518519 3.947368 #> 1_Xkr4_3264 5.517241 5.789474 1.4634146 2.564103 4.444444 3.703704 6.052632 #> GA AA #> 1_Xkr4_3004 4.594595 2.8125 #> 1_Xkr4_3009 4.594595 2.8125 #> 1_Xkr4_3036 4.594595 4.6875 #> 1_Xkr4_3063 5.135135 7.1875 #> 1_Xkr4_3192 4.054054 6.2500 #> 1_Xkr4_3264 3.783784 3.4375 nrow(additional_features) #> [1] 99291"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"compute-motif-energies","dir":"Articles","previous_headings":"Running IceQream on a mouse gastrulation trajectory","what":"Compute motif energies","title":"iceqream","text":"first step IceQream pipeline compute motif energies motif model peak. process computationally intensive computing energy 21862 motifs collected HOMER, JASPAR, Jolma et al., HOCOMOCO SCENIC databases. Calculation done : want start less computationally intensive example, can use scenic clusters (1615) instead full motif database. still take ~10-15 minutes, performance significantly lower. case, load precomputed motif energies example. Note full matrix requires ~23GB RAM. Load motif energies:","code":"length(unique(motif_db$motif)) #> [1] 21862 # motif_energies <- compute_motif_energies(peak_intervals, motif_db, normalization_intervals = normalization_intervals) # motif_energies <- compute_motif_energies(peak_intervals, motif_db_scenic_clusters, normalization_intervals = normalization_intervals) download.file(\"https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation_energies.tar.gz\", \"gastrulation_energies.tar.gz\") untar(\"gastrulation_energies.tar.gz\") motif_energies <- readr::read_rds(\"gastrulation_energies.rds\") motif_energies <- motif_energies[peak_intervals$peak_name, ] dim(motif_energies) #> [1] 99291 21862"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"run-iceqream","dir":"Articles","previous_headings":"Running IceQream on a mouse gastrulation trajectory","what":"Run IceQream","title":"iceqream","text":"now run IceQream gastrulation trajectory: result TrajectoryModel object contains regression results model report:","code":"traj_model <- iq_regression( peak_intervals = peak_intervals, atac_scores = atac_scores, motif_energies = motif_energies, additional_features = additional_features, norm_intervals = normalization_intervals, seed = 60427, frac_train = 0.8, max_motif_num = 30 ) #> ℹ Training on 79432 intervals (80%) and testing on 19859 intervals (20%) #> ℹ Number of peaks: 79432 #> → Extracting sequences... #> ℹ Calculating correlations between 21862 motif energies and ATAC difference... #> ℹ Selected 1558 (out of 21862) features with absolute correlation >= 0.05 #> ℹ Running first round of regression, # of features: 1558 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning: glmnet.fit: algorithm did not converge #> ℹ Taking 743 features with beta >= 0.003 #> ℹ Running second round of regression... #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ℹ Clustering 740 features into 30 clusters... #> ℹ Choosing top 30 features clusters #> ℹ Features left: 740 #> ℹ Learning a model for each motif cluster... #> ℹ Infering energies... #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ✔ Finished running model. Number of non-zero coefficients: 201 (out of 208). R^2: 0.309612868425167 #> → Filtering the model #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ℹ Using 7940 samples for filtering #> ℹ R^2 of the full model: 0.29602387224171 #> ℹ Filtering features with R^2 < 5e-04 and bits < 1.75 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by JASPAR.nub (----TTAGCAT----): 0.0167275374369183. Bits: 7.00354991194335 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M08572 (---T-----------): 0.0026997995326517. Bits: 1.10663727169756 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.predrem__nrMotif1342 (---G-CAAATGG---): 0.00634826224842949. Bits: 7.99024178403719 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M00835 (----GTGT-A-----): 0.0305228554917784. Bits: 4.57075101707182 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.hdpi__CREB1 (----TGAC--A----): 7.75643877909959e-05. Bits: 1.89464022573617 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.homer__ACCATCTGTT_NeuroG2 (-----CAGATGG---): -0.000120197791811605. Bits: 4.59034584610514 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.swissregulon__hs__ID4 (-----GCACCTG---): 0.00278910362030049. Bits: 10.7708040996155 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD (------TAAT-G---): 0.0173484629685431. Bits: 3.82249971740051 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.jaspar__MA1621.1 (---CACCTGC-----): 0.000955852850026528. Bits: 9.97745953946352 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by JOLMA.FIGLA_di_DBD (---ACAGGT------): 0.000527737749653978. Bits: 5.74258158770429 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M01516 (----ATGCA------): 4.75776194436284e-06. Bits: 3.33918513257243 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth (---ACCAAATGTT--): 0.000743126659866977. Bits: 9.24966897852248 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.swissregulon__mm__Gata1 (-----GATA------): 0.0059904574972684. Bits: 3.58604128728144 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL (----CTGACA-----): 0.000589606574210977. Bits: 5.47428832011949 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by HOCOMOCO.SUH_MOUSE.H11MO.0.A (-----TGGGA-----): 0.000956012692981068. Bits: 2.60135226413422 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.jaspar__MA0869.2 (----AAAT--A----): 0.00149994976970297. Bits: 2.43576636244517 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.flyfactorsurvey__HLHm5_FlyReg_FBgn0002631 (------A--------): 0.00010975195439078. Bits: 0.788368839986324 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by HOMER.PQM_1 (----TGATAAG----): 0.00117074463927358. Bits: 5.35487254467996 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A (---GTG-CAGAC---): 0.00219652282477695. Bits: 7.85384961351908 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M02320 (-----GAT-------): 0.00112380163185027. Bits: 3.4817723117682 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C (-------CAGGTG--): 0.00484774757259671. Bits: 7.66340237394876 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by JASPAR.SOX14 (----ACAATG-----): 0.020314669301463. Bits: 6.01846819360433 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr (----CATCAAAG---): 0.0102889730006238. Bits: 5.82383823306701 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.nitta__SoxN_TGAGGT40NTCC_KK_NCGAACAATNN_m1_c2 (----CGTAC------): 0.00015623097637113. Bits: 2.83138146510066 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1 (--AACAGCTG-----): 0.00164317632907796. Bits: 6.33133125285195 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by HOMER.TATA_box_1 (---CTATAAAAG---): -3.49324694661757e-05. Bits: 6.0079726304727 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.predrem__nrMotif1713 (----GTCACA-----): 0.000223555700244238. Bits: 5.74538254268905 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.transfac_public__M00075 (--TCACCCCAC----): -0.00041752947580298. Bits: 3.92211592781422 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__HMX1_NCAMTTAAN_eDBD_meth_repr (-----AAGTG-----): -0.00057932247059217. Bits: 6.61434403320222 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr (TAATTA-GGATTA): 0.000496812804951952. Bits: 10.8696138190304 #> ℹ Removing the following features with bits < 1.75: \"SCENIC.cisbp__M08572\" and \"SCENIC.flyfactorsurvey__HLHm5_FlyReg_FBgn0002631\" #> ℹ Trying to remove the following features with R^2 < 5e-04: \"SCENIC.hdpi__CREB1\", \"SCENIC.homer__ACCATCTGTT_NeuroG2\", \"SCENIC.cisbp__M01516\", \"SCENIC.flyfactorsurvey__HLHm5_FlyReg_FBgn0002631\", \"SCENIC.nitta__SoxN_TGAGGT40NTCC_KK_NCGAACAATNN_m1_c2\", \"HOMER.TATA_box_1\", \"SCENIC.predrem__nrMotif1713\", \"SCENIC.transfac_public__M00075\", \"SCENIC.taipale_cyt_meth__HMX1_NCAMTTAAN_eDBD_meth_repr\", and \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\" #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning: glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.transfac_public__M00075\" changed the R^2 by -0.000411123637068522 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.homer__ACCATCTGTT_NeuroG2\" changed the R^2 by -6.44393580477853e-05 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Not removing \"HOMER.TATA_box_1\" (changed the R^2 by only 0.000758037995756855). #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.cisbp__M01516\" changed the R^2 by -2.65246572077604e-05 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.hdpi__CREB1\" changed the R^2 by -0.000189532430595718 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.nitta__SoxN_TGAGGT40NTCC_KK_NCGAACAATNN_m1_c2\" changed the R^2 by 0.000190831533410263 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.predrem__nrMotif1713\" changed the R^2 by 0.000233902642093553 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Not removing \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\" (changed the R^2 by only 0.00053681107061454). #> ℹ Removed 2 features with bits < 1.75 #> ℹ Removed 7 features with R^2 < 5e-04 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ✔ After filtering: Number of non-zero coefficients: 166 (out of 172). R^2: 0.304057017984406. Number of models: 21 #> → Infering trajectory motifs on the test set #> ℹ Extracting sequences... #> ℹ Computing motif energies for 19859 intervals #> ✔ Finished IQ regression. #> #> Number of motifs: 21 #> R^2 train: 0.304 #> R^2 test: 0.305 #> #> Run `plot_traj_model_report(traj_model)` to visualize the model features #> Run `plot_prediction_scatter(traj_model)` to visualize the model predictions traj_model #> with 21 motifs and 22 additional features #> #> Slots include: #> • @model: A GLM model object. Number of non-zero coefficients: 166 #> • @motif_models: A named list of motif models. Each element contains PSSM and #> spatial model (21 models: \"JASPAR.nub\", \"SCENIC.predrem__nrMotif1342\", #> \"SCENIC.cisbp__M00835\", \"SCENIC.swissregulon__hs__ID4\", #> \"SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD\", \"SCENIC.jaspar__MA1621.1\", #> \"JOLMA.FIGLA_di_DBD\", \"SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth\", #> \"SCENIC.swissregulon__mm__Gata1\", \"SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL\", #> \"HOCOMOCO.SUH_MOUSE.H11MO.0.A\", \"SCENIC.jaspar__MA0869.2\", \"HOMER.PQM_1\", #> \"SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A\", \"SCENIC.cisbp__M02320\", #> \"SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C\", \"JASPAR.SOX14\", #> \"SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr\", …, #> \"HOMER.TATA_box_1\", and #> \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\") #> • @additional_features: A data frame of additional features (22 features) #> • @coefs: A data frame of coefficients (43 elements) #> • @model_features: A matrix of the model features (logistic functions of the #> motif models energies, dimensions: 99291x172) #> • @normalized_energies: A matrix of normalized energies of the model features #> (dimensions: 99291x21) #> • @type: A vector the length of the number of peaks, indicating whether each #> peak is a training ('train') or a prediction peak ('test') #> • @diff_score: A numeric value representing the difference score the model was #> trained on (99291 elements) #> • @predicted_diff_score: A numeric value representing the predicted difference #> score #> • @initial_prego_models: A list of prego models used in the initial phase of #> the algorithm (0 models) #> • @peak_intervals: A data frame containing the peak intervals (99291 elements) #> • @normalization_intervals: A data frame containing the intervals used for #> energy normalization (129963 elements) #> • @features_r2: A numeric vector of the added R^2 values for each feature (21 #> elements) #> • @params: A list of parameters used for training (including: #> \"energy_norm_quantile\", \"norm_energy_max\", \"min_energy\", \"alpha\", \"lambda\", #> \"peaks_size\", \"spat_num_bins\", \"spat_bin_size\", \"distilled_features\", #> \"n_clust_factor\", \"seed\", \"features_bits\", \"r2_threshold\", \"bits_threshold\", #> and \"stats\") #> #> R^2 train: 0.304 #> R^2 test: 0.305"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"plot-results","dir":"Articles","previous_headings":"Running IceQream on a mouse gastrulation trajectory","what":"Plot results","title":"iceqream","text":"can plot performance model: model report:","code":"plot_prediction_scatter(traj_model) plot_traj_model_report(traj_model) #> ℹ Plotting 21 motifs #> Warning: The `` argument of `guides()` cannot be `FALSE`. Use \"none\" instead as #> of ggplot2 3.3.4. #> ℹ The deprecated feature was likely used in the ggseqlogo package. #> Please report the issue at . #> This warning is displayed once every 8 hours. #> Call `lifecycle::last_lifecycle_warnings()` to see where this warning was #> generated. #> ℹ Plotting motif \"SCENIC.cisbp__M00835\" #> ℹ Plotting motif \"JASPAR.SOX14\" #> ℹ Plotting motif \"SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD\" #> ℹ Plotting motif \"JASPAR.nub\" #> ℹ Plotting motif \"SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr\" #> ℹ Plotting motif \"SCENIC.predrem__nrMotif1342\" #> ℹ Plotting motif \"SCENIC.swissregulon__mm__Gata1\" #> ℹ Plotting motif \"SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C\" #> ℹ Plotting motif \"SCENIC.swissregulon__hs__ID4\" #> ℹ Plotting motif \"SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A\" #> ℹ Plotting motif \"SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1\" #> ℹ Plotting motif \"SCENIC.jaspar__MA0869.2\" #> ℹ Plotting motif \"HOMER.PQM_1\" #> ℹ Plotting motif \"SCENIC.cisbp__M02320\" #> ℹ Plotting motif \"HOCOMOCO.SUH_MOUSE.H11MO.0.A\" #> ℹ Plotting motif \"SCENIC.jaspar__MA1621.1\" #> ℹ Plotting motif \"SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth\" #> ℹ Plotting motif \"SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL\" #> ℹ Plotting motif \"JOLMA.FIGLA_di_DBD\" #> ℹ Plotting motif \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\" #> ℹ Plotting motif \"HOMER.TATA_box_1\" #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning in ks.test.default(plot_df$observed[plot_df$energy == \"0-3\"], #> plot_df$observed[plot_df$energy == : p-value will be approximate in the #> presence of ties #> Warning: Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Warning: Removed 42 rows containing missing values or values outside the scale range #> (`geom_line()`). #> Warning: Removed 46 rows containing missing values or values outside the scale range #> (`geom_line()`)."},{"path":"https://tanaylab.github.io/iceqream/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Aviezer Lifshitz. Author, maintainer. Akhiad Bercovich. Author. Amos Tanay. Author.","code":""},{"path":"https://tanaylab.github.io/iceqream/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Lifshitz , Bercovich , Tanay (2024). iceqream: Interpretable Computational Engine Quantitative Regression Enhancer ATAC Motifs. R package version 0.0.1, https://tanaylab.github.io/iceqream/.","code":"@Manual{, title = {iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs}, author = {Aviezer Lifshitz and Akhiad Bercovich and Amos Tanay}, year = {2024}, note = {R package version 0.0.1}, url = {https://tanaylab.github.io/iceqream/}, }"},{"path":"https://tanaylab.github.io/iceqream/index.html","id":"iceqream","dir":"","previous_headings":"","what":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","title":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","text":"iceqream (Interpretable Computational Engine Quantitative Regression Enhancer ATAC Motifs, short: IQ) package regressing accessibility sequences using physical models TF binding. models TF effective concentrations latent variables activate repress regulatory elements nonlinear fashion, possible contribution pairwise interactions synergistic chromosomal domain effects. IQ allows inference synthesis models explaining accessibility dynamics entire single cell manifold.","code":""},{"path":"https://tanaylab.github.io/iceqream/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","text":"can install development version iceqream like :","code":"remotes::install_github(\"tanaylab/iceqream\")"},{"path":"https://tanaylab.github.io/iceqream/index.html","id":"usage","dir":"","previous_headings":"","what":"Usage","title":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","text":"See vignette detailed example mouse gastrulation trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQFeature class — IQFeature-class","title":"IQFeature class — IQFeature-class","text":"class represents IQ feature method defines IQFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQFeature class — IQFeature-class","text":"","code":"# S4 method for IQFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQFeature class — IQFeature-class","text":"object IQFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQFeature class — IQFeature-class","text":"name name IQ feature (character). coefs coefficients IQ feature (numeric).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQFeatureGroup class — IQFeatureGroup-class","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"class represents group related IQ features, dinucleotide features. method defines IQFeatureGroup object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"","code":"# S4 method for IQFeatureGroup initialize(.Object, features, compute_func, size) # S4 method for IQFeatureGroup show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQFeatureGroup class — IQFeatureGroup-class","text":".Object IQFeatureGroup object initialize. features list IQSeqFeature objects. compute_func function compute features group . size size sequences use feature computation. object IQFeatureGroup object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"initialized IQFeatureGroup object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"features list IQSeqFeature objects. compute_func function compute features group . size size sequences use feature computation (numeric).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQSeqFeature class — IQSeqFeature-class","title":"IQSeqFeature class — IQSeqFeature-class","text":"class represents sequence feature IQ models, inheriting IQFeature. method defines IQSeqFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQSeqFeature class — IQSeqFeature-class","text":"","code":"# S4 method for IQSeqFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQSeqFeature class — IQSeqFeature-class","text":"object IQSeqFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQSeqFeature class — IQSeqFeature-class","text":"name name IQ sequence feature (character). coefs coefficients IQ sequence feature (numeric). compute_func function compute feature (function). min_value minimum value normalization (numeric). max_value maximum value normalization (numeric). quantile quantile use normalization (numeric). size size sequences use feature computation (numeric).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQmodel class — IQmodel-class","title":"IQmodel class — IQmodel-class","text":"class represents IQ model including IQ features PBMs, along necessary model parameters. method defines IQmodel object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQmodel class — IQmodel-class","text":"","code":"# S4 method for IQmodel show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQmodel class — IQmodel-class","text":"object IQmodel object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQmodel class — IQmodel-class","text":"iq_features list IQFeature objects. pbms list PBM objects. intercept intercept term model. func function used computing energies (e.g., \"logSumExp\" \"max\"). lambda regularization parameter. alpha elastic net mixing parameter. min_pred Minimum value training predictions normalization. max_pred Maximum value training predictions normalization. norm_factors Normalization factors scaling predictions.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":null,"dir":"Reference","previous_headings":"","what":"PBM Class — PBM-class","title":"PBM Class — PBM-class","text":"class represents PBM (Physical Binding Model) object. inherits IQFeature class.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"PBM Class — PBM-class","text":"","code":"# S4 method for PBM show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"PBM Class — PBM-class","text":"object instance PBM.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"PBM Class — PBM-class","text":"pssm matrix representing position-specific scoring matrix. max_energy numeric value representing maximum energy value normalization min_energy numeric value representing minimal energy value normalization energy_range numeric value representing energy range value normalization spat data frame representing spatial distribution (optional) spat_min numeric value representing spatial minimum (optional). spat_max numeric value representing spatial maximum (optional) seq_length numeric value representing length sequence spatial distribution (optional)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":null,"dir":"Reference","previous_headings":"","what":"TrajectoryModel Class — TrajectoryModel-class","title":"TrajectoryModel Class — TrajectoryModel-class","text":"S4 class represent trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"TrajectoryModel Class — TrajectoryModel-class","text":"","code":"# S4 method for TrajectoryModel show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"TrajectoryModel Class — TrajectoryModel-class","text":"object instance TrajectoryModel.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"TrajectoryModel Class — TrajectoryModel-class","text":"diff_score numeric numerical value representing difference score. predicted_diff_score numeric numerical value representing predicted difference score. model model object data type represents trajectory model. coefs data.frame data frame containing coefficients model (including intercept). Contains coefficients 'early', 'linear' 'late' models model_features matrix containing features used training model. normalized_energies matrix matrix containing normalized energies. additional variables used, also included. type vector length number peaks, indicating whether peak training ('train') prediction peak ('test'). motif_models list list models representing different motifs. initial_prego_models list list initial pre-go models. peak_intervals data.frame data frame containing peak intervals. params list list parameters used training. additional_features data.frame data frame containing additional features. features_r2 numeric numeric vector R^2 values feature. normalization_intervals data.frame data frame containing intervals used energy normalization.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":null,"dir":"Reference","previous_headings":"","what":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"class represents multi-trajectory model, collection individual trajectory models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"","code":"# S4 method for TrajectoryModelMulti show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"object instance TrajectoryModelMulti.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"models list individual trajectory models. models_full list individual trajectory models full features. motif_models list motif models corresponding individual trajectory models. cluster_map data frame maps original motif distilled cluster. stats data frame r2 statistics trajectory model distillation. params additional parameters multi-trajectory distillation.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":null,"dir":"Reference","previous_headings":"","what":"Add Features R^2 — add_features_r2","title":"Add Features R^2 — add_features_r2","text":"function adds added R-squared values motif model trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add Features R^2 — add_features_r2","text":"","code":"add_features_r2( traj_model, sample_frac = 0.1, additional = FALSE, seed = 60427 )"},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add Features R^2 — add_features_r2","text":"traj_model trajectory model object. sample_frac fraction samples use computing r2 without model. NULL, samples used. additional calculate also additional features. Default FALSE. seed seed use sampling data. Default 60427.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Add Features R^2 — add_features_r2","text":"trajectory model object added R-squared values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute motif directional hits — compute_motif_directional_hits","title":"Compute motif directional hits — compute_motif_directional_hits","text":"function computes number hits given motif set intervals, separated strand direction.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute motif directional hits — compute_motif_directional_hits","text":"","code":"compute_motif_directional_hits(pssm, intervals, size, pwm_threshold = 7)"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute motif directional hits — compute_motif_directional_hits","text":"pssm position-specific scoring matrix (PSSM) object. intervals data frame containing genomic intervals search motif hits. size size intervals. pwm_threshold threshold PSSM score consider hit.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute motif directional hits — compute_motif_directional_hits","text":"data frame containing number hits motif interval, separated strand direction. Column names 'ml' (minus, left), 'mr' (minus, right), 'pl' (plus, left), 'pr' (plus, right).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute Motif Energies — compute_motif_energies","title":"Compute Motif Energies — compute_motif_energies","text":"function computes motif energies given peak intervals using specified motif database. Optionally, can normalize computed motif energies using additional normalization intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute Motif Energies — compute_motif_energies","text":"","code":"compute_motif_energies( peak_intervals, db = iceqream::motif_db, normalization_intervals = peak_intervals, prior = 0.01, normalize = TRUE, energy_norm_quantile = 1, norm_energy_max = 10, min_energy = -7 )"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute Motif Energies — compute_motif_energies","text":"peak_intervals data frame containing peak intervals columns: chrom, start, end. additional column 'peak_name' present, used row names output matrix. db motif database use extracting motif energies. Default iceqream::motif_db. normalization_intervals data frame containing intervals normalization. Default peak_intervals. prior prior probability nucleotide. normalize logical value indicating whether normalize motif energies. Default TRUE. energy_norm_quantile numeric value quantile used normalization. Default 1. norm_energy_max maximum value normalized energy values scaled. Default 10. min_energy minimum energy value assigned normalization. Default -7.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute Motif Energies — compute_motif_energies","text":"matrix motif energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute tracks quantiles — compute_tracks_q","title":"Compute tracks quantiles — compute_tracks_q","text":"function computes quantiles set ATAC-seq tracks.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute tracks quantiles — compute_tracks_q","text":"","code":"compute_tracks_q( atac_names, atac_tracks, iterator = 20, norm_q = 0.995, norm_intervals = gintervals.all(), tn5bias_track = \"tn5bias\", normalize_tn5bias = TRUE, sample_n = 10000 )"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute tracks quantiles — compute_tracks_q","text":"atac_names character vector specifying names ATAC-seq tracks. atac_tracks list numeric vectors representing ATAC-seq tracks. iterator iterator object used computing quantiles. norm_q numeric vector specifying quantiles compute track. single value, quantile used tracks. norm_intervals numeric vector specifying intervals computing quantiles. tn5bias_track numeric vector representing TN5 bias track. normalize_tn5bias Logical, whether normalize TN5 bias track. sample_n numeric value specifying maximum number data points use computing quantiles.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute tracks quantiles — compute_tracks_q","text":"data frame columns \"type\" \"q\", \"type\" represents name ATAC-seq track \"q\" represents computed quantiles.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"function computes spatial frequency motifs trajectory model, using top bottom 10% peaks based diff_score.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"","code":"compute_traj_model_spatial_freq( traj_model, size, pwm_threshold = 7, pwm_q_threshold = 0.99, top_q = 0.1, bottom_q = 0.1, atac_track = NULL, parallel = TRUE, bidirect_size = NULL, k4me3_track = NULL, k27me3_track = NULL, k27ac_track = NULL, orient_to_intervals = NULL, align_to_max = TRUE, motifs = names(traj_model@motif_models) )"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"traj_model trajectory model object size size region compute spatial frequency pwm_threshold threshold PWM score pwm_q_threshold genomic quantile use PWM threshold. used pwm_threshold NULL. top_q proportion top peaks select bottom_q proportion bottom peaks select atac_track name ATAC-seq marginal track parallel Whether use parallel processing bidirect_size Size intervals use deciding directionality sequence k4me3_track name k4me3 track k27me3_track name k27me3 track k27ac_track name k27ac track orient_to_intervals data frame containing intervals orient sequences align_to_max logical indicating whether align sequences maximum sequence epigenetic tracks atac signal motifs vector motif names compute spatial frequency . Default motifs trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"data frame spatial frequency motif","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":null,"dir":"Reference","previous_headings":"","what":"Create Dinucleotide Feature Group — create_dinuc_feature_group","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"function creates IQFeatureGroup object dinucleotide features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"","code":"create_dinuc_feature_group( traj_model, quantile = 0.99, size = traj_model@params$peaks_size, dinucleotides = c(\"AA\", \"AC\", \"AG\", \"AT\", \"CA\", \"CC\", \"CG\", \"CT\", \"GA\", \"GC\", \"GG\", \"GT\", \"TA\", \"TC\", \"TG\", \"TT\") )"},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"traj_model trajectory model object. quantile quantile use normalization (default 0.99). size size sequences use feature computation. dinucleotides vector dinucleotides create features (default possible dinucleotides).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"IQFeatureGroup object containing dinucleotide features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":null,"dir":"Reference","previous_headings":"","what":"Create Dinucleotide Features — create_dinuc_features","title":"Create Dinucleotide Features — create_dinuc_features","text":"function creates IQSeqFeature objects possible dinucleotides.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create Dinucleotide Features — create_dinuc_features","text":"","code":"create_dinuc_features( traj_model, quantile = 0.99, size = traj_model@params$peaks_size, dinucleotides = c(\"AA\", \"AC\", \"AG\", \"AT\", \"CA\", \"CC\", \"CG\", \"CT\", \"GA\", \"GC\", \"GG\", \"GT\", \"TA\", \"TC\", \"TG\", \"TT\"), feat_names = dinucleotides )"},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create Dinucleotide Features — create_dinuc_features","text":"traj_model trajectory model object. quantile quantile use normalization (default 0.99). size size sequences use feature computation. dinucleotides vector dinucleotides create features (default possible dinucleotides). feat_names vector feature names use dinucleotide (default dinucleotide ).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create Dinucleotide Features — create_dinuc_features","text":"list IQSeqFeature objects, one dinucleotide.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Create an IQmodel from a trajectory model — create_iq_model","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"function creates IQmodel object trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"","code":"create_iq_model(traj_model, func = \"logSumExp\")"},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"traj_model trajectory model object func function use computing energies (default \"logSumExp\")","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"IQmodel object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":null,"dir":"Reference","previous_headings":"","what":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"Create IQSeqFeature trajectory model","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"","code":"create_iq_seq_feature(traj_model, feature_name, compute_func, quantile = 0.99)"},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"traj_model trajectory model object. feature_name name feature create. compute_func function compute feature. quantile quantile use normalization (default 0.99).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"IQSeqFeature object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":null,"dir":"Reference","previous_headings":"","what":"Create Logistic Features — create_logist_features","title":"Create Logistic Features — create_logist_features","text":"function takes matrix dataframe features, removes columns entirely NA, applies three logistic transformations column. transformed set features appended suffixes \"_early\", \"_linear\", \"_late\" differentiate . resulting matrix combines transformed features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create Logistic Features — create_logist_features","text":"","code":"create_logist_features(features)"},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create Logistic Features — create_logist_features","text":"features matrix dataframe column feature transformed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create Logistic Features — create_logist_features","text":"matrix containing transformed features columns named according transformation applied (.e., \"_early\", \"_linear\", \"_late\").","code":""},{"path":[]},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Create Logistic Features — create_logist_features","text":"","code":"# Create a sample matrix sample_features <- matrix(rnorm(100), ncol = 5) transformed_features <- create_logist_features(sample_features) head(transformed_features) #> V1_high-energy V1_higher-energy V1_low-energy V1_sigmoid V2_high-energy #> [1,] 0.006669470 2.238974e-05 -0.336385193 0.0016587290 0.016886267 #> [2,] 0.015194518 1.172040e-04 0.063742721 0.0086228195 0.016027914 #> [3,] 0.003976017 7.935848e-06 -0.543645366 0.0005885478 0.006994522 #> [4,] 0.013348714 9.029132e-05 -0.001392821 0.0066559143 0.019299783 #> [5,] 0.018220130 1.690384e-04 0.154149501 0.0123893993 0.034055131 #> [6,] 0.023646487 2.862674e-04 0.279466150 0.0208039625 0.012753208 #> V2_higher-energy V2_low-energy V2_sigmoid V3_high-energy V3_higher-energy #> [1,] 1.450009e-04 0.11650712 0.010646236 0.013859432 9.738224e-05 #> [2,] 1.305223e-04 0.09048961 0.009593319 0.009742111 4.791892e-05 #> [3,] 2.463337e-05 -0.31504444 0.001824645 0.013057593 8.637080e-05 #> [4,] 1.898699e-04 0.18238058 0.013895138 0.011813424 7.060768e-05 #> [5,] 5.999598e-04 0.43991567 0.042635577 0.016691842 1.416535e-04 #> [6,] 8.236589e-05 -0.02435646 0.006075209 0.052051866 1.427046e-03 #> V3_low-energy V3_sigmoid V4_high-energy V4_higher-energy V4_low-energy #> [1,] 0.01750692 0.007174904 0.022796605 2.658336e-04 0.26230905 #> [2,] -0.15843484 0.003543384 0.009617056 4.669075e-05 -0.16475654 #> [3,] -0.01249058 0.006368738 0.023247253 2.765722e-04 0.27150521 #> [4,] -0.06278815 0.005212428 0.011846275 7.100326e-05 -0.06139678 #> [5,] 0.11074320 0.010403007 0.007451298 2.796854e-05 -0.28617110 #> [6,] 0.59724554 0.095817799 0.008238755 3.421931e-05 -0.23923513 #> V4_sigmoid V5_high-energy V5_higher-energy V5_low-energy V5_sigmoid #> [1,] 0.019347516 0.03466020 6.218445e-04 0.4471128 0.044122637 #> [2,] 0.003452878 0.02546449 3.325813e-04 0.3136587 0.024089208 #> [3,] 0.020113459 0.01940534 1.919727e-04 0.1850414 0.014046877 #> [4,] 0.005241478 0.01763976 1.583492e-04 0.1381667 0.011614992 #> [5,] 0.002071180 0.01019263 5.247696e-05 -0.1362124 0.003879132 #> [6,] 0.002532909 0.02320802 2.756287e-04 0.2707136 0.020046214"},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Distill trajectory model — distill_traj_model","title":"Distill trajectory model — distill_traj_model","text":"function takes trajectory model reduces number motifs using 'prego'.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Distill trajectory model — distill_traj_model","text":"","code":"distill_traj_model( traj_model, max_motif_num, min_diff = 0.1, intra_cor_thresh = 0.6, use_non_linear = TRUE, parallel = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Distill trajectory model — distill_traj_model","text":"traj_model trajectory model object max_motif_num maximum number motifs select min_diff minimum difference scores use distillation intra_cor_thresh threshold average intra-cluster correlation split clusters. NULL, splitting done. use_non_linear Whether use non-linear features. FALSE, glm model without non-linear features used. parallel Whether use parallel processing","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Distill trajectory model — distill_traj_model","text":"distilled trajectory model object max_motif_num models + additional features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":null,"dir":"Reference","previous_headings":"","what":"Distills multiple trajectory models — distill_traj_model_multi","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"function takes list trajectory models performs distillation process create single set motifs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"","code":"distill_traj_model_multi( traj_models, max_motif_num = NULL, min_diff = 0.1, intra_cor_thresh = 0.6, distill_single = FALSE, use_all_motifs = FALSE, bits_threshold = 1.75, r2_threshold = NULL, seed = 60427, parallel = TRUE, cluster_report_dir = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"traj_models list trajectory models. max_motif_num maximum number motifs identified. NULL - number set maximum number motifs input models. min_diff minimum difference scores use distillation intra_cor_thresh threshold average intra-cluster correlation split clusters. NULL, splitting done. distill_single Logical indicating whether distill clusters single motif. use_all_motifs Logical indicating whether use motifs resulting models. FALSE, motifs clusters motif original model used. bits_threshold minimal sum bits feature included model. r2_threshold minimal R^2 feature included model. seed random seed reproducibility. Defaults 60427. parallel Whether use parallel processing cluster_report_dir directory store cluster reports. NULL, png created cluster.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"distilled trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Filter multi-trajectory model — filter_multi_traj_model","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"Filter multi-trajectory model","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"","code":"filter_multi_traj_model( multi_traj, r2_threshold = 0.0005, bits_threshold = 1.75, sample_frac = 0.1, filter_full = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"multi_traj TrajectoryModelMulti model object. r2_threshold minimal R^2 feature included model. bits_threshold minimal sum bits feature included model. sample_frac fraction samples use computing r2 without model. NULL, samples used. filter_full logical value indicating whether filter full models (@models_full) reduced models (@models). Default TRUE.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"filtered TrajectoryModelMulti object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Filter a trajectory model using punctuated regression. — filter_traj_model","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"Run regression without feature filter features improve model r2_threshold.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"","code":"filter_traj_model( traj_model, r2_threshold = 0.0005, bits_threshold = 1.75, sample_frac = 0.1, seed = 60427 )"},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"traj_model instance TrajectoryModel. r2_threshold minimal R^2 feature included model. bits_threshold minimal sum bits feature included model. sample_frac fraction samples use computing r2 without model. NULL, samples used. seed seed use reproducibility sampling data.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"instance TrajectoryModel filtered model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":null,"dir":"Reference","previous_headings":"","what":"Filter trajectory model intervals — filter_traj_model_intervals","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"function filters trajectory model selecting specific intervals based indices.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"","code":"filter_traj_model_intervals(traj_model, idxs)"},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"traj_model trajectory model object filter. idxs indices intervals select.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"filtered trajectory model object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":null,"dir":"Reference","previous_headings":"","what":"Homogenize a list of PSSM models — homogenize_pssm_models","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"function adjusts PSSM model input list GC content higher content. model's GC content higher content, function applies reverse complement model using prego pssm_rc function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"","code":"homogenize_pssm_models(models)"},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"models list PSSM models. model list pssm element, data frame containing columns '', 'C', 'G', 'T', 'pos'.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"list homogenized PSSM models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"","code":"# Create simulated data pssm1 <- data.frame( pos = 1:4, A = c(0.1, 0.2, 0.3, 0.4), C = c(0.3, 0.3, 0.2, 0.1), G = c(0.3, 0.3, 0.3, 0.3), T = c(0.3, 0.2, 0.2, 0.2) ) pssm2 <- data.frame( pos = 1:4, A = c(0.1, 0.2, 0.3, 0.4), C = c(0.1, 0.1, 0.1, 0.1), G = c(0.2, 0.2, 0.2, 0.2), T = c(0.6, 0.5, 0.4, 0.3) ) models <- list(list(pssm = pssm1), list(pssm = pssm2)) # Homogenize the models homogenized_models <- homogenize_pssm_models(models)"},{"path":"https://tanaylab.github.io/iceqream/reference/iceqream-package.html","id":null,"dir":"Reference","previous_headings":"","what":"iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs — iceqream-package","title":"iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs — iceqream-package","text":"iceqream package regressing accessibility sequences using physical models TF binding, models TF effective concentrations latent variables activate repress regulatory elements nonlinear fashion, possible contribution pairwise interactions synergistic chromosomal domain effects. iceqream allows inference synthesis models explaining accessibility dynamics entire single cell manifold.","code":""},{"path":[]},{"path":"https://tanaylab.github.io/iceqream/reference/iceqream-package.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs — iceqream-package","text":"Maintainer: Aviezer Lifshitz aviezer.lifshitz@weizmann.ac.il Authors: Akhiad Bercovich akhiad.bercovich@weizmann.ac.il Amos Tanay amos.tanay@weizmann.ac.il","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":null,"dir":"Reference","previous_headings":"","what":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"function infers motif energies set peaks using pre-trained trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"","code":"infer_trajectory_motifs( traj_model, peak_intervals, atac_scores = NULL, bin_start = 1, bin_end = ncol(atac_scores), additional_features = NULL, test_energies = NULL, diff_score = NULL, sequences = NULL, norm_sequences = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"traj_model trajectory model object, returned regress_trajectory_motifs peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores Optional. numeric matrix, representing mean ATAC score per bin per peak. Rows: peaks, columns: bins. default iceqream regress last column minus first column. want regress something else, please either set bin_start bin_end, provide atac_diff instead. normalize_bins TRUE, scores normalized 0 1. bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0. test_energies already computed matrix motif energies test peaks. advanced option provide energies directly. diff_score difference ATAC-seq scores end start peak. provided, function ignore atac_scores parameter. sequences vector strings containing sequences peaks. provided, sequences extracted genome using peak intervals. norm_sequences vector strings containing sequences normalization intervals. provided, sequences extracted genome using normalization intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"TrajectoryModel object contains original ('train') peaks newly inferred ('test') peaks. field @type indicates whether peak 'train' 'test' peak. R^2 statistics computed object@params$stats.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":null,"dir":"Reference","previous_headings":"","what":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"function infers trajectory motifs individual trajectory multi-trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"","code":"infer_trajectory_motifs_multi( traj_multi, peak_intervals, atac_scores = NULL, bin_start = 1, bin_end = purrr::map(atac_scores, ncol), additional_features = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"traj_multi TrajectoryModelMulti object. peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores list data frames ATAC-seq scores individual trajectory. bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) additional_features list data frames additional features individual trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"TrajectoryModelMulti object result infer_trajectory_motifs individual trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":"Initialize IQFeatureGroup object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":"","code":"# S4 method for IQFeatureGroup initialize(.Object, features, compute_func, size)"},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":".Object IQFeatureGroup object initialize. features list IQSeqFeature objects. compute_func function compute features group . size size sequences use feature computation.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":"initialized IQFeatureGroup object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":"Initialize IQSeqFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":"","code":"# S4 method for IQSeqFeature initialize( .Object, name, coefs, compute_func, min_value, max_value, quantile = 0.99, size )"},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":".Object IQSeqFeature object initialize. name name feature. coefs coefficients feature. compute_func function compute feature. min_value minimum value normalization. max_value maximum value normalization. quantile quantile use normalization. size size sequences use feature computation.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":"initialized IQSeqFeature object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute the IQ feature response — iq_feature.compute_response","title":"Compute the IQ feature response — iq_feature.compute_response","text":"function computes IQ feature response given set values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute the IQ feature response — iq_feature.compute_response","text":"","code":"iq_feature.compute_response(iq, values)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute the IQ feature response — iq_feature.compute_response","text":"iq IQFeature object. values vector values compute IQ feature.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute the IQ feature response — iq_feature.compute_response","text":"vector computed IQ feature responses.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute features for an IQFeatureGroup — iq_feature_group.compute","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"function computes features group given set sequences intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"","code":"iq_feature_group.compute(group, sequences = NULL, intervals = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"group IQFeatureGroup object. sequences vector DNA sequences. Optional intervals provided. intervals data frame genomic intervals columns 'chrom', 'start', 'end'. Optional sequences provided.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"matrix computed normalized feature values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"function computes features given list IQFeature IQFeatureGroup objects, using either provided sequences intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"","code":"iq_feature_list.compute(feature_list, sequences = NULL, intervals = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"feature_list list IQFeature /IQFeatureGroup objects. sequences vector DNA sequences. Optional intervals provided. intervals data frame genomic intervals columns 'chrom', 'start', 'end'. Optional sequences provided.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"data frame containing computed features objects feature_list.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute IQ feature list response — iq_feature_list.compute_response","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"function computes IQ response given list IQ features matrix values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"","code":"iq_feature_list.compute_response(iq_list, mat)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"iq_list list IQFeature objects mat input matrix","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"matrix containing computed IQ feature responses.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":null,"dir":"Reference","previous_headings":"","what":"Perform IQ regression on peak intervals — iq_regression","title":"Perform IQ regression on peak intervals — iq_regression","text":"Perform IQ regression peak intervals using provided ATAC-seq scores, ATAC-seq score differences, normalized intervals, motif energies, additional features, dividing intervals training testing sets.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Perform IQ regression on peak intervals — iq_regression","text":"","code":"iq_regression( peak_intervals, atac_scores = NULL, atac_diff = NULL, normalize_bins = TRUE, norm_intervals = NULL, motif_energies = NULL, additional_features = NULL, max_motif_num = 30, traj_prego = NULL, peaks_size = 300, bin_start = 1, bin_end = NULL, seed = 60427, frac_train = 0.8, filter_model = TRUE, ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Perform IQ regression on peak intervals — iq_regression","text":"peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores Optional. numeric matrix, representing mean ATAC score per bin per peak. Rows: peaks, columns: bins. default iceqream regress last column minus first column. want regress something else, please either set bin_start bin_end, provide atac_diff instead. normalize_bins TRUE, scores normalized 0 1. atac_diff Optional. numeric vector representing differential accessibility start end trajectory. Either atac_scores must provided. normalize_bins whether normalize ATAC scores 0 1. Default: TRUE norm_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peaks used energy normalization. NULL, function use peak_intervals normalization. motif_energies numeric matrix, representing energy motif peak. NULL, function use pssm_db calculate motif energies. Note might take . additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0. max_motif_num maximum number motifs consider. Default: 50 traj_prego output learn_traj_prego. provided, additional prego models inferred. peaks_size size peaks extract sequences . Default: 300bp bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) seed random seed reproducibility. frac_train numeric value indicating fraction intervals use training (default 0.8). filter_model logical value indicating whether filter model (default TRUE). ... Arguments passed regress_trajectory_motifs n_clust_factor factor divide number keep clustering. e.g. n_clust_factor > 1 number motifs keep reduced factor n_clust_factor. Default: 1 norm_motif_energies numeric matrix, representing normalized energy motif interval norm_intervals. NULL, function use pssm_db calculate motif energies. Note might take . pssm_db data frame PSSMs ('', 'C', 'G' 'T' columns), additional column 'motif' containing motif name. motifs motif_energies (column names) present 'motif' column. Default: motifs prego package. min_tss_distance distance Transcription Start Site (TSS) classify peak enhancer. Default: 5000. NULL, filtering performed - use option peaks already filtered. Note order filter peaks close TSS, current misha genome must intervals set called intervs.global.tss. normalize_energies whether normalize motif energies. Set FALSE motif energies already normalized. min_initial_energy_cor minimal correlation motif normalized energy ATAC difference. energy_norm_quantile quantile energy used normalization. Default: 1 norm_energy_max maximum value normalized energy. Default: 10 n_prego_motifs number prego motifs (de-novo motifs) consider. min_diff minimal ATAC difference peak participate initial prego motif inference distillation step (distill_on_diff TRUE). distill_on_diff whether distill motifs based differential accessibility. FALSE, peaks used distillation, TRUE - peaks differential accessibility >= min_diff used. prego_sample_fraction Fraction peaks sample prego motif inference. smaller number faster might lead -fitting. Default: 0.1 feature_selection_beta beta parameter used feature selection. filter_using_r2 whether filter features using R^2. r2_threshold minimal R^2 feature included model. parallel whether use parallel processing glmnet. spat_num_bins number spatial bins use. spat_bin_size size spatial bin. kmer_sequence_length length kmer sequence use kmer screening. default full sequence used. alpha elasticnet mixing parameter, \\(0\\le\\alpha\\le 1\\). penalty defined $$(1-\\alpha)/2||\\beta||_2^2+\\alpha||\\beta||_1.$$ alpha=1 lasso penalty, alpha=0 ridge penalty. lambda user supplied lambda sequence. Typical usage program compute lambda sequence based nlambda lambda.min.ratio. Supplying value lambda overrides . WARNING: use care. Avoid supplying single value lambda (predictions CV use predict() instead). Supply instead decreasing sequence lambda values. glmnet relies warms starts speed, often faster fit whole path compute single fit.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Perform IQ regression on peak intervals — iq_regression","text":"instance TrajectoryModel containing model information results: model: final General Linear Model (GLM) object. motif_models: Named List, PSSM spatial models motif cluster. normalized_energies: Numeric vector, normalized energies motif peak. additional_features: data frame additional features. diff_score: Numeric, normalized score differential accessibility 'bin_start' 'bin_end'. predicted_diff_score: Numeric, predicted differential accessibility score 'bin_start' 'bin_end'. initial_prego_models: List, inferred prego models initial step algorithm. peak_intervals: data frame, indicating genomic positions ('chrom', 'start', 'end') peak used training.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute the IQSeqFeature — iq_seq_feature.compute","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"function computes IQ sequence feature given set sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"","code":"iq_seq_feature.compute(iq, sequences)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"iq IQSeqFeature object. sequences vector DNA sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"vector computed normalized IQ sequence feature values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/learn_traj_prego.html","id":null,"dir":"Reference","previous_headings":"","what":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","title":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","text":"Learn 'prego' models ATAC difference trajectory","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/learn_traj_prego.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","text":"","code":"learn_traj_prego( peak_intervals, atac_diff, n_motifs, min_diff = 0.2, energy_norm_quantile = 1, norm_energy_max = 10, min_energy = -7, sample_fraction = 0.1, sequences = NULL, seed = NULL, peaks_size = 300, additional_features = NULL, norm_intervals = peak_intervals, ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/learn_traj_prego.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","text":"peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_diff numeric vector, indicating ATAC difference peak n_motifs Number motifs learn. least 2 min_diff Minimum ATAC difference include peak training energy_norm_quantile quantile energy used normalization. Default: 1 norm_energy_max maximum value normalized energy. Default: 10 min_energy Minimum energy value normalization (default: -7) sample_fraction Fraction peaks sample training. Default: 0.1 sequences character vector sequences learn motifs . NULL, sequences peaks used. seed Random seed peaks_size size peaks extract sequences . Default: 300bp additional_features matrix additional features filter learning motifs (e.g. CpG content, dinucleotide content, etc.) norm_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peaks used energy normalization. NULL, function use peak_intervals normalization. ... Additional arguments passed prego::regress_pwm","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":null,"dir":"Reference","previous_headings":"","what":"Logistic Function — logist","title":"Logistic Function — logist","text":"Calculates logistic function value given parameters input.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Logistic Function — logist","text":"","code":"logist(x, x_0 = 0, L = 1, k = 1)"},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Logistic Function — logist","text":"x Numeric vector, values logistic function evaluated. x_0 Numeric, x-value sigmoid's midpoint. Default 0. L Numeric, maximum value sigmoid. Default 1. k Numeric, steepness slope sigmoid. Default 1.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Logistic Function — logist","text":"numeric vector logistic function values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Logistic Function — logist","text":"","code":"x_vals <- seq(0, 10, by = 0.1) # Calculate the features for each scenario features_low_energy <- logist(x_vals, x_0 = 0, L = 2, k = 0.5) - 1 features_high_energy <- logist(x_vals, x_0 = 10, L = 2, k = 0.5) features_sigmoid <- logist(x_vals - 5, x_0 = 0, L = 1, k = 1) features_higher_energy <- logist(x_vals, x_0 = 10, L = 2, k = 1) features_early2 <- logist(x_vals, x_0 = 0, L = 2, k = 1) - 1 # Base plot setup plot(x_vals, features_low_energy * 10, type = \"l\", col = \"blue\", main = \"Variations of the Logistic Function\", xlab = \"x\", ylab = \"y\", ylim = c(0, 10), lwd = 2 ) # Adding other variations lines(x_vals, features_high_energy * 10, col = \"orange\", lwd = 2) lines(x_vals, features_sigmoid * 10, col = \"purple\", lwd = 2) lines(x_vals, features_higher_energy * 10, col = \"brown\", lwd = 2) lines(x_vals, features_early2 * 10, col = \"green\", lwd = 2) lines(x_vals, x_vals, col = \"black\", lwd = 2, lty = 2) legend(\"bottomright\", legend = c(\"Low Energy\", \"High Energy\", \"Sigmoid\", \"Higher Energy\", \"Early 2\", \"Linear\"), col = c(\"blue\", \"orange\", \"purple\", \"brown\", \"green\", \"black\"), lty = 1, lwd = 2 )"},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":null,"dir":"Reference","previous_headings":"","what":"Match trajectory model motif names — match_traj_model_motif_names","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"function matches motif names trajectory model given dataset. used order give 'friendly' names motif models. default dataset \"HOMER\". Note run might slow.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"","code":"match_traj_model_motif_names( traj_model, dataset = prego::all_motif_datasets() %>% filter(dataset == \"HOMER\") )"},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"traj_model trajectory model object. dataset dataset match motif names . Default \"HOMER\" dataset.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"named character vector mapping motif names trajectory model matched motif names dataset.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":null,"dir":"Reference","previous_headings":"","what":"Merge Trajectory Motifs — merge_trajectory_motifs","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"function merges multiple motifs (chosen manually) new motif trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"","code":"merge_trajectory_motifs( traj_model, motifs, new_motif_name, min_diff = 0.1, seed = 60427 )"},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"traj_model trajectory model object. motifs character vector specifying names motifs merged. new_motif_name character string specifying name new merged motif. min_diff numeric value specifying minimum absolute difference ATAC scores motif considered merging process. Default 0.1. seed integer specifying seed random number generation. Default 60427.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"modified trajectory model object merged motif updated attributes.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"function validates trajectory model, checks specified motifs exist model, performs merging process. computes merged motif using distillation motifs partial response, updates model features, returns modified trajectory model object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":null,"dir":"Reference","previous_headings":"","what":"Motif Database — motif_db","title":"Motif Database — motif_db","text":"compilation DNA motifs various sources.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Motif Database — motif_db","text":"","code":"motif_db"},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Motif Database — motif_db","text":"data frame 270340 rows 9 columns: motif Character. name identifier motif. pos Integer. position within motif. Numeric. score adenine position. C Numeric. score cytosine position. G Numeric. score guanine position. T Numeric. score thymine position. dataset Character. source dataset motif. motif_orig Character. name motif without database prefix. cluster Character. SCENIC motifs, cluster motif belongs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Motif Database — motif_db","text":"HOMER: Heinz S, Benner C, Spann N, Bertolino E et al. Simple Combinations Lineage-Determining Transcription Factors Prime cis-Regulatory Elements Required Macrophage B Cell Identities. Mol Cell 2010 May 28;38(4):576-589. PMID: 20513432 JASPAR: Castro-Mondragon JA, Riudavets-Puig R, Rauluseviciute , Berhanu Lemma R, Turchi L, Blanc-Mathieu R, Lucas J, Boddie P, Khan , Manosalva Pérez N, Fornes O, Leung TY, Aguirre , Hammal F, Schmelter D, Baranasic D, Ballester B, Sandelin , Lenhard B, Vandepoele K, Wasserman WW, Parcy F, Mathelier JASPAR 2022: 9th release open-access database transcription factor binding profiles Nucleic Acids Res. 2022 Jan 7;50(D1):D165-D173.; doi: 10.1093/nar/gkab1113 JOLMA: Jolma, ., Yin, Y., Nitta, K. et al. DNA-dependent formation transcription factor pairs alters binding specificity. Nature 534, S15–S16 (2016). https://doi.org/10.1038/nature18912 HOCOMOCO: Ivan V. Kulakovskiy; Ilya E. Vorontsov; Ivan S. Yevshin; Ruslan N. Sharipov; Alla D. Fedorova; Eugene . Rumynskiy; Yulia . Medvedeva; Arturo Magana-Mora; Vladimir B. Bajic; Dmitry . Papatsenko; Fedor . Kolpakov; Vsevolod J. Makeev: HOCOMOCO: towards complete collection transcription factor binding models human mouse via large-scale ChIP-Seq analysis. Nucl. Acids Res., Database issue, gkx1106 (11 November 2017). https://doi.org/10.1093/nar/gkx1106 SCENIC: Aibar, S., González-Blas, C., Moerman, T. et al. SCENIC: single-cell regulatory network inference clustering. Nat Methods 14, 1083–1086 (2017). https://doi.org/10.1038/nmeth.4463 SCENIC+: Bravo González-Blas, C., De Winter, S., Hulselmans, G. et al. SCENIC+: single-cell multiomic inference enhancers gene regulatory networks. Nat Methods 20, 1355–1367 (2023). https://doi.org/10.1038/s41592-023-01938-4","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Motif Database — motif_db","text":"","code":"data(motif_db) head(motif_db) #> motif pos A C G #> 1 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 1 0.1633990 0.163399 96.895421 #> 2 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 2 9.9673210 13.888901 72.712407 #> 3 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 3 0.1633990 98.856209 0.163399 #> 4 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 4 65.5228541 14.542490 15.849689 #> 5 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 5 0.1633990 97.549021 2.124180 #> 6 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 6 0.1633989 9.313725 9.967315 #> T dataset motif_orig cluster #> 1 2.7777806 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 2 3.4313703 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 3 0.8169931 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 4 4.0849671 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 5 0.1633990 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 6 80.5555605 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1"},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":null,"dir":"Reference","previous_headings":"","what":"SCENIC Motif Clusters — motif_db_scenic_clusters","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"data frame containing representative motif SCENIC cluster.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"","code":"motif_db_scenic_clusters"},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"motif_db filtered include SCENIC motifs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"https://doi.org/10.1038/nmeth.4463","code":""},{"path":[]},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"","code":"data(motif_db_scenic_clusters) head(motif_db_scenic_clusters) #> motif pos A C G #> 1 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 1 0.1633990 0.163399 96.895421 #> 2 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 2 9.9673210 13.888901 72.712407 #> 3 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 3 0.1633990 98.856209 0.163399 #> 4 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 4 65.5228541 14.542490 15.849689 #> 5 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 5 0.1633990 97.549021 2.124180 #> 6 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 6 0.1633989 9.313725 9.967315 #> T dataset motif_orig cluster #> 1 2.7777806 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 2 3.4313703 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 3 0.8169931 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 4 4.0849671 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 5 0.1633990 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 6 80.5555605 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1"},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize Values to the 0-1 Range — norm01","title":"Normalize Values to the 0-1 Range — norm01","text":"function scales translates values input vector x minimum value becomes 0 maximum value becomes 1. normalization done first subtracting minimum value element (translation) dividing element new maximum value (scaling).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize Values to the 0-1 Range — norm01","text":"","code":"norm01(x)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize Values to the 0-1 Range — norm01","text":"x numeric vector needs normalized 0-1 range. x matrix, normalization applied column-wise.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize Values to the 0-1 Range — norm01","text":"numeric vector values normalized 0-1 range. x matrix, function returns matrix columns normalized 0-1 range.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize Values to the 0-1 Range — norm01","text":"","code":"# Generate random values x <- rnorm(100) range(x) #> [1] -1.900061 2.564408 normed_x <- norm01(x) range(normed_x) # This should show values between 0 and 1 #> [1] 0 1"},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize a vector to a specified quantile — norm0q","title":"Normalize a vector to a specified quantile — norm0q","text":"function takes vector x normalizes specified quantile. normalization done subtracting minimum value x dividing result specified quantile x. Values greater 1 capped 1.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize a vector to a specified quantile — norm0q","text":"","code":"norm0q(x, quant = 0.99)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize a vector to a specified quantile — norm0q","text":"x numeric vector normalized quant quantile normalize (default 0.99)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize a vector to a specified quantile — norm0q","text":"normalized vector","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize a vector to a specified quantile — norm0q","text":"","code":"x <- rnorm(100) normed_x <- norm0q(x) range(normed_x) # This should show values between 0 and 1 #> [1] 0 1"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize Energy Values of a Vector — norm_energy","title":"Normalize Energy Values of a Vector — norm_energy","text":"function normalizes energy values given vector. normalization process involves transforming energy values using exponential function, followed logarithm base 2. function scales values lie user-specified minimum energy q-th quantile initial energy values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize Energy Values of a Vector — norm_energy","text":"","code":"norm_energy(x, min_energy = -7, q = 1)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize Energy Values of a Vector — norm_energy","text":"x numeric vector containing energy values normalized. min_energy numeric value representing minimum energy value normalization. Default set -7. q numeric value 0 1, representing quantile energy values used maximum normalization. Default set 1 (max).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize Energy Values of a Vector — norm_energy","text":"numeric vector normalized energy values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize Energy Values of a Vector — norm_energy","text":"","code":"# Generate random energy values x <- runif(n = 100, min = -11, max = 0) # Normalize the energy values norm_energy(x) #> [1] 0.0000000 1.7510064 0.0000000 2.1999360 5.0324659 4.7046640 5.3820270 #> [8] 0.0000000 0.5785698 5.6452978 0.0000000 3.4704537 2.9982590 4.9237030 #> [15] 6.8817897 0.0000000 6.7936218 1.6807474 0.0000000 0.0000000 0.0000000 #> [22] 1.0811420 0.0000000 1.3845202 2.6943816 1.1094402 0.0000000 1.9633541 #> [29] 1.7582626 0.0000000 0.0000000 2.1334769 5.3759993 3.0002508 0.0000000 #> [36] 0.0000000 0.0000000 0.0000000 0.5809605 0.0000000 3.1763567 0.1118413 #> [43] 1.4658960 0.0000000 6.1583792 1.7289254 0.0000000 0.0000000 7.0000000 #> [50] 0.0000000 0.0000000 3.7368619 1.8432438 0.0000000 5.9695994 0.0000000 #> [57] 1.5632755 0.0000000 3.1969100 4.8476089 4.9428020 4.1457761 0.0000000 #> [64] 4.0182657 5.4651457 0.9182832 0.0000000 6.0003541 1.1718340 0.0000000 #> [71] 5.6358062 3.5998753 0.0000000 0.0000000 0.0000000 0.0000000 0.0257006 #> [78] 0.0000000 4.1415158 6.4389581 0.0000000 0.0000000 6.9726246 0.0000000 #> [85] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 3.1374177 6.5651625 #> [92] 2.0075307 0.0000000 0.0000000 0.0000000 1.3728656 0.0000000 5.4883894 #> [99] 3.8409082 0.0000000"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize Energy Matrix — norm_energy_matrix","title":"Normalize Energy Matrix — norm_energy_matrix","text":"function normalizes energy matrix applying logarithmic transformation scaling.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize Energy Matrix — norm_energy_matrix","text":"","code":"norm_energy_matrix(x, dataset_x, min_energy = -7, q = 1, norm_energy_max = 10)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize Energy Matrix — norm_energy_matrix","text":"x input matrix normalized. dataset_x reference dataset matrix used normalization. min_energy minimum energy value assigned normalization. Default -7. q quantile value used calculating maximum value reference dataset. Default 1. norm_energy_max maximum value normalized energy values scaled. Default 10.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize Energy Matrix — norm_energy_matrix","text":"normalized energy matrix dimensions input matrix.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize Energy Matrix — norm_energy_matrix","text":"","code":"# Example usage: data <- matrix(rnorm(100), nrow = 10) normalized_data <- norm_energy_matrix(data, data, min_energy = -7, q = 1, norm_energy_max = 10) #> Warning: no non-missing arguments to max; returning -Inf"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute energies / response for a PBM on given sequences — pbm.compute","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"Compute energies / response PBM given sequences","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"","code":"pbm.compute( pbm, sequences, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"pbm PBM object sequences set sequences compute energies. response logical flag indicating whether compute response. Default FALSE. func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"data frame containing computed energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute local PBM scores / response — pbm.compute_local","title":"Compute local PBM scores / response — pbm.compute_local","text":"function computes local energies given PBM set sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute local PBM scores / response — pbm.compute_local","text":"","code":"pbm.compute_local(pbm, sequences, response = FALSE, scaling_q = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute local PBM scores / response — pbm.compute_local","text":"pbm PBM object sequences vector DNA sequences response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute local PBM scores / response — pbm.compute_local","text":"matrix computed local energies","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract PBM scores for genomic intervals — pbm.gextract","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"function extracts PBM scores given PBM genomic intervals optionally computes response.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"","code":"pbm.gextract( pbm, intervals, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"pbm PBM object intervals Genomic intervals extract response Logical, whether compute response (default FALSE) func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"intervals, additional column containing PBM scores / response","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract local PBM scores / response — pbm.gextract_local","title":"Extract local PBM scores / response — pbm.gextract_local","text":"function extracts local PBM scores genomic intervals optionally computes response.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract local PBM scores / response — pbm.gextract_local","text":"","code":"pbm.gextract_local(pbm, intervals, response = FALSE, scaling_q = 0.995)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract local PBM scores / response — pbm.gextract_local","text":"pbm PBM object intervals Genomic intervals extract response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract local PBM scores / response — pbm.gextract_local","text":"matrix extracted local energies / response","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize energies for a PBM — pbm.normalize_energies","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"function normalizes energies given PBM.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"","code":"pbm.normalize_energies( pbm, energies, max_energy = pbm@max_energy, min_energy = pbm@min_energy, energy_range = pbm@energy_range, norm_energy_max = 10 )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"pbm PBM object energies vector energy values normalize max_energy maximum energy value (default pbm@max_energy) min_energy minimum energy value (default pbm@min_energy) energy_range range energy values (default pbm@energy_range) norm_energy_max maximum value normalized energy (default 10)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"vector normalized energy values","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize energies locally for a PBM — pbm.normalize_energies_local","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"function performs local normalization energies given PBM.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"","code":"pbm.normalize_energies_local(pbm, energies)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"pbm PBM object energies matrix local energy values normalize","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"matrix locally normalized energy values","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":null,"dir":"Reference","previous_headings":"","what":"Trim a PBM — pbm.trim_pssm","title":"Trim a PBM — pbm.trim_pssm","text":"function trims PBM object removing positions low information content.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Trim a PBM — pbm.trim_pssm","text":"","code":"pbm.trim_pssm(pbm, bits_thresh = 0.1)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Trim a PBM — pbm.trim_pssm","text":"pbm PBM object bits_thresh threshold trimming positions (default 0.1)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Trim a PBM — pbm.trim_pssm","text":"trimmed PBM object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"function computes energies list PBMs given sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"","code":"pbm_list.compute( pbm_list, sequences, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"pbm_list list PBM objects sequences set sequences compute energies. response logical flag indicating whether compute response. Default FALSE. func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"matrix containing computed energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"function extracts local PBM scores sequences optionally computes response list PBMs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"","code":"pbm_list.compute_local(pbm_list, sequences, response = FALSE, scaling_q = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"pbm_list list PBM objects sequences vector DNA sequences response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"list matrices containing extracted local energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"function extracts PBM scores genomic intervals optionally computes response list PBMs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"","code":"pbm_list.gextract( pbm_list, intervals, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"pbm_list list PBM objects intervals Genomic intervals extract response Logical, whether compute response (default FALSE) func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"intervals, additional column containing PBM scores / response PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"function extracts local PBM scores genomic intervals optionally computes response list PBMs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"","code":"pbm_list.gextract_local( pbm_list, intervals, response = FALSE, scaling_q = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"pbm_list list PBM objects intervals Genomic intervals extract response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"list matrices containing extracted local energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"Compute energy list pbm lists (multiple trajectories)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"","code":"pbm_list.multi_traj.compute_energy( multi_traj, sequences, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"multi_traj list PBM lists sequences set sequences compute energies. func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"matrix containing computed energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"Extract energy list pbm lists (multiple trajectories)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"","code":"pbm_list.multi_traj.gextract_energy( multi_traj, intervals, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"multi_traj list PBM lists intervals Genomic intervals extract func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"matrix containing computed energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":null,"dir":"Reference","previous_headings":"","what":"Trim a list of PBMs — pbm_list.trim_pssm","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"Trim list PBMs","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"","code":"pbm_list.trim_pssm(pbm_list, bits_thresh = 0.1)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"pbm_list list PBM objects bits_thresh threshold trimming positions (default 0.1)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"list trimmed PBM objects","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":null,"dir":"Reference","previous_headings":"","what":"Pipe operator — %>%","title":"Pipe operator — %>%","text":"See magrittr::%>% details.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Pipe operator — %>%","text":"","code":"lhs %>% rhs"},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Pipe operator — %>%","text":"lhs value magrittr placeholder. rhs function call using magrittr semantics.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Pipe operator — %>%","text":"result calling rhs(lhs).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot IQ Locus — plot_iq_locus","title":"Plot IQ Locus — plot_iq_locus","text":"function generates plot IQ locus, including DNA sequence, motif responses, ATAC-seq tracks.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot IQ Locus — plot_iq_locus","text":"","code":"plot_iq_locus( interval, pbm_list, atac_tracks, width = 500, ext_width = 200000, T_emax = 8, T_rmax = NULL, motifs = NULL, plot_others = FALSE, bits_threshold = NULL, order_motifs = TRUE, atac_names = atac_tracks, atac_colors = NULL, atac_sizes = NULL, line_thresh = 0.9, title = NULL, score = NULL, predicted_score = NULL, dna = NULL, norm_q = 0.995, tracks_q = NULL, iterator = 20, norm_intervals = gintervals.all(), atac_smooth = 2, ext_atac_smooth = atac_smooth * 5, tn5bias_track = \"tn5bias\", normalize_tn5bias = TRUE, tss_intervals = \"intervs.global.tss\", exon_intervals = \"intervs.global.exon\", annot_track = NULL, annot_track_name = NULL, annot_colors = c(\"#FF9800\", \"#009688\"), annot_track_iterator = 1, annot_track_smooth = 1, annot_intervals = NULL, annot_intervals_color = \"darkgreen\", mark_conservation = FALSE, conservation_threshold = 1.5, scale_cex = 500, dna_height = 0.03, filename = NULL, dev = grDevices::pdf, plot_width = 15, plot_height = 8, base_size = 8, base_family = \"ArialMT\", rasterize = FALSE, raster_device = \"ragg\", ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot IQ Locus — plot_iq_locus","text":"interval genomic interval plot. pbm_list list PBM objects. atac_tracks vector ATAC-seq track names plot. width Width plot bp. ext_width Width top plot bp. T_emax Numeric, threshold maximum energy. T_rmax Numeric, threshold maximum response. motifs list specific motifs plot. plot_others Logical, whether plot motifs pass threshold specific motifs provided. bits_threshold Numeric, threshold trimming PSSMs. order_motifs Logical, whether order motifs maximum response. atac_names Character vector, names ATAC-seq tracks. atac_colors Named vector, colors ATAC-seq tracks. atac_sizes Named vector, line sizes ATAC-seq tracks. line_thresh Numeric, threshold drawing vertical lines. title Character, optional title plot. score Numeric, optional score display plot title. predicted_score Numeric, optional predicted score display plot title. dna Character, DNA sequence plot. NULL, sequence extracted interval. norm_q Numeric, quantile normalization. vector, length atac_names. tracks_q Data frame, pre-computed quantiles tracks. 'type' column 'q' column. iterator Numeric, iterator gextract. norm_intervals Genomic intervals normalization. atac_smooth Numeric, smoothing factor ATAC-seq tracks. ext_atac_smooth Numeric, smoothing factor top plot. tn5bias_track Character, name Tn5 bias track. normalize_tn5bias Logical, whether normalize using TN5 bias track. vector, length atac_names. tss_intervals Character, name TSS intervals track. exon_intervals Character, name exon intervals track. annot_track Character, name annotation track. annot_track_name Character, display name annotation track. annot_colors Named vector, colors annotation track. annot_track_iterator Numeric, iterator annotation track extraction. annot_track_smooth Numeric, smoothing factor annotation track. annot_intervals Genomic intervals annotation (start positions used). annot_intervals_color Color annotation intervals. mark_conservation Logical, whether mark conservation DNA sequence. conservation_threshold Numeric, threshold marking conservation. scale_cex Numeric, scaling factor letter sizes. dna_height Numeric, height row DNA sequence relative entire plot. filename Character, output filename (NULL, plot saved). dev Function, device use plotting. plot_width Numeric, width output plot. plot_height Numeric, height output plot. base_size Numeric, base font size plot. base_family Character, base font family plot. rasterize Logical, whether rasterize certain plot elements better performance. raster_device Character, device use rasterization. ... additional arguments pass plotting function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot IQ Locus — plot_iq_locus","text":"ggplot object containing IQ locus plot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"function plots boxplot ATAC difference (response) energy levels given motif. subtitle=NULL, subtitle set kologorov-smirnov test lowest (0-3) highest (9-10) energy levels.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"","code":"plot_motif_energy_vs_response_boxplot( traj_model, motif, xlab = paste(motif, \"energy\"), ylab = \"ATAC difference\", ylim = c(-0.5, 0.5), fill = \"lightblue1\", title = \"\", subtitle = NULL, outliers = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"traj_model trajectory model object. motif motif plot energy levels . xlab label x-axis (default motif name followed \"energy\"). ylab label y-axis (default \"ATAC difference\"). ylim limits y-axis (default -0.5 0.5). fill fill color boxplot (default \"lightblue1\"). title title plot. subtitle subtitle plot (default kologorov-smirnov test lowest highest energy levels). color subtitle set \"darkred\" p-value less 0.01. outliers Whether plot outliers (default TRUE).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"ggplot object representing boxplot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot motif spatial frequency — plot_motif_spatial_freq","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"function plots spatial frequency given motif across genomic positions.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"","code":"plot_motif_spatial_freq( spatial_freqs, motif, smooth = 10, plot_atac = FALSE, linewidth = 1 )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"spatial_freqs data frame containing spatial frequency motifs /ATAC-seq peaks. Output compute_traj_model_spatial_freq. motif string specifying motif plot. smooth integer specifying window size smoothing frequency values. plot_atac logical indicating whether plot ATAC-seq frequency instead motif frequency. linewidth width line plot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"ggplot object showing spatial frequency given motif.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot multi-trajectory model report — plot_multi_traj_model_report","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"function plots report multi-trajectory model. report includes motifs, spatial models, partial responses trajectory model type \"pr\". type \"boxp\", function plot boxplots energy vs response motif. type \"spat\", function plot spatial distribution motifs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"","code":"plot_multi_traj_model_report( multi_traj, filename = NULL, width = NULL, height = NULL, dev = grDevices::pdf, title = NULL, use_full = FALSE, names_map = NULL, type = \"pr\", ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"multi_traj TrajectoryModelMulti object. filename Optional. name output file. provided, plot displayed screen. width Optional. width output plot inches. height Optional. height output plot inches. dev Optional. graphics device use output. Default 'pdf'. title Optional. title plot. use_full Optional. Whether use models motifs . Default FALSE. names_map named vector map names motifs new names. type Optional. type plot, can \"pr\", \"boxp\" \"spat\". Default \"pr\". ... Additional arguments passed plotting function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"ggplot2 object (invsibly filename provided).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot Partial Response — plot_partial_response","title":"Plot Partial Response — plot_partial_response","text":"function plots partial response given trajectory model motif.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot Partial Response — plot_partial_response","text":"","code":"plot_partial_response( traj_model, motif, ylim = NULL, xlab = \"Energy\", ylab = \"Partial response\", pointsize = 3 )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot Partial Response — plot_partial_response","text":"traj_model trajectory model object. motif motif plot partial response . ylim y-axis limits plot (optional). xlab label x-axis (optional, default \"Energy\"). ylab label y-axis (optional, default \"Partial response\"). pointsize size points scatter plot (optional, default 3).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot Partial Response — plot_partial_response","text":"ggplot object representing partial response plot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"function takes trajectory model plots boxplot observed vs predicted ATAC differences. plot grouped observed ATAC difference, divided n_groups quantiles.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"","code":"plot_prediction_boxplot(traj_model, n_groups = 5)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"traj_model trajectory model object n_groups number groups divide observed ATAC difference ","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"ggplot object representing boxplot","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"Plot scatter plot observed vs predicted ATAC difference","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"","code":"plot_prediction_scatter(traj_model, type = NULL, point_size = 1, alpha = 0.5)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"traj_model Trajectory model object. Please run regress_trajectory_motifs first. type \"train\" \"test\". NULL - \"test\" used available, otherwise \"train\". point_size Size points. alpha Transparency points.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"ggplot2 object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot trajectory model clusters report — plot_traj_model_clusters_report","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"Plot trajectory model clusters report","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"","code":"plot_traj_model_clusters_report(traj_model, dir, k = 10, spatial_freqs = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"traj_model trajectory model object dir directory save report files k Number clusters split heatmap spatial_freqs vector spatial frequencies plot. Use compute_traj_model_spatial_freq compute.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"None. file called heatmap.png heatmap file called motifs_report.pdf motifs report saved directory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot a report of trajectory motifs — plot_traj_model_report","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"Plot report trajectory motifs","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"","code":"plot_traj_model_report( traj_model, filename = NULL, motif_num = NULL, free_coef_axis = TRUE, spatial_freqs = NULL, width = NULL, height = NULL, dev = grDevices::pdf, title = NULL, motif_titles = NULL, sort_motifs = TRUE, names_map = NULL, boxp_ylim = c(-0.5, 0.5), ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"traj_model Trajectory model object. Please run regress_trajectory_motifs first. filename Filename save plot . NULL, plot returned. motif_num Number motifs plot. NULL, motifs plotted. free_coef_axis Whether use free axis coefficient plots. spatial_freqs Pre-computed spatial frequencies plot. Use compute_traj_model_spatial_freq compute. width Width plot. height Height plot. dev Device use saving plot. Default: grDevices::pdf. title Title plot. motif_titles Titles motifs. NULL, motif names used. sort_motifs Whether sort motifs absolute value coefficients / r2 values. names_map named vector map names motifs new names. boxp_ylim ylimits boxplot energy vs response. ... Additional arguments pass device.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"ggplot2 object. filename NULL, plot saved file function return invisible(NULL).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"Plot scatter variable vs ATAC difference","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"","code":"plot_variable_vs_response(traj_model, variable, point_size = 0.5)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"traj_model Trajectory model object. Please run regress_trajectory_motifs first. variable Variable plot. point_size Size points.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"ggplot2 object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Predict method for IQmodel — predict,IQmodel-method","title":"Predict method for IQmodel — predict,IQmodel-method","text":"method makes predictions using IQmodel object new data.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Predict method for IQmodel — predict,IQmodel-method","text":"","code":"# S4 method for IQmodel predict( object, new_data = NULL, intervals = NULL, sequences = NULL, pbm_responses = NULL, iq_responses = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Predict method for IQmodel — predict,IQmodel-method","text":"object IQmodel object new_data Optional data frame matrix new data IQ features intervals Optional genomic intervals sequences Optional DNA sequences pbm_responses Optional pre-computed PBM responses iq_responses Optional pre-computed IQ responses","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Predict method for IQmodel — predict,IQmodel-method","text":"vector normalized rescaled predictions","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"Computes predicted differential accessibility score start end trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"","code":"# S4 method for TrajectoryModel predict(object, peak_intervals, additional_features = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"object instance TrajectoryModel. peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak predict. additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"numeric vector predicted differential accessibility scores.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":null,"dir":"Reference","previous_headings":"","what":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"function performs motif regression ATAC trajectories. can work either ATAC scores trajectory bins directly differential accessibility. basic inputs regression genomic positions peaks, two vectors ATAC scores (atac_scores matrix) differential accessibility (atac_diff), database energies computed genomics positions. Optionally, additional features epigenomic features can provided.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"","code":"regress_trajectory_motifs( peak_intervals, atac_scores = NULL, atac_diff = NULL, normalize_bins = TRUE, norm_intervals = NULL, max_motif_num = 30, n_clust_factor = 1, motif_energies = NULL, norm_motif_energies = NULL, pssm_db = iceqream::motif_db, additional_features = NULL, min_tss_distance = 5000, bin_start = 1, bin_end = NULL, min_initial_energy_cor = 0.05, normalize_energies = TRUE, energy_norm_quantile = 1, norm_energy_max = 10, n_prego_motifs = 0, traj_prego = NULL, min_diff = 0.1, distill_on_diff = FALSE, prego_sample_fraction = 0.1, seed = 60427, feature_selection_beta = 0.003, lambda = 0.00001, alpha = 1, filter_using_r2 = FALSE, r2_threshold = 0.0005, parallel = TRUE, peaks_size = 500, spat_num_bins = NULL, spat_bin_size = 2, kmer_sequence_length = 300 )"},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores Optional. numeric matrix, representing mean ATAC score per bin per peak. Rows: peaks, columns: bins. default iceqream regress last column minus first column. want regress something else, please either set bin_start bin_end, provide atac_diff instead. normalize_bins TRUE, scores normalized 0 1. atac_diff Optional. numeric vector representing differential accessibility start end trajectory. Either atac_scores must provided. normalize_bins whether normalize ATAC scores 0 1. Default: TRUE norm_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peaks used energy normalization. NULL, function use peak_intervals normalization. max_motif_num maximum number motifs consider. Default: 50 n_clust_factor factor divide number keep clustering. e.g. n_clust_factor > 1 number motifs keep reduced factor n_clust_factor. Default: 1 motif_energies numeric matrix, representing energy motif peak. NULL, function use pssm_db calculate motif energies. Note might take . norm_motif_energies numeric matrix, representing normalized energy motif interval norm_intervals. NULL, function use pssm_db calculate motif energies. Note might take . pssm_db data frame PSSMs ('', 'C', 'G' 'T' columns), additional column 'motif' containing motif name. motifs motif_energies (column names) present 'motif' column. Default: motifs prego package. additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0. min_tss_distance distance Transcription Start Site (TSS) classify peak enhancer. Default: 5000. NULL, filtering performed - use option peaks already filtered. Note order filter peaks close TSS, current misha genome must intervals set called intervs.global.tss. bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) min_initial_energy_cor minimal correlation motif normalized energy ATAC difference. normalize_energies whether normalize motif energies. Set FALSE motif energies already normalized. energy_norm_quantile quantile energy used normalization. Default: 1 norm_energy_max maximum value normalized energy. Default: 10 n_prego_motifs number prego motifs (de-novo motifs) consider. traj_prego output learn_traj_prego. provided, additional prego models inferred. min_diff minimal ATAC difference peak participate initial prego motif inference distillation step (distill_on_diff TRUE). distill_on_diff whether distill motifs based differential accessibility. FALSE, peaks used distillation, TRUE - peaks differential accessibility >= min_diff used. prego_sample_fraction Fraction peaks sample prego motif inference. smaller number faster might lead -fitting. Default: 0.1 seed random seed reproducibility. feature_selection_beta beta parameter used feature selection. lambda user supplied lambda sequence. Typical usage program compute lambda sequence based nlambda lambda.min.ratio. Supplying value lambda overrides . WARNING: use care. Avoid supplying single value lambda (predictions CV use predict() instead). Supply instead decreasing sequence lambda values. glmnet relies warms starts speed, often faster fit whole path compute single fit. alpha elasticnet mixing parameter, \\(0\\le\\alpha\\le 1\\). penalty defined $$(1-\\alpha)/2||\\beta||_2^2+\\alpha||\\beta||_1.$$ alpha=1 lasso penalty, alpha=0 ridge penalty. filter_using_r2 whether filter features using R^2. r2_threshold minimal R^2 feature included model. parallel whether use parallel processing glmnet. peaks_size size peaks extract sequences . Default: 300bp spat_num_bins number spatial bins use. spat_bin_size size spatial bin. kmer_sequence_length length kmer sequence use kmer screening. default full sequence used.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"instance TrajectoryModel containing model information results: model: final General Linear Model (GLM) object. motif_models: Named List, PSSM spatial models motif cluster. normalized_energies: Numeric vector, normalized energies motif peak. additional_features: data frame additional features. diff_score: Numeric, normalized score differential accessibility 'bin_start' 'bin_end'. predicted_diff_score: Numeric, predicted differential accessibility score 'bin_start' 'bin_end'. initial_prego_models: List, inferred prego models initial step algorithm. peak_intervals: data frame, indicating genomic positions ('chrom', 'start', 'end') peak used training.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Relearn Trajectory Model — relearn_traj_model","title":"Relearn Trajectory Model — relearn_traj_model","text":"function relearns trajectory model using glmnet package, without re-inferring motif models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Relearn Trajectory Model — relearn_traj_model","text":"","code":"relearn_traj_model( traj_model, new_energies = FALSE, new_logist = FALSE, lambda = NULL, use_additional_features = TRUE, use_motifs = TRUE, verbose = FALSE )"},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Relearn Trajectory Model — relearn_traj_model","text":"traj_model trajectory model object. new_energies TRUE - recreate energies. Default FALSE. new_logist TRUE - recreate logistic features. Default FALSE. new_energies TRUE, automatically set TRUE. lambda lambda value use relearning. NULL, lambda value trajectory model used. use_additional_features logical value indicating whether use additional features. Default TRUE. use_motifs logical value indicating whether use motif models. Default TRUE. verbose Logical indicating whether display additional information.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Relearn Trajectory Model — relearn_traj_model","text":"updated trajectory model object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":null,"dir":"Reference","previous_headings":"","what":"Remove motif models from trajectory model — remove_motif_models_from_traj","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"function removes specified motif models given trajectory model. updates model, motif models, predicted difference score, model features, coefficients, normalized energies, features R^2 trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"","code":"remove_motif_models_from_traj(traj_model, motif_models, verbose = TRUE)"},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"traj_model trajectory model object remove motif models . motif_models character vector specifying names motif models remove. verbose logical value indicating whether display information R^2 removing motif models. Default TRUE.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"updated trajectory model object removing motif models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":null,"dir":"Reference","previous_headings":"","what":"Rename motif models in a trajectory model — rename_motif_models","title":"Rename motif models in a trajectory model — rename_motif_models","text":"function renames motif models trajectory model based provided names_map. names_map named character vector names current names motif models values new names.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rename motif models in a trajectory model — rename_motif_models","text":"","code":"rename_motif_models(traj_model, names_map)"},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rename motif models in a trajectory model — rename_motif_models","text":"traj_model trajectory model object modify. names_map named character vector specifying mapping current motif model names new names. Can generated using match_traj_model_motif_names function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rename motif models in a trajectory model — rename_motif_models","text":"modified trajectory model object renamed motif models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":null,"dir":"Reference","previous_headings":"","what":"Rescale Values Based on Original Scale Factors — rescale","title":"Rescale Values Based on Original Scale Factors — rescale","text":"function applies reverse operation normalization numeric vector x based scale factors derived original vector orig_x. effectively attempts map values x back original scale applying inverse operations scaling translation based minimum maximum values found orig_x. process involves scaling x maximum value (subtracting minimum value) orig_x adding minimum value orig_x element.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rescale Values Based on Original Scale Factors — rescale","text":"","code":"rescale(x, orig_x)"},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rescale Values Based on Original Scale Factors — rescale","text":"x numeric vector needs rescaled original range. orig_x original numeric vector scale factors derived.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rescale Values Based on Original Scale Factors — rescale","text":"numeric vector values rescaled original range based scale factors orig_x.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Rescale Values Based on Original Scale Factors — rescale","text":"","code":"# Generate random values and normalize orig_x <- rnorm(100) normed_x <- norm01(orig_x) # Rescale normalized values back to original range rescaled_x <- rescale(normed_x, orig_x) range(rescaled_x) # This should closely match the range of orig_x #> [1] -2.808011 2.654898 range(orig_x) #> [1] -2.808011 2.654898"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeature-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQFeature — show,IQFeature-method","title":"Show method for IQFeature — show,IQFeature-method","text":"method defines IQFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeature-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQFeature — show,IQFeature-method","text":"","code":"# S4 method for IQFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeature-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQFeature — show,IQFeature-method","text":"object IQFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeatureGroup-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","title":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","text":"method defines IQFeatureGroup object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeatureGroup-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","text":"","code":"# S4 method for IQFeatureGroup show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeatureGroup-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","text":"object IQFeatureGroup object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQSeqFeature-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQSeqFeature — show,IQSeqFeature-method","title":"Show method for IQSeqFeature — show,IQSeqFeature-method","text":"method defines IQSeqFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQSeqFeature-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQSeqFeature — show,IQSeqFeature-method","text":"","code":"# S4 method for IQSeqFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQSeqFeature-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQSeqFeature — show,IQSeqFeature-method","text":"object IQSeqFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQmodel-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQmodel — show,IQmodel-method","title":"Show method for IQmodel — show,IQmodel-method","text":"method defines IQmodel object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQmodel-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQmodel — show,IQmodel-method","text":"","code":"# S4 method for IQmodel show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQmodel-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQmodel — show,IQmodel-method","text":"object IQmodel object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":null,"dir":"Reference","previous_headings":"","what":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"function takes trajectory model splits train test sets.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"","code":"split_traj_model_to_train_test(traj_model)"},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"traj_model trajectory model split","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"list train test sets","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":null,"dir":"Reference","previous_headings":"","what":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"function takes trajectory model object converts additional features list IQ features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"","code":"traj_model_to_iq_feature_list(traj_model)"},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"traj_model trajectory model object convert.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"list IQ features, feature contains feature name corresponding coefficients.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":null,"dir":"Reference","previous_headings":"","what":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"function takes trajectory model converts list PBM objects.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"","code":"traj_model_to_pbm_list( traj_model, func = \"logSumExp\", normalization_intervals = traj_model@normalization_intervals, bits_threshold = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"traj_model trajectory model object func function use computing energies \"logSumExp\" \"max\". Default \"logSumExp\" normalization_intervals normalization intervals use computing energies. Default normalization intervals trajectory model. bits_threshold threshold trimming PSSM (default NULL, trimming)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"list PBM objects","code":""}] +[{"path":"https://tanaylab.github.io/iceqream/LICENSE.html","id":null,"dir":"","previous_headings":"","what":"MIT License","title":"MIT License","text":"Copyright (c) 2022 Weizmann Institute Science Permission hereby granted, free charge, person obtaining copy software associated documentation files (“Software”), deal Software without restriction, including without limitation rights use, copy, modify, merge, publish, distribute, sublicense, /sell copies Software, permit persons Software furnished , subject following conditions: copyright notice permission notice shall included copies substantial portions Software. SOFTWARE PROVIDED “”, WITHOUT WARRANTY KIND, EXPRESS IMPLIED, INCLUDING LIMITED WARRANTIES MERCHANTABILITY, FITNESS PARTICULAR PURPOSE NONINFRINGEMENT. EVENT SHALL AUTHORS COPYRIGHT HOLDERS LIABLE CLAIM, DAMAGES LIABILITY, WHETHER ACTION CONTRACT, TORT OTHERWISE, ARISING , CONNECTION SOFTWARE USE DEALINGS SOFTWARE.","code":""},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"introduction","dir":"Articles","previous_headings":"","what":"Introduction","title":"IceQream","text":"IceQream (Interpretable Computational Engine Quantitative Regression Enhancer ATAC Motifs) package regressing accessibility DNA sequences. models TF effective concentrations latent variables activate repress regulatory elements nonlinear fashion, possible contribution pairwise interactions synergistic chromosomal domain effects. vignette demonstrates use IceQream analyze chromosome accessibility data, specifically focusing mouse gastrulation trajectory Epiblast Early nascent mesoderm. analysis can help identify key regulatory elements transcription factors involved cellular differentiation processes, understand quantitatively contribute observed changes chromatin accessibility.","code":""},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"setup-and-data-preparation","dir":"Articles","previous_headings":"","what":"Setup and Data Preparation","title":"IceQream","text":"First, load necessary packages set environment:","code":"library(iceqream) library(misha) library(misha.ext) #> #> Attaching package: 'misha.ext' #> The following object is masked from 'package:misha': #> #> gtrack.create_dirs options(timeout = 2 * 60 * 60) # allow 2 hours for loading large files"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"creating-a-misha-genome","dir":"Articles","previous_headings":"Setup and Data Preparation","what":"Creating a misha genome","title":"IceQream","text":"start creating misha database mm10 genome. already mm10 misha database can skip part load genome using gsetroot(\"path//mm10\").","code":"gdb.create_genome(\"mm10\") gsetroot(\"mm10\")"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"downloading-example-data","dir":"Articles","previous_headings":"Setup and Data Preparation","what":"Downloading Example Data","title":"IceQream","text":"See minimal instructions use IceQream data. tutorial, use pre-prepared data mouse gastrulation trajectory. download load data: examine structure input data: peak_intervals dataframe contains genomic positions accessibility peaks. atac_scores matrix contains ATAC-seq signal intensities peak across different stages trajectory. additional_features includes extra genomic features peak.","code":"download.file(\"https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation-example.tar.gz\", \"gastrulation-example.tar.gz\") untar(\"gastrulation-example.tar.gz\") peak_intervals <- readr::read_tsv(\"gastrulation-example/peak_intervals.tsv\", show_col_types = FALSE) atac_scores <- readr::read_rds(\"gastrulation-example/atac_scores.rds\") additional_features <- readr::read_rds(\"gastrulation-example/additional_features.rds\") normalization_intervals <- readr::read_tsv(\"gastrulation-example/gastrulation_intervals.tsv\", show_col_types = FALSE) # Peak intervals print(\"Peak Intervals:\") #> [1] \"Peak Intervals:\" head(peak_intervals) #> # A tibble: 6 × 6 #> chrom start end peak_name const tss_dist #> #> 1 chr1 3003620 3003920 1_Xkr4_3004 FALSE 211711 #> 2 chr1 3008880 3009180 1_Xkr4_3009 FALSE 206451 #> 3 chr1 3035780 3036080 1_Xkr4_3036 FALSE 179551 #> 4 chr1 3062880 3063180 1_Xkr4_3063 FALSE 152451 #> 5 chr1 3191760 3192060 1_Xkr4_3192 FALSE 23571 #> 6 chr1 3264000 3264300 1_Xkr4_3264 FALSE -48368 print(paste(\"Number of peaks:\", nrow(peak_intervals))) #> [1] \"Number of peaks: 99291\" # ATAC scores print(\"\\nATAC Scores:\") #> [1] \"\\nATAC Scores:\" head(atac_scores) #> bin1 bin2 bin3 bin4 #> 1_Xkr4_3004 0.004287514 0.005028976 0.04591491 0.02115745 #> 1_Xkr4_3009 0.016835629 0.020535310 0.01645209 0.05152993 #> 1_Xkr4_3036 0.314234571 0.351552061 0.24488575 0.21536988 #> 1_Xkr4_3063 0.302141442 0.368683558 0.14807723 0.09834478 #> 1_Xkr4_3192 0.234917748 0.159842916 0.24823286 0.40749248 #> 1_Xkr4_3264 0.057764122 0.079473969 0.05351386 0.05018866 print(paste(\"Number of peaks:\", nrow(atac_scores))) #> [1] \"Number of peaks: 99291\" print(paste(\"Number of bins:\", ncol(atac_scores))) #> [1] \"Number of bins: 4\" # Additional features print(\"\\nAdditional Features:\") #> [1] \"\\nAdditional Features:\" head(additional_features) #> cg_cont k4me3 k27me3 k27ac prox_bin1_punc_all spatial_ratio #> 1_Xkr4_3004 0.6949901 0 0 0 0.2781718 4.764228 #> 1_Xkr4_3009 0.4440685 0 0 0 0.3025915 7.041941 #> 1_Xkr4_3036 1.0952665 0 0 0 0.2357028 8.936077 #> 1_Xkr4_3063 0.2247980 0 0 0 0.3126778 7.760096 #> 1_Xkr4_3192 0.9602237 0 0 0 0.6481828 5.660977 #> 1_Xkr4_3264 0.9239115 0 0 0 0.3089618 3.679446 #> TT CT GT AT TC CC GC #> 1_Xkr4_3004 2.1875 8.181818 4.482759 2.500000 7.567568 4.615385 4.897959 #> 1_Xkr4_3009 5.0000 8.181818 3.103448 4.642857 6.216216 6.923077 4.285714 #> 1_Xkr4_3036 9.3750 4.090909 6.206897 4.642857 4.594595 2.820513 3.265306 #> 1_Xkr4_3063 4.3750 6.136364 5.517241 6.071429 7.297297 2.820513 2.653061 #> 1_Xkr4_3192 6.8750 6.363636 5.172414 8.571429 5.405405 4.358974 2.653061 #> 1_Xkr4_3264 7.5000 7.500000 4.827586 4.285714 7.297297 4.871795 3.877551 #> AC TG CG GG AG TA CA #> 1_Xkr4_3004 3.103448 6.842105 0.9756098 7.435897 5.555556 1.111111 5.526316 #> 1_Xkr4_3009 7.241379 6.052632 0.4878049 2.051282 4.888889 4.444444 7.105263 #> 1_Xkr4_3036 4.482759 4.736842 1.2195122 6.153846 6.222222 4.814815 6.052632 #> 1_Xkr4_3063 5.172414 6.052632 0.0000000 4.102564 5.555556 4.074074 7.368421 #> 1_Xkr4_3192 4.827586 6.315789 0.9756098 2.820513 3.555556 8.518519 3.947368 #> 1_Xkr4_3264 5.517241 5.789474 1.4634146 2.564103 4.444444 3.703704 6.052632 #> GA AA #> 1_Xkr4_3004 4.594595 2.8125 #> 1_Xkr4_3009 4.594595 2.8125 #> 1_Xkr4_3036 4.594595 4.6875 #> 1_Xkr4_3063 5.135135 7.1875 #> 1_Xkr4_3192 4.054054 6.2500 #> 1_Xkr4_3264 3.783784 3.4375 print(paste(\"Number of peaks:\", nrow(additional_features))) #> [1] \"Number of peaks: 99291\" print(paste(\"Number of features:\", ncol(additional_features))) #> [1] \"Number of features: 22\""},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"computing-motif-energies","dir":"Articles","previous_headings":"","what":"Computing Motif Energies","title":"IceQream","text":"first step IceQream pipeline compute motif energies transcription factor model peak. process computationally intensive, calculates energies 20,000 motifs various databases. tutorial, use pre-computed motif energies: less memory computationally intensive analysis, can use SCENIC motif clusters instead motifs (See Performance Considerations section).","code":"motif_energies <- compute_motif_energies(peak_intervals, motif_db, normalization_intervals = normalization_intervals) download.file(\"https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation_energies.tar.gz\", \"gastrulation_energies.tar.gz\") untar(\"gastrulation_energies.tar.gz\") motif_energies <- readr::read_rds(\"gastrulation_energies.rds\") motif_energies <- motif_energies[peak_intervals$peak_name, ] print(paste(\"Motif energy matrix dimensions:\", paste(dim(motif_energies), collapse = \" x \"))) #> [1] \"Motif energy matrix dimensions: 99291 x 21862\""},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"running-iceqream","dir":"Articles","previous_headings":"","what":"Running IceQream","title":"IceQream","text":"Now ready run IceQream regression: takes ~25 minutes 40 core machine 256GB RAM. examine output: TrajectoryModel object contains components regression model, motif models, predicted accessibility scores.","code":"traj_model <- iq_regression( peak_intervals = peak_intervals, atac_scores = atac_scores, motif_energies = motif_energies, additional_features = additional_features, norm_intervals = normalization_intervals, seed = 60427, frac_train = 0.8, max_motif_num = 30 ) #> ℹ Training on 79432 intervals (80%) and testing on 19859 intervals (20%) #> ℹ Number of peaks: 79432 #> → Extracting sequences... #> ℹ Calculating correlations between 21862 motif energies and ATAC difference... #> ℹ Selected 1558 (out of 21862) features with absolute correlation >= 0.05 #> ℹ Running first round of regression, # of features: 1558 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning: glmnet.fit: algorithm did not converge #> ℹ Taking 743 features with beta >= 0.003 #> ℹ Running second round of regression... #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ℹ Clustering 740 features into 30 clusters... #> ℹ Choosing top 30 features clusters #> ℹ Features left: 740 #> ℹ Learning a model for each motif cluster... #> ℹ Infering energies... #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ✔ Finished running model. Number of non-zero coefficients: 201 (out of 208). R^2: 0.309612868425167 #> → Filtering the model #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ℹ Using 7940 samples for filtering #> ℹ R^2 of the full model: 0.29602387224171 #> ℹ Filtering features with R^2 < 5e-04 and bits < 1.75 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by JASPAR.nub (----TTAGCAT----): 0.0167275374369183. Bits: 7.00354991194335 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M08572 (---T-----------): 0.0026997995326517. Bits: 1.10663727169756 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.predrem__nrMotif1342 (---G-CAAATGG---): 0.00634826224842949. Bits: 7.99024178403719 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M00835 (----GTGT-A-----): 0.0305228554917784. Bits: 4.57075101707182 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.hdpi__CREB1 (----TGAC--A----): 7.75643877909959e-05. Bits: 1.89464022573617 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.homer__ACCATCTGTT_NeuroG2 (-----CAGATGG---): -0.000120197791811605. Bits: 4.59034584610514 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.swissregulon__hs__ID4 (-----GCACCTG---): 0.00278910362030049. Bits: 10.7708040996155 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD (------TAAT-G---): 0.0173484629685431. Bits: 3.82249971740051 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.jaspar__MA1621.1 (---CACCTGC-----): 0.000955852850026528. Bits: 9.97745953946352 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by JOLMA.FIGLA_di_DBD (---ACAGGT------): 0.000527737749653978. Bits: 5.74258158770429 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M01516 (----ATGCA------): 4.75776194436284e-06. Bits: 3.33918513257243 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth (---ACCAAATGTT--): 0.000743126659866977. Bits: 9.24966897852248 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.swissregulon__mm__Gata1 (-----GATA------): 0.0059904574972684. Bits: 3.58604128728144 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL (----CTGACA-----): 0.000589606574210977. Bits: 5.47428832011949 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by HOCOMOCO.SUH_MOUSE.H11MO.0.A (-----TGGGA-----): 0.000956012692981068. Bits: 2.60135226413422 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.jaspar__MA0869.2 (----AAAT--A----): 0.00149994976970297. Bits: 2.43576636244517 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.flyfactorsurvey__HLHm5_FlyReg_FBgn0002631 (------A--------): 0.00010975195439078. Bits: 0.788368839986324 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by HOMER.PQM_1 (----TGATAAG----): 0.00117074463927358. Bits: 5.35487254467996 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A (---GTG-CAGAC---): 0.00219652282477695. Bits: 7.85384961351908 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.cisbp__M02320 (-----GAT-------): 0.00112380163185027. Bits: 3.4817723117682 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C (-------CAGGTG--): 0.00484774757259671. Bits: 7.66340237394876 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by JASPAR.SOX14 (----ACAATG-----): 0.020314669301463. Bits: 6.01846819360433 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr (----CATCAAAG---): 0.0102889730006238. Bits: 5.82383823306701 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.nitta__SoxN_TGAGGT40NTCC_KK_NCGAACAATNN_m1_c2 (----CGTAC------): 0.00015623097637113. Bits: 2.83138146510066 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1 (--AACAGCTG-----): 0.00164317632907796. Bits: 6.33133125285195 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by HOMER.TATA_box_1 (---CTATAAAAG---): -3.49324694661757e-05. Bits: 6.0079726304727 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.predrem__nrMotif1713 (----GTCACA-----): 0.000223555700244238. Bits: 5.74538254268905 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.transfac_public__M00075 (--TCACCCCAC----): -0.00041752947580298. Bits: 3.92211592781422 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_cyt_meth__HMX1_NCAMTTAAN_eDBD_meth_repr (-----AAGTG-----): -0.00057932247059217. Bits: 6.61434403320222 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → R^2 added by SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr (TAATTA-GGATTA): 0.000496812804951952. Bits: 10.8696138190304 #> ℹ Removing the following features with bits < 1.75: \"SCENIC.cisbp__M08572\" and \"SCENIC.flyfactorsurvey__HLHm5_FlyReg_FBgn0002631\" #> ℹ Trying to remove the following features with R^2 < 5e-04: \"SCENIC.hdpi__CREB1\", \"SCENIC.homer__ACCATCTGTT_NeuroG2\", \"SCENIC.cisbp__M01516\", \"SCENIC.flyfactorsurvey__HLHm5_FlyReg_FBgn0002631\", \"SCENIC.nitta__SoxN_TGAGGT40NTCC_KK_NCGAACAATNN_m1_c2\", \"HOMER.TATA_box_1\", \"SCENIC.predrem__nrMotif1713\", \"SCENIC.transfac_public__M00075\", \"SCENIC.taipale_cyt_meth__HMX1_NCAMTTAAN_eDBD_meth_repr\", and \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\" #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning: glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.transfac_public__M00075\" changed the R^2 by -0.000411123637068522 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.homer__ACCATCTGTT_NeuroG2\" changed the R^2 by -6.44393580477853e-05 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Not removing \"HOMER.TATA_box_1\" (changed the R^2 by only 0.000758037995756855). #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.cisbp__M01516\" changed the R^2 by -2.65246572077604e-05 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.hdpi__CREB1\" changed the R^2 by -0.000189532430595718 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.nitta__SoxN_TGAGGT40NTCC_KK_NCGAACAATNN_m1_c2\" changed the R^2 by 0.000190831533410263 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Removing \"SCENIC.predrem__nrMotif1713\" changed the R^2 by 0.000233902642093553 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> → Not removing \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\" (changed the R^2 by only 0.00053681107061454). #> ℹ Removed 2 features with bits < 1.75 #> ℹ Removed 7 features with R^2 < 5e-04 #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning in eval(family$initialize): glmnet.fit: algorithm did not converge #> ✔ After filtering: Number of non-zero coefficients: 166 (out of 172). R^2: 0.304057017984406. Number of models: 21 #> → Infering trajectory motifs on the test set #> ℹ Extracting sequences... #> ℹ Computing motif energies for 19859 intervals #> ✔ Finished IQ regression. #> #> Number of motifs: 21 #> R^2 train: 0.304 #> R^2 test: 0.305 #> #> Run `plot_traj_model_report(traj_model)` to visualize the model features #> Run `plot_prediction_scatter(traj_model)` to visualize the model predictions print(traj_model) #> with 21 motifs and 22 additional features #> #> Slots include: #> • @model: A GLM model object. Number of non-zero coefficients: 166 #> • @motif_models: A named list of motif models. Each element contains PSSM and #> spatial model (21 models: \"JASPAR.nub\", \"SCENIC.predrem__nrMotif1342\", #> \"SCENIC.cisbp__M00835\", \"SCENIC.swissregulon__hs__ID4\", #> \"SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD\", \"SCENIC.jaspar__MA1621.1\", #> \"JOLMA.FIGLA_di_DBD\", \"SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth\", #> \"SCENIC.swissregulon__mm__Gata1\", \"SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL\", #> \"HOCOMOCO.SUH_MOUSE.H11MO.0.A\", \"SCENIC.jaspar__MA0869.2\", \"HOMER.PQM_1\", #> \"SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A\", \"SCENIC.cisbp__M02320\", #> \"SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C\", \"JASPAR.SOX14\", #> \"SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr\", …, #> \"HOMER.TATA_box_1\", and #> \"SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr\") #> • @additional_features: A data frame of additional features (22 features) #> • @coefs: A data frame of coefficients (43 elements) #> • @model_features: A matrix of the model features (logistic functions of the #> motif models energies, dimensions: 99291x172) #> • @normalized_energies: A matrix of normalized energies of the model features #> (dimensions: 99291x21) #> • @type: A vector the length of the number of peaks, indicating whether each #> peak is a training ('train') or a prediction peak ('test') #> • @diff_score: A numeric value representing the difference score the model was #> trained on (99291 elements) #> • @predicted_diff_score: A numeric value representing the predicted difference #> score #> • @initial_prego_models: A list of prego models used in the initial phase of #> the algorithm (0 models) #> • @peak_intervals: A data frame containing the peak intervals (99291 elements) #> • @normalization_intervals: A data frame containing the intervals used for #> energy normalization (129963 elements) #> • @features_r2: A numeric vector of the added R^2 values for each feature (21 #> elements) #> • @params: A list of parameters used for training (including: #> \"energy_norm_quantile\", \"norm_energy_max\", \"min_energy\", \"alpha\", \"lambda\", #> \"peaks_size\", \"spat_num_bins\", \"spat_bin_size\", \"distilled_features\", #> \"n_clust_factor\", \"seed\", \"features_bits\", \"r2_threshold\", \"bits_threshold\", #> and \"stats\") #> #> R^2 train: 0.304 #> R^2 test: 0.305"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"visualizing-results","dir":"Articles","previous_headings":"","what":"Visualizing Results","title":"IceQream","text":"start scatter plot observed vs. predicted accessibility changes: plot shows well model predicts accessibility changes. Points closer diagonal line indicate better predictions. measure accuracy model using coefficient determination (R^2).","code":"plot_prediction_scatter(traj_model)"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"model-report","dir":"Articles","previous_headings":"Visualizing Results","what":"Model report","title":"IceQream","text":"Next, look model report, provides detailed information motifs contributions:","code":"plot_traj_model_report(traj_model, filename = \"model_report.pdf\") knitr::include_graphics(\"model_report.pdf\")"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"interpreting-the-trajectory-model-report","dir":"Articles","previous_headings":"Visualizing Results","what":"Interpreting the trajectory model report","title":"IceQream","text":"model report provides several key pieces information (left right): Motif logos show inferred sequence preferences transcription factor model. Response curves show accessibility changes function binding energy TF. Barplots show coefficient non-linear term every motif model. Spatial model curves show parameters spatial model TF. R² values indicate predictive power TF adds model. Spatial curves show frequencey TF binding site along peaks bottom 10% (blue) top 10% (red) differential accessibility (dAP) distribution. Boxplots show distribution ATAC differences (dAP, y-axis) bins binding energy (x-axis) TF.","code":""},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"renaming-the-motif-models","dir":"Articles","previous_headings":"","what":"Renaming the motif models","title":"IceQream","text":"can rename motif models informative names, either manually using rename_motif_models automatically using match_traj_model_motif_names:","code":"names_map <- match_traj_model_motif_names(traj_model) #> ℹ Matching motif names, note that this might take a while. #> → Matching JASPAR.nub #> → Matched with \"HOMER.Oct4\", PSSM correlation = 0.898696170118534 #> → Matching SCENIC.predrem__nrMotif1342 #> → Matched with \"HOMER.Atoh1\", PSSM correlation = 0.74898042552435 #> → Matching SCENIC.cisbp__M00835 #> → Matched with \"HOMER.Tbx5\", PSSM correlation = 0.904736231501015 #> → Matching SCENIC.swissregulon__hs__ID4 #> → Matched with \"HOMER.E2A_1\", PSSM correlation = 0.867727837996119 #> → Matching SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD #> → Matched with \"HOMER.Isl1\", PSSM correlation = 0.869760207503598 #> → Matching SCENIC.jaspar__MA1621.1 #> → Matched with \"HOMER.E2A_1\", PSSM correlation = 0.918354413557226 #> → Matching JOLMA.FIGLA_di_DBD #> → Matched with \"HOMER.MyoG\", PSSM correlation = 0.721047792856512 #> → Matching SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth #> → Matched with \"HOMER.Atoh1\", PSSM correlation = 0.669100601091648 #> → Matching SCENIC.swissregulon__mm__Gata1 #> → Matched with \"HOMER.GATA3_2\", PSSM correlation = 0.95177409403423 #> → Matching SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL #> → Matched with \"HOMER.Meis1\", PSSM correlation = 0.733098848365572 #> → Matching HOCOMOCO.SUH_MOUSE.H11MO.0.A #> → Matched with \"HOMER.E2F6\", PSSM correlation = 0.657723158470179 #> → Matching SCENIC.jaspar__MA0869.2 #> → Matched with \"HOMER.Pit1\", PSSM correlation = 0.532601141276059 #> → Matching HOMER.PQM_1 #> → Matched with \"HOMER.PQM_1\", PSSM correlation = 0.94889261728701 #> → Matching SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A #> → Matched with \"HOMER.TboxSmad\", PSSM correlation = 0.971715050385645 #> → Matching SCENIC.cisbp__M02320 #> → Matched with \"HOMER.GATA3_2\", PSSM correlation = 0.802823387218573 #> → Matching SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C #> → Matched with \"HOMER.E_box_2\", PSSM correlation = 0.710572263191446 #> → Matching JASPAR.SOX14 #> → Matched with \"HOMER.Tcf3\", PSSM correlation = 0.67164203806063 #> → Matching SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr #> → Matched with \"HOMER.Tcf4\", PSSM correlation = 0.950211584477428 #> → Matching SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1 #> → Matched with \"HOMER.Atoh1\", PSSM correlation = 0.886109683951447 #> → Matching HOMER.TATA_box_1 #> → Matched with \"HOMER.TATA_box\", PSSM correlation = 0.867728627783548 #> → Matching SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr #> → Matched with \"HOMER.Lhx2\", PSSM correlation = 0.525391618049386 names_map #> HOCOMOCO.SUH_MOUSE.H11MO.0.A #> \"E2F6\" #> HOMER.PQM_1 #> \"PQM_1\" #> HOMER.TATA_box_1 #> \"TATA_box\" #> JASPAR.SOX14 #> \"Tcf3\" #> JASPAR.nub #> \"Oct4\" #> JOLMA.FIGLA_di_DBD #> \"MyoG\" #> SCENIC.cisbp__M00835 #> \"Tbx5\" #> SCENIC.cisbp__M02320 #> \"GATA3_2\" #> SCENIC.dbtfbs__mm_MYOG_myocyte_ENCSR000AIW_merged_N1 #> \"Atoh1\" #> SCENIC.hocomoco__SMAD4_MOUSE.H11MO.0.A #> \"TboxSmad\" #> SCENIC.hocomoco__ZIC2_MOUSE.H11MO.0.C #> \"E_box_2\" #> SCENIC.jaspar__MA0869.2 #> \"Pit1\" #> SCENIC.jaspar__MA1621.1 #> \"E2A_1\" #> SCENIC.predrem__nrMotif1342 #> \"Atoh1.2\" #> SCENIC.swissregulon__hs__ID4 #> \"E2A_1.2\" #> SCENIC.swissregulon__mm__Gata1 #> \"GATA3_2.2\" #> SCENIC.taipale_cyt_meth__ESX1_YYAATTAN_eDBD #> \"Isl1\" #> SCENIC.taipale_cyt_meth__TCF7L1_ASATCAAAS_eDBD_meth_repr #> \"Tcf4\" #> SCENIC.taipale_cyt_meth__TFAP4_ANCATATGNT_eDBD_meth #> \"Atoh1.3\" #> SCENIC.taipale_cyt_meth__TGIF2_NTGACAGN_FL #> \"Meis1\" #> SCENIC.taipale_tf_pairs__HOXB2_PITX1_TAATKRNGGATTA_CAP_repr #> \"Lhx2\" traj_model <- rename_motif_models(traj_model, names_map) #> Warning in eval(family$initialize): non-integer #successes in a binomial glm! #> Warning: glmnet.fit: algorithm did not converge"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"exporting-the-model","dir":"Articles","previous_headings":"","what":"Exporting the model","title":"IceQream","text":"can export minimal model representation list PBM order use infer new data: can now use pbm_list.compute pbm_list.gextract infer model new data:","code":"pbm_list <- traj_model_to_pbm_list(traj_model) #> ℹ Computing motif energies for 21 motifs on 129963 normalization intervals pbm_list #> $Oct4 #> a object named \"Oct4\" with 15 positions (`@pssm`) #> Energy normalization max = -22.8997500001511 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Atoh1.2 #> a object named \"Atoh1.2\" with 15 positions (`@pssm`) #> Energy normalization max = -22.7175598349943 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Tbx5 #> a object named \"Tbx5\" with 15 positions (`@pssm`) #> Energy normalization max = -23.7724491326609 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $E2A_1.2 #> a object named \"E2A_1.2\" with 15 positions (`@pssm`) #> Energy normalization max = -21.2037809248507 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Isl1 #> a object named \"Isl1\" with 15 positions (`@pssm`) #> Energy normalization max = -25.5471422344978 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $E2A_1 #> a object named \"E2A_1\" with 15 positions (`@pssm`) #> Energy normalization max = -21.4483677716017 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $MyoG #> a object named \"MyoG\" with 15 positions (`@pssm`) #> Energy normalization max = -23.3601778254574 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Atoh1.3 #> a object named \"Atoh1.3\" with 15 positions (`@pssm`) #> Energy normalization max = -22.1394656075513 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $GATA3_2.2 #> a object named \"GATA3_2.2\" with 15 positions (`@pssm`) #> Energy normalization max = -25.6915278612726 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Meis1 #> a object named \"Meis1\" with 15 positions (`@pssm`) #> Energy normalization max = -24.7345338401995 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $E2F6 #> a object named \"E2F6\" with 15 positions (`@pssm`) #> Energy normalization max = -25.9229999989994 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Pit1 #> a object named \"Pit1\" with 15 positions (`@pssm`) #> Energy normalization max = -26.0310794002464 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $PQM_1 #> a object named \"PQM_1\" with 15 positions (`@pssm`) #> Energy normalization max = -24.6383171142784 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $TboxSmad #> a object named \"TboxSmad\" with 15 positions (`@pssm`) #> Energy normalization max = -22.3027239225011 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $GATA3_2 #> a object named \"GATA3_2\" with 15 positions (`@pssm`) #> Energy normalization max = -26.5521923358056 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $E_box_2 #> a object named \"E_box_2\" with 15 positions (`@pssm`) #> Energy normalization max = -22.6841209042217 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Tcf3 #> a object named \"Tcf3\" with 15 positions (`@pssm`) #> Energy normalization max = -23.5664496893186 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Tcf4 #> a object named \"Tcf4\" with 15 positions (`@pssm`) #> Energy normalization max = -23.5260544042839 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Atoh1 #> a object named \"Atoh1\" with 15 positions (`@pssm`) #> Energy normalization max = -22.55867400696 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $TATA_box #> a object named \"TATA_box\" with 15 positions (`@pssm`) #> Energy normalization max = -23.5020346193338 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) #> #> $Lhx2 #> a object named \"Lhx2\" with 13 positions (`@pssm`) #> Energy normalization max = -14.2673450054441 (`@max_energy`) #> Spatial distribution with 149 spatial factors, from position 1 to 299 (298 bp) #> (`@spat`) #> Includes a model with 4 coefficients (\"high-energy\", \"higher-energy\", #> \"low-energy\", and \"sigmoid\") (`@coefs`) new_intervals <- data.frame( chrom = rep(\"chr1\", 3), start = c(3671720, 4412460, 4493400), end = c(3672020, 4412760, 4493700) ) pbm_list.gextract(pbm_list, new_intervals) #> ℹ Computing energies for 21 PBMs on 3 sequences #> chrom start end Oct4 Atoh1.2 Tbx5 E2A_1.2 Isl1 E2A_1 #> 1 chr1 3671720 3672020 0.000000 0.000000 3.360820 0 3.729907 0 #> 2 chr1 4412460 4412760 2.438457 2.731101 3.491086 0 4.280369 0 #> 3 chr1 4493400 4493700 0.000000 0.000000 2.669436 0 3.894363 0 #> MyoG Atoh1.3 GATA3_2.2 Meis1 E2F6 Pit1 PQM_1 TboxSmad #> 1 2.0862625 0 3.806423 3.154064 4.018626 2.305464 1.271002 0.1399182 #> 2 2.3392323 0 5.520942 6.555252 5.438935 4.640641 5.010974 4.3378987 #> 3 0.5483327 0 4.763735 4.778387 3.007386 4.004477 1.685282 0.4491135 #> GATA3_2 E_box_2 Tcf3 Tcf4 Atoh1 TATA_box Lhx2 #> 1 6.282286 1.2634071 0.000000 0.4460041 4.839001 0.000000 0 #> 2 4.587564 0.4109196 2.038721 6.6088638 0.000000 1.872493 0 #> 3 5.887933 0.9321862 2.091852 0.0000000 0.000000 2.445689 0 # directly compute on sequences seqs <- prego::intervals_to_seq(new_intervals) seqs #> [1] \"TTCCTCTCCTCCCCTCGCGCGCGCTCCCTCCTCCCGCAGCCTCTCCTCCACCAGCTGACTCCGAGGGAGAGGATGACCTCATCCCTTCCCTTCCAGCTGCCGCCGCTCCCACCCCGGCTGGGGAGGGGCGAGAAGGAGGGCCCGGAGGAGGGGCTGGGATTGAGGGGAGCGGCGGGTGGGGGTGCCTGGCTGGCCAGTGCTGGACGCGGAGGGCAACAGCACGGCAATCGGAGGCCCAGTCCAGGCTCGTGGGATAGCGAAGAGCGTTGAGTGGATTTCCTCGAAGCTGGGGGGATGGGA\" #> [2] \"ATCTCTGGAAAGACTTGTGCTGATCTCTCTCTGCCCCTTCCTTGATTCACATCTCAAGGGACCGAGAAGGGAGGGAAAACACCAGTCCAGTATTTCCTATCAGTTCAGCGGGGCAGGAACCGGGAGCTTTTCCACAGGGCTGAGCCTGGCCCTCCACTGAGCAGTGTCTGCATTCCAAGGCTCCAGCCTGTCACCACCCTTCCAATCCCTTTGAAGCTGGGCAAAAGGCCTGCCAACAAGCACCAAACTTGAGAGCTCCTCTGCCAGCCCTGGGAGGGGCTGTTTCCTGCCTGCTTTTCG\" #> [3] \"GCTCATGGCTCTCCAGACCGACCCCGAGCTCTGCTATGGCCACGGGACACGCCGCTTCCCCCGACCCTGAGGCAGGGATCGGAAGCTAGCCTGGAGATGCCCAGAGGAACTCGTAAAGCTGAGCGGGTGCTACCCTCCCGCTGCTCTCCTGGTAGACCTAACCCTTCGCCTAATCCGCGCTGGAGATCTACCCAGTGACACTGCGGGTGTCCCCCCGGGCCGCGGGGCCCTTTTCTTTATGGACGCGGCCAATGGCGAGGCGGGGGCGGACCGGACCCTAGTCCTTAGGCCCCCGCCCAG\" pbm_list.compute(pbm_list, seqs) #> ℹ Computing energies for 21 PBMs on 3 sequences #> Oct4 Atoh1.2 Tbx5 E2A_1.2 Isl1 E2A_1 MyoG Atoh1.3 #> [1,] 0.000000 0.000000 3.360820 0 3.729907 0 2.0862625 0 #> [2,] 2.438457 2.731101 3.491086 0 4.280369 0 2.3392323 0 #> [3,] 0.000000 0.000000 2.669436 0 3.894363 0 0.5483327 0 #> GATA3_2.2 Meis1 E2F6 Pit1 PQM_1 TboxSmad GATA3_2 E_box_2 #> [1,] 3.806423 3.154064 4.018626 2.305464 1.271002 0.1399182 6.282286 1.2634071 #> [2,] 5.520942 6.555252 5.438935 4.640641 5.010974 4.3378987 4.587564 0.4109196 #> [3,] 4.763735 4.778387 3.007386 4.004477 1.685282 0.4491135 5.887933 0.9321862 #> Tcf3 Tcf4 Atoh1 TATA_box Lhx2 #> [1,] 0.000000 0.4460041 4.839001 0.000000 0 #> [2,] 2.038721 6.6088638 0.000000 1.872493 0 #> [3,] 2.091852 0.0000000 0.000000 2.445689 0"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"performance-considerations","dir":"Articles","previous_headings":"","what":"Performance Considerations","title":"IceQream","text":"computational requirements IceQream depend size dataset. reference, example dataset used (~100,000 peaks ~20,000 motifs) requires 23GB RAM motif energy matrix, take several hours create, depending hardware. less memory computationally intensive analysis, can reduce number motifs used regression taking representative SCENIC clusters (1615) instead motifs (20,000+). can done : Note performance model lower fewer motifs, can still provide valuable insights.","code":"# motif_energies <- compute_motif_energies(peak_intervals, motif_db_scenic_clusters, normalization_intervals = normalization_intervals)"},{"path":"https://tanaylab.github.io/iceqream/articles/iceqream.html","id":"running-iceqream-on-your-own-data","dir":"Articles","previous_headings":"","what":"Running IceQream on your own data","title":"IceQream","text":"run IceQream data, need provide following inputs: Genomic positions peaks (dataframe columns chrom, start, end, peak_name), optionally can const column indicating constitutive loci. ATAC scores (matrix rows corresponding peaks columns corresponding bins). (Optional) Additional features (data frame rows corresponding peaks columns corresponding features). can follow steps outlined vignette compute motif energies run regression.","code":""},{"path":"https://tanaylab.github.io/iceqream/authors.html","id":null,"dir":"","previous_headings":"","what":"Authors","title":"Authors and Citation","text":"Aviezer Lifshitz. Author, maintainer. Akhiad Bercovich. Author. Amos Tanay. Author.","code":""},{"path":"https://tanaylab.github.io/iceqream/authors.html","id":"citation","dir":"","previous_headings":"","what":"Citation","title":"Authors and Citation","text":"Lifshitz , Bercovich , Tanay (2024). iceqream: Interpretable Computational Engine Quantitative Regression Enhancer ATAC Motifs. R package version 0.0.1, https://tanaylab.github.io/iceqream/.","code":"@Manual{, title = {iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs}, author = {Aviezer Lifshitz and Akhiad Bercovich and Amos Tanay}, year = {2024}, note = {R package version 0.0.1}, url = {https://tanaylab.github.io/iceqream/}, }"},{"path":"https://tanaylab.github.io/iceqream/index.html","id":"iceqream","dir":"","previous_headings":"","what":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","title":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","text":"iceqream (Interpretable Computational Engine Quantitative Regression Enhancer ATAC Motifs, short: IQ) package regressing accessibility sequences using physical models TF binding. models TF effective concentrations latent variables activate repress regulatory elements nonlinear fashion, possible contribution pairwise interactions synergistic chromosomal domain effects. IQ allows inference synthesis models explaining accessibility dynamics entire single cell manifold.","code":""},{"path":"https://tanaylab.github.io/iceqream/index.html","id":"installation","dir":"","previous_headings":"","what":"Installation","title":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","text":"can install development version iceqream like :","code":"remotes::install_github(\"tanaylab/iceqream\")"},{"path":"https://tanaylab.github.io/iceqream/index.html","id":"usage","dir":"","previous_headings":"","what":"Usage","title":"Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs","text":"See vignette detailed example mouse gastrulation trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQFeature class — IQFeature-class","title":"IQFeature class — IQFeature-class","text":"class represents IQ feature method defines IQFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQFeature class — IQFeature-class","text":"","code":"# S4 method for IQFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQFeature class — IQFeature-class","text":"object IQFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeature-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQFeature class — IQFeature-class","text":"name name IQ feature (character). coefs coefficients IQ feature (numeric).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQFeatureGroup class — IQFeatureGroup-class","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"class represents group related IQ features, dinucleotide features. method defines IQFeatureGroup object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"","code":"# S4 method for IQFeatureGroup initialize(.Object, features, compute_func, size) # S4 method for IQFeatureGroup show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQFeatureGroup class — IQFeatureGroup-class","text":".Object IQFeatureGroup object initialize. features list IQSeqFeature objects. compute_func function compute features group . size size sequences use feature computation. object IQFeatureGroup object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"initialized IQFeatureGroup object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQFeatureGroup-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQFeatureGroup class — IQFeatureGroup-class","text":"features list IQSeqFeature objects. compute_func function compute features group . size size sequences use feature computation (numeric).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQSeqFeature class — IQSeqFeature-class","title":"IQSeqFeature class — IQSeqFeature-class","text":"class represents sequence feature IQ models, inheriting IQFeature. method defines IQSeqFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQSeqFeature class — IQSeqFeature-class","text":"","code":"# S4 method for IQSeqFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQSeqFeature class — IQSeqFeature-class","text":"object IQSeqFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQSeqFeature-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQSeqFeature class — IQSeqFeature-class","text":"name name IQ sequence feature (character). coefs coefficients IQ sequence feature (numeric). compute_func function compute feature (function). min_value minimum value normalization (numeric). max_value maximum value normalization (numeric). quantile quantile use normalization (numeric). size size sequences use feature computation (numeric).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":null,"dir":"Reference","previous_headings":"","what":"IQmodel class — IQmodel-class","title":"IQmodel class — IQmodel-class","text":"class represents IQ model including IQ features PBMs, along necessary model parameters. method defines IQmodel object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"IQmodel class — IQmodel-class","text":"","code":"# S4 method for IQmodel show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"IQmodel class — IQmodel-class","text":"object IQmodel object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/IQmodel-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"IQmodel class — IQmodel-class","text":"iq_features list IQFeature objects. pbms list PBM objects. intercept intercept term model. func function used computing energies (e.g., \"logSumExp\" \"max\"). lambda regularization parameter. alpha elastic net mixing parameter. min_pred Minimum value training predictions normalization. max_pred Maximum value training predictions normalization. norm_factors Normalization factors scaling predictions.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":null,"dir":"Reference","previous_headings":"","what":"PBM Class — PBM-class","title":"PBM Class — PBM-class","text":"class represents PBM (Physical Binding Model) object. inherits IQFeature class.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"PBM Class — PBM-class","text":"","code":"# S4 method for PBM show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"PBM Class — PBM-class","text":"object instance PBM.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/PBM-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"PBM Class — PBM-class","text":"pssm matrix representing position-specific scoring matrix. max_energy numeric value representing maximum energy value normalization min_energy numeric value representing minimal energy value normalization energy_range numeric value representing energy range value normalization spat data frame representing spatial distribution (optional) spat_min numeric value representing spatial minimum (optional). spat_max numeric value representing spatial maximum (optional) seq_length numeric value representing length sequence spatial distribution (optional)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":null,"dir":"Reference","previous_headings":"","what":"TrajectoryModel Class — TrajectoryModel-class","title":"TrajectoryModel Class — TrajectoryModel-class","text":"S4 class represent trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"TrajectoryModel Class — TrajectoryModel-class","text":"","code":"# S4 method for TrajectoryModel show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"TrajectoryModel Class — TrajectoryModel-class","text":"object instance TrajectoryModel.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModel-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"TrajectoryModel Class — TrajectoryModel-class","text":"diff_score numeric numerical value representing difference score. predicted_diff_score numeric numerical value representing predicted difference score. model model object data type represents trajectory model. coefs data.frame data frame containing coefficients model (including intercept). Contains coefficients 'early', 'linear' 'late' models model_features matrix containing features used training model. normalized_energies matrix matrix containing normalized energies. additional variables used, also included. type vector length number peaks, indicating whether peak training ('train') prediction peak ('test'). motif_models list list models representing different motifs. initial_prego_models list list initial pre-go models. peak_intervals data.frame data frame containing peak intervals. params list list parameters used training. additional_features data.frame data frame containing additional features. features_r2 numeric numeric vector R^2 values feature. normalization_intervals data.frame data frame containing intervals used energy normalization.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":null,"dir":"Reference","previous_headings":"","what":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"class represents multi-trajectory model, collection individual trajectory models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"","code":"# S4 method for TrajectoryModelMulti show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"object instance TrajectoryModelMulti.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/TrajectoryModelMulti-class.html","id":"slots","dir":"Reference","previous_headings":"","what":"Slots","title":"TrajectoryModelMulti Class — TrajectoryModelMulti-class","text":"models list individual trajectory models. models_full list individual trajectory models full features. motif_models list motif models corresponding individual trajectory models. cluster_map data frame maps original motif distilled cluster. stats data frame r2 statistics trajectory model distillation. params additional parameters multi-trajectory distillation.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":null,"dir":"Reference","previous_headings":"","what":"Add Features R^2 — add_features_r2","title":"Add Features R^2 — add_features_r2","text":"function adds added R-squared values motif model trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Add Features R^2 — add_features_r2","text":"","code":"add_features_r2( traj_model, sample_frac = 0.1, additional = FALSE, seed = 60427 )"},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Add Features R^2 — add_features_r2","text":"traj_model trajectory model object. sample_frac fraction samples use computing r2 without model. NULL, samples used. additional calculate also additional features. Default FALSE. seed seed use sampling data. Default 60427.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/add_features_r2.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Add Features R^2 — add_features_r2","text":"trajectory model object added R-squared values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute motif directional hits — compute_motif_directional_hits","title":"Compute motif directional hits — compute_motif_directional_hits","text":"function computes number hits given motif set intervals, separated strand direction.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute motif directional hits — compute_motif_directional_hits","text":"","code":"compute_motif_directional_hits(pssm, intervals, size, pwm_threshold = 7)"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute motif directional hits — compute_motif_directional_hits","text":"pssm position-specific scoring matrix (PSSM) object. intervals data frame containing genomic intervals search motif hits. size size intervals. pwm_threshold threshold PSSM score consider hit.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_directional_hits.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute motif directional hits — compute_motif_directional_hits","text":"data frame containing number hits motif interval, separated strand direction. Column names 'ml' (minus, left), 'mr' (minus, right), 'pl' (plus, left), 'pr' (plus, right).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute Motif Energies — compute_motif_energies","title":"Compute Motif Energies — compute_motif_energies","text":"function computes motif energies given peak intervals using specified motif database. Optionally, can normalize computed motif energies using additional normalization intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute Motif Energies — compute_motif_energies","text":"","code":"compute_motif_energies( peak_intervals, db = iceqream::motif_db, normalization_intervals = peak_intervals, prior = 0.01, normalize = TRUE, energy_norm_quantile = 1, norm_energy_max = 10, min_energy = -7 )"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute Motif Energies — compute_motif_energies","text":"peak_intervals data frame containing peak intervals columns: chrom, start, end. additional column 'peak_name' present, used row names output matrix. db motif database use extracting motif energies. Default iceqream::motif_db. normalization_intervals data frame containing intervals normalization. Default peak_intervals. prior prior probability nucleotide. normalize logical value indicating whether normalize motif energies. Default TRUE. energy_norm_quantile numeric value quantile used normalization. Default 1. norm_energy_max maximum value normalized energy values scaled. Default 10. min_energy minimum energy value assigned normalization. Default -7.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_motif_energies.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute Motif Energies — compute_motif_energies","text":"matrix motif energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute tracks quantiles — compute_tracks_q","title":"Compute tracks quantiles — compute_tracks_q","text":"function computes quantiles set ATAC-seq tracks.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute tracks quantiles — compute_tracks_q","text":"","code":"compute_tracks_q( atac_names, atac_tracks, iterator = 20, norm_q = 0.995, norm_intervals = gintervals.all(), tn5bias_track = \"tn5bias\", normalize_tn5bias = TRUE, sample_n = 10000 )"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute tracks quantiles — compute_tracks_q","text":"atac_names character vector specifying names ATAC-seq tracks. atac_tracks list numeric vectors representing ATAC-seq tracks. iterator iterator object used computing quantiles. norm_q numeric vector specifying quantiles compute track. single value, quantile used tracks. norm_intervals numeric vector specifying intervals computing quantiles. tn5bias_track numeric vector representing TN5 bias track. normalize_tn5bias Logical, whether normalize TN5 bias track. sample_n numeric value specifying maximum number data points use computing quantiles.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_tracks_q.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute tracks quantiles — compute_tracks_q","text":"data frame columns \"type\" \"q\", \"type\" represents name ATAC-seq track \"q\" represents computed quantiles.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"function computes spatial frequency motifs trajectory model, using top bottom 10% peaks based diff_score.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"","code":"compute_traj_model_spatial_freq( traj_model, size, pwm_threshold = 7, pwm_q_threshold = 0.99, top_q = 0.1, bottom_q = 0.1, atac_track = NULL, parallel = TRUE, bidirect_size = NULL, k4me3_track = NULL, k27me3_track = NULL, k27ac_track = NULL, orient_to_intervals = NULL, align_to_max = TRUE, motifs = names(traj_model@motif_models) )"},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"traj_model trajectory model object size size region compute spatial frequency pwm_threshold threshold PWM score pwm_q_threshold genomic quantile use PWM threshold. used pwm_threshold NULL. top_q proportion top peaks select bottom_q proportion bottom peaks select atac_track name ATAC-seq marginal track parallel Whether use parallel processing bidirect_size Size intervals use deciding directionality sequence k4me3_track name k4me3 track k27me3_track name k27me3 track k27ac_track name k27ac track orient_to_intervals data frame containing intervals orient sequences align_to_max logical indicating whether align sequences maximum sequence epigenetic tracks atac signal motifs vector motif names compute spatial frequency . Default motifs trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/compute_traj_model_spatial_freq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute spatial frequency of motifs in trajectory model — compute_traj_model_spatial_freq","text":"data frame spatial frequency motif","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":null,"dir":"Reference","previous_headings":"","what":"Create Dinucleotide Feature Group — create_dinuc_feature_group","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"function creates IQFeatureGroup object dinucleotide features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"","code":"create_dinuc_feature_group( traj_model, quantile = 0.99, size = traj_model@params$peaks_size, dinucleotides = c(\"AA\", \"AC\", \"AG\", \"AT\", \"CA\", \"CC\", \"CG\", \"CT\", \"GA\", \"GC\", \"GG\", \"GT\", \"TA\", \"TC\", \"TG\", \"TT\") )"},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"traj_model trajectory model object. quantile quantile use normalization (default 0.99). size size sequences use feature computation. dinucleotides vector dinucleotides create features (default possible dinucleotides).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_feature_group.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create Dinucleotide Feature Group — create_dinuc_feature_group","text":"IQFeatureGroup object containing dinucleotide features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":null,"dir":"Reference","previous_headings":"","what":"Create Dinucleotide Features — create_dinuc_features","title":"Create Dinucleotide Features — create_dinuc_features","text":"function creates IQSeqFeature objects possible dinucleotides.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create Dinucleotide Features — create_dinuc_features","text":"","code":"create_dinuc_features( traj_model, quantile = 0.99, size = traj_model@params$peaks_size, dinucleotides = c(\"AA\", \"AC\", \"AG\", \"AT\", \"CA\", \"CC\", \"CG\", \"CT\", \"GA\", \"GC\", \"GG\", \"GT\", \"TA\", \"TC\", \"TG\", \"TT\"), feat_names = dinucleotides )"},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create Dinucleotide Features — create_dinuc_features","text":"traj_model trajectory model object. quantile quantile use normalization (default 0.99). size size sequences use feature computation. dinucleotides vector dinucleotides create features (default possible dinucleotides). feat_names vector feature names use dinucleotide (default dinucleotide ).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_dinuc_features.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create Dinucleotide Features — create_dinuc_features","text":"list IQSeqFeature objects, one dinucleotide.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Create an IQmodel from a trajectory model — create_iq_model","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"function creates IQmodel object trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"","code":"create_iq_model(traj_model, func = \"logSumExp\")"},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"traj_model trajectory model object func function use computing energies (default \"logSumExp\")","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create an IQmodel from a trajectory model — create_iq_model","text":"IQmodel object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":null,"dir":"Reference","previous_headings":"","what":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"Create IQSeqFeature trajectory model","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"","code":"create_iq_seq_feature(traj_model, feature_name, compute_func, quantile = 0.99)"},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"traj_model trajectory model object. feature_name name feature create. compute_func function compute feature. quantile quantile use normalization (default 0.99).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_iq_seq_feature.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create an IQSeqFeature from a trajectory model — create_iq_seq_feature","text":"IQSeqFeature object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":null,"dir":"Reference","previous_headings":"","what":"Create Logistic Features — create_logist_features","title":"Create Logistic Features — create_logist_features","text":"function takes matrix dataframe features, removes columns entirely NA, applies three logistic transformations column. transformed set features appended suffixes \"_early\", \"_linear\", \"_late\" differentiate . resulting matrix combines transformed features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Create Logistic Features — create_logist_features","text":"","code":"create_logist_features(features)"},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Create Logistic Features — create_logist_features","text":"features matrix dataframe column feature transformed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Create Logistic Features — create_logist_features","text":"matrix containing transformed features columns named according transformation applied (.e., \"_early\", \"_linear\", \"_late\").","code":""},{"path":[]},{"path":"https://tanaylab.github.io/iceqream/reference/create_logist_features.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Create Logistic Features — create_logist_features","text":"","code":"# Create a sample matrix sample_features <- matrix(rnorm(100), ncol = 5) transformed_features <- create_logist_features(sample_features) head(transformed_features) #> V1_high-energy V1_higher-energy V1_low-energy V1_sigmoid V2_high-energy #> [1,] 0.006669470 2.238974e-05 -0.336385193 0.0016587290 0.016886267 #> [2,] 0.015194518 1.172040e-04 0.063742721 0.0086228195 0.016027914 #> [3,] 0.003976017 7.935848e-06 -0.543645366 0.0005885478 0.006994522 #> [4,] 0.013348714 9.029132e-05 -0.001392821 0.0066559143 0.019299783 #> [5,] 0.018220130 1.690384e-04 0.154149501 0.0123893993 0.034055131 #> [6,] 0.023646487 2.862674e-04 0.279466150 0.0208039625 0.012753208 #> V2_higher-energy V2_low-energy V2_sigmoid V3_high-energy V3_higher-energy #> [1,] 1.450009e-04 0.11650712 0.010646236 0.013859432 9.738224e-05 #> [2,] 1.305223e-04 0.09048961 0.009593319 0.009742111 4.791892e-05 #> [3,] 2.463337e-05 -0.31504444 0.001824645 0.013057593 8.637080e-05 #> [4,] 1.898699e-04 0.18238058 0.013895138 0.011813424 7.060768e-05 #> [5,] 5.999598e-04 0.43991567 0.042635577 0.016691842 1.416535e-04 #> [6,] 8.236589e-05 -0.02435646 0.006075209 0.052051866 1.427046e-03 #> V3_low-energy V3_sigmoid V4_high-energy V4_higher-energy V4_low-energy #> [1,] 0.01750692 0.007174904 0.022796605 2.658336e-04 0.26230905 #> [2,] -0.15843484 0.003543384 0.009617056 4.669075e-05 -0.16475654 #> [3,] -0.01249058 0.006368738 0.023247253 2.765722e-04 0.27150521 #> [4,] -0.06278815 0.005212428 0.011846275 7.100326e-05 -0.06139678 #> [5,] 0.11074320 0.010403007 0.007451298 2.796854e-05 -0.28617110 #> [6,] 0.59724554 0.095817799 0.008238755 3.421931e-05 -0.23923513 #> V4_sigmoid V5_high-energy V5_higher-energy V5_low-energy V5_sigmoid #> [1,] 0.019347516 0.03466020 6.218445e-04 0.4471128 0.044122637 #> [2,] 0.003452878 0.02546449 3.325813e-04 0.3136587 0.024089208 #> [3,] 0.020113459 0.01940534 1.919727e-04 0.1850414 0.014046877 #> [4,] 0.005241478 0.01763976 1.583492e-04 0.1381667 0.011614992 #> [5,] 0.002071180 0.01019263 5.247696e-05 -0.1362124 0.003879132 #> [6,] 0.002532909 0.02320802 2.756287e-04 0.2707136 0.020046214"},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Distill trajectory model — distill_traj_model","title":"Distill trajectory model — distill_traj_model","text":"function takes trajectory model reduces number motifs using 'prego'.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Distill trajectory model — distill_traj_model","text":"","code":"distill_traj_model( traj_model, max_motif_num, min_diff = 0.1, intra_cor_thresh = 0.6, use_non_linear = TRUE, parallel = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Distill trajectory model — distill_traj_model","text":"traj_model trajectory model object max_motif_num maximum number motifs select min_diff minimum difference scores use distillation intra_cor_thresh threshold average intra-cluster correlation split clusters. NULL, splitting done. use_non_linear Whether use non-linear features. FALSE, glm model without non-linear features used. parallel Whether use parallel processing","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Distill trajectory model — distill_traj_model","text":"distilled trajectory model object max_motif_num models + additional features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":null,"dir":"Reference","previous_headings":"","what":"Distills multiple trajectory models — distill_traj_model_multi","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"function takes list trajectory models performs distillation process create single set motifs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"","code":"distill_traj_model_multi( traj_models, max_motif_num = NULL, min_diff = 0.1, intra_cor_thresh = 0.6, distill_single = FALSE, use_all_motifs = FALSE, bits_threshold = 1.75, r2_threshold = NULL, seed = 60427, parallel = TRUE, cluster_report_dir = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"traj_models list trajectory models. max_motif_num maximum number motifs identified. NULL - number set maximum number motifs input models. min_diff minimum difference scores use distillation intra_cor_thresh threshold average intra-cluster correlation split clusters. NULL, splitting done. distill_single Logical indicating whether distill clusters single motif. use_all_motifs Logical indicating whether use motifs resulting models. FALSE, motifs clusters motif original model used. bits_threshold minimal sum bits feature included model. r2_threshold minimal R^2 feature included model. seed random seed reproducibility. Defaults 60427. parallel Whether use parallel processing cluster_report_dir directory store cluster reports. NULL, png created cluster.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/distill_traj_model_multi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Distills multiple trajectory models — distill_traj_model_multi","text":"distilled trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Filter multi-trajectory model — filter_multi_traj_model","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"Filter multi-trajectory model","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"","code":"filter_multi_traj_model( multi_traj, r2_threshold = 0.0005, bits_threshold = 1.75, sample_frac = 0.1, filter_full = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"multi_traj TrajectoryModelMulti model object. r2_threshold minimal R^2 feature included model. bits_threshold minimal sum bits feature included model. sample_frac fraction samples use computing r2 without model. NULL, samples used. filter_full logical value indicating whether filter full models (@models_full) reduced models (@models). Default TRUE.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_multi_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Filter multi-trajectory model — filter_multi_traj_model","text":"filtered TrajectoryModelMulti object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Filter a trajectory model using punctuated regression. — filter_traj_model","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"Run regression without feature filter features improve model r2_threshold.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"","code":"filter_traj_model( traj_model, r2_threshold = 0.0005, bits_threshold = 1.75, sample_frac = 0.1, seed = 60427 )"},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"traj_model instance TrajectoryModel. r2_threshold minimal R^2 feature included model. bits_threshold minimal sum bits feature included model. sample_frac fraction samples use computing r2 without model. NULL, samples used. seed seed use reproducibility sampling data.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Filter a trajectory model using punctuated regression. — filter_traj_model","text":"instance TrajectoryModel filtered model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":null,"dir":"Reference","previous_headings":"","what":"Filter trajectory model intervals — filter_traj_model_intervals","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"function filters trajectory model selecting specific intervals based indices.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"","code":"filter_traj_model_intervals(traj_model, idxs)"},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"traj_model trajectory model object filter. idxs indices intervals select.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/filter_traj_model_intervals.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Filter trajectory model intervals — filter_traj_model_intervals","text":"filtered trajectory model object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":null,"dir":"Reference","previous_headings":"","what":"Homogenize a list of PSSM models — homogenize_pssm_models","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"function adjusts PSSM model input list GC content higher content. model's GC content higher content, function applies reverse complement model using prego pssm_rc function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"","code":"homogenize_pssm_models(models)"},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"models list PSSM models. model list pssm element, data frame containing columns '', 'C', 'G', 'T', 'pos'.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"list homogenized PSSM models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/homogenize_pssm_models.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Homogenize a list of PSSM models — homogenize_pssm_models","text":"","code":"# Create simulated data pssm1 <- data.frame( pos = 1:4, A = c(0.1, 0.2, 0.3, 0.4), C = c(0.3, 0.3, 0.2, 0.1), G = c(0.3, 0.3, 0.3, 0.3), T = c(0.3, 0.2, 0.2, 0.2) ) pssm2 <- data.frame( pos = 1:4, A = c(0.1, 0.2, 0.3, 0.4), C = c(0.1, 0.1, 0.1, 0.1), G = c(0.2, 0.2, 0.2, 0.2), T = c(0.6, 0.5, 0.4, 0.3) ) models <- list(list(pssm = pssm1), list(pssm = pssm2)) # Homogenize the models homogenized_models <- homogenize_pssm_models(models)"},{"path":"https://tanaylab.github.io/iceqream/reference/iceqream-package.html","id":null,"dir":"Reference","previous_headings":"","what":"iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs — iceqream-package","title":"iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs — iceqream-package","text":"iceqream package regressing accessibility sequences using physical models TF binding, models TF effective concentrations latent variables activate repress regulatory elements nonlinear fashion, possible contribution pairwise interactions synergistic chromosomal domain effects. iceqream allows inference synthesis models explaining accessibility dynamics entire single cell manifold.","code":""},{"path":[]},{"path":"https://tanaylab.github.io/iceqream/reference/iceqream-package.html","id":"author","dir":"Reference","previous_headings":"","what":"Author","title":"iceqream: Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs — iceqream-package","text":"Maintainer: Aviezer Lifshitz aviezer.lifshitz@weizmann.ac.il Authors: Akhiad Bercovich akhiad.bercovich@weizmann.ac.il Amos Tanay amos.tanay@weizmann.ac.il","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":null,"dir":"Reference","previous_headings":"","what":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"function infers motif energies set peaks using pre-trained trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"","code":"infer_trajectory_motifs( traj_model, peak_intervals, atac_scores = NULL, bin_start = 1, bin_end = ncol(atac_scores), additional_features = NULL, test_energies = NULL, diff_score = NULL, sequences = NULL, norm_sequences = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"traj_model trajectory model object, returned regress_trajectory_motifs peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores Optional. numeric matrix, representing mean ATAC score per bin per peak. Rows: peaks, columns: bins. default iceqream regress last column minus first column. want regress something else, please either set bin_start bin_end, provide atac_diff instead. normalize_bins TRUE, scores normalized 0 1. bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0. test_energies already computed matrix motif energies test peaks. advanced option provide energies directly. diff_score difference ATAC-seq scores end start peak. provided, function ignore atac_scores parameter. sequences vector strings containing sequences peaks. provided, sequences extracted genome using peak intervals. norm_sequences vector strings containing sequences normalization intervals. provided, sequences extracted genome using normalization intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Infer trajectory motifs using a pre-trained trajectory model — infer_trajectory_motifs","text":"TrajectoryModel object contains original ('train') peaks newly inferred ('test') peaks. field @type indicates whether peak 'train' 'test' peak. R^2 statistics computed object@params$stats.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":null,"dir":"Reference","previous_headings":"","what":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"function infers trajectory motifs individual trajectory multi-trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"","code":"infer_trajectory_motifs_multi( traj_multi, peak_intervals, atac_scores = NULL, bin_start = 1, bin_end = purrr::map(atac_scores, ncol), additional_features = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"traj_multi TrajectoryModelMulti object. peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores list data frames ATAC-seq scores individual trajectory. bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) additional_features list data frames additional features individual trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/infer_trajectory_motifs_multi.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Infer trajectory motifs for a multi-trajectory model — infer_trajectory_motifs_multi","text":"TrajectoryModelMulti object result infer_trajectory_motifs individual trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":"Initialize IQFeatureGroup object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":"","code":"# S4 method for IQFeatureGroup initialize(.Object, features, compute_func, size)"},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":".Object IQFeatureGroup object initialize. features list IQSeqFeature objects. compute_func function compute features group . size size sequences use feature computation.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQFeatureGroup-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Initialize an IQFeatureGroup object — initialize,IQFeatureGroup-method","text":"initialized IQFeatureGroup object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":"Initialize IQSeqFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":"","code":"# S4 method for IQSeqFeature initialize( .Object, name, coefs, compute_func, min_value, max_value, quantile = 0.99, size )"},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":".Object IQSeqFeature object initialize. name name feature. coefs coefficients feature. compute_func function compute feature. min_value minimum value normalization. max_value maximum value normalization. quantile quantile use normalization. size size sequences use feature computation.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/initialize-IQSeqFeature-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Initialize an IQSeqFeature object — initialize,IQSeqFeature-method","text":"initialized IQSeqFeature object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute the IQ feature response — iq_feature.compute_response","title":"Compute the IQ feature response — iq_feature.compute_response","text":"function computes IQ feature response given set values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute the IQ feature response — iq_feature.compute_response","text":"","code":"iq_feature.compute_response(iq, values)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute the IQ feature response — iq_feature.compute_response","text":"iq IQFeature object. values vector values compute IQ feature.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature.compute_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute the IQ feature response — iq_feature.compute_response","text":"vector computed IQ feature responses.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute features for an IQFeatureGroup — iq_feature_group.compute","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"function computes features group given set sequences intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"","code":"iq_feature_group.compute(group, sequences = NULL, intervals = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"group IQFeatureGroup object. sequences vector DNA sequences. Optional intervals provided. intervals data frame genomic intervals columns 'chrom', 'start', 'end'. Optional sequences provided.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_group.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute features for an IQFeatureGroup — iq_feature_group.compute","text":"matrix computed normalized feature values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"function computes features given list IQFeature IQFeatureGroup objects, using either provided sequences intervals.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"","code":"iq_feature_list.compute(feature_list, sequences = NULL, intervals = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"feature_list list IQFeature /IQFeatureGroup objects. sequences vector DNA sequences. Optional intervals provided. intervals data frame genomic intervals columns 'chrom', 'start', 'end'. Optional sequences provided.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute features for a list of IQFeature and IQFeatureGroup objects — iq_feature_list.compute","text":"data frame containing computed features objects feature_list.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute IQ feature list response — iq_feature_list.compute_response","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"function computes IQ response given list IQ features matrix values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"","code":"iq_feature_list.compute_response(iq_list, mat)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"iq_list list IQFeature objects mat input matrix","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_feature_list.compute_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute IQ feature list response — iq_feature_list.compute_response","text":"matrix containing computed IQ feature responses.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":null,"dir":"Reference","previous_headings":"","what":"Perform IQ regression on peak intervals — iq_regression","title":"Perform IQ regression on peak intervals — iq_regression","text":"Perform IQ regression peak intervals using provided ATAC-seq scores, ATAC-seq score differences, normalized intervals, motif energies, additional features, dividing intervals training testing sets.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Perform IQ regression on peak intervals — iq_regression","text":"","code":"iq_regression( peak_intervals, atac_scores = NULL, atac_diff = NULL, normalize_bins = TRUE, norm_intervals = NULL, motif_energies = NULL, additional_features = NULL, max_motif_num = 30, traj_prego = NULL, peaks_size = 300, bin_start = 1, bin_end = NULL, seed = 60427, frac_train = 0.8, filter_model = TRUE, ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Perform IQ regression on peak intervals — iq_regression","text":"peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores Optional. numeric matrix, representing mean ATAC score per bin per peak. Rows: peaks, columns: bins. default iceqream regress last column minus first column. want regress something else, please either set bin_start bin_end, provide atac_diff instead. normalize_bins TRUE, scores normalized 0 1. atac_diff Optional. numeric vector representing differential accessibility start end trajectory. Either atac_scores must provided. normalize_bins whether normalize ATAC scores 0 1. Default: TRUE norm_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peaks used energy normalization. NULL, function use peak_intervals normalization. motif_energies numeric matrix, representing energy motif peak. NULL, function use pssm_db calculate motif energies. Note might take . additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0. max_motif_num maximum number motifs consider. Default: 50 traj_prego output learn_traj_prego. provided, additional prego models inferred. peaks_size size peaks extract sequences . Default: 300bp bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) seed random seed reproducibility. frac_train numeric value indicating fraction intervals use training (default 0.8). filter_model logical value indicating whether filter model (default TRUE). ... Arguments passed regress_trajectory_motifs n_clust_factor factor divide number keep clustering. e.g. n_clust_factor > 1 number motifs keep reduced factor n_clust_factor. Default: 1 norm_motif_energies numeric matrix, representing normalized energy motif interval norm_intervals. NULL, function use pssm_db calculate motif energies. Note might take . pssm_db data frame PSSMs ('', 'C', 'G' 'T' columns), additional column 'motif' containing motif name. motifs motif_energies (column names) present 'motif' column. Default: motifs prego package. min_tss_distance distance Transcription Start Site (TSS) classify peak enhancer. Default: 5000. NULL, filtering performed - use option peaks already filtered. Note order filter peaks close TSS, current misha genome must intervals set called intervs.global.tss. normalize_energies whether normalize motif energies. Set FALSE motif energies already normalized. min_initial_energy_cor minimal correlation motif normalized energy ATAC difference. energy_norm_quantile quantile energy used normalization. Default: 1 norm_energy_max maximum value normalized energy. Default: 10 n_prego_motifs number prego motifs (de-novo motifs) consider. min_diff minimal ATAC difference peak participate initial prego motif inference distillation step (distill_on_diff TRUE). distill_on_diff whether distill motifs based differential accessibility. FALSE, peaks used distillation, TRUE - peaks differential accessibility >= min_diff used. prego_sample_for_kmers whether use sample peaks kmer screening. Default: TRUE prego_sample_fraction Fraction peaks sample prego motif inference. smaller number faster might lead -fitting. Default: 0.1 feature_selection_beta beta parameter used feature selection. filter_using_r2 whether filter features using R^2. r2_threshold minimal R^2 feature included model. parallel whether use parallel processing glmnet. spat_num_bins number spatial bins use. spat_bin_size size spatial bin. kmer_sequence_length length kmer sequence use kmer screening. default full sequence used. alpha elasticnet mixing parameter, \\(0\\le\\alpha\\le 1\\). penalty defined $$(1-\\alpha)/2||\\beta||_2^2+\\alpha||\\beta||_1.$$ alpha=1 lasso penalty, alpha=0 ridge penalty. lambda user supplied lambda sequence. Typical usage program compute lambda sequence based nlambda lambda.min.ratio. Supplying value lambda overrides . WARNING: use care. Avoid supplying single value lambda (predictions CV use predict() instead). Supply instead decreasing sequence lambda values. glmnet relies warms starts speed, often faster fit whole path compute single fit.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_regression.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Perform IQ regression on peak intervals — iq_regression","text":"instance TrajectoryModel containing model information results: model: final General Linear Model (GLM) object. motif_models: Named List, PSSM spatial models motif cluster. normalized_energies: Numeric vector, normalized energies motif peak. additional_features: data frame additional features. diff_score: Numeric, normalized score differential accessibility 'bin_start' 'bin_end'. predicted_diff_score: Numeric, predicted differential accessibility score 'bin_start' 'bin_end'. initial_prego_models: List, inferred prego models initial step algorithm. peak_intervals: data frame, indicating genomic positions ('chrom', 'start', 'end') peak used training.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute the IQSeqFeature — iq_seq_feature.compute","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"function computes IQ sequence feature given set sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"","code":"iq_seq_feature.compute(iq, sequences)"},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"iq IQSeqFeature object. sequences vector DNA sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/iq_seq_feature.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute the IQSeqFeature — iq_seq_feature.compute","text":"vector computed normalized IQ sequence feature values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/learn_traj_prego.html","id":null,"dir":"Reference","previous_headings":"","what":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","title":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","text":"Learn 'prego' models ATAC difference trajectory","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/learn_traj_prego.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","text":"","code":"learn_traj_prego( peak_intervals, atac_diff, n_motifs, min_diff = 0.2, energy_norm_quantile = 1, norm_energy_max = 10, min_energy = -7, sample_for_kmers = FALSE, sample_fraction = 0.1, sequences = NULL, seed = NULL, peaks_size = 300, additional_features = NULL, norm_intervals = peak_intervals, ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/learn_traj_prego.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Learn 'prego' models for ATAC difference of a trajectory — learn_traj_prego","text":"peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_diff numeric vector, indicating ATAC difference peak n_motifs Number motifs learn. least 2 min_diff Minimum ATAC difference include peak training energy_norm_quantile quantile energy used normalization. Default: 1 norm_energy_max maximum value normalized energy. Default: 10 min_energy Minimum energy value normalization (default: -7) sample_for_kmers Whether sample kmers training. Default: TRUE sample_fraction Fraction peaks sample training. Default: 0.1#' sequences character vector sequences learn motifs . NULL, sequences peaks used. seed Random seed peaks_size size peaks extract sequences . Default: 300bp additional_features matrix additional features filter learning motifs (e.g. CpG content, dinucleotide content, etc.) norm_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peaks used energy normalization. NULL, function use peak_intervals normalization. ... Additional arguments passed prego::regress_pwm","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":null,"dir":"Reference","previous_headings":"","what":"Logistic Function — logist","title":"Logistic Function — logist","text":"Calculates logistic function value given parameters input.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Logistic Function — logist","text":"","code":"logist(x, x_0 = 0, L = 1, k = 1)"},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Logistic Function — logist","text":"x Numeric vector, values logistic function evaluated. x_0 Numeric, x-value sigmoid's midpoint. Default 0. L Numeric, maximum value sigmoid. Default 1. k Numeric, steepness slope sigmoid. Default 1.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Logistic Function — logist","text":"numeric vector logistic function values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/logist.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Logistic Function — logist","text":"","code":"x_vals <- seq(0, 10, by = 0.1) # Calculate the features for each scenario features_low_energy <- logist(x_vals, x_0 = 0, L = 2, k = 0.5) - 1 features_high_energy <- logist(x_vals, x_0 = 10, L = 2, k = 0.5) features_sigmoid <- logist(x_vals - 5, x_0 = 0, L = 1, k = 1) features_higher_energy <- logist(x_vals, x_0 = 10, L = 2, k = 1) features_early2 <- logist(x_vals, x_0 = 0, L = 2, k = 1) - 1 # Base plot setup plot(x_vals, features_low_energy * 10, type = \"l\", col = \"blue\", main = \"Variations of the Logistic Function\", xlab = \"x\", ylab = \"y\", ylim = c(0, 10), lwd = 2 ) # Adding other variations lines(x_vals, features_high_energy * 10, col = \"orange\", lwd = 2) lines(x_vals, features_sigmoid * 10, col = \"purple\", lwd = 2) lines(x_vals, features_higher_energy * 10, col = \"brown\", lwd = 2) lines(x_vals, features_early2 * 10, col = \"green\", lwd = 2) lines(x_vals, x_vals, col = \"black\", lwd = 2, lty = 2) legend(\"bottomright\", legend = c(\"Low Energy\", \"High Energy\", \"Sigmoid\", \"Higher Energy\", \"Early 2\", \"Linear\"), col = c(\"blue\", \"orange\", \"purple\", \"brown\", \"green\", \"black\"), lty = 1, lwd = 2 )"},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":null,"dir":"Reference","previous_headings":"","what":"Match trajectory model motif names — match_traj_model_motif_names","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"function matches motif names trajectory model given dataset. used order give 'friendly' names motif models. default dataset \"HOMER\". Note run might slow.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"","code":"match_traj_model_motif_names( traj_model, dataset = prego::all_motif_datasets() %>% filter(dataset == \"HOMER\") )"},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"traj_model trajectory model object. dataset dataset match motif names . Default \"HOMER\" dataset.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/match_traj_model_motif_names.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Match trajectory model motif names — match_traj_model_motif_names","text":"named character vector mapping motif names trajectory model matched motif names dataset.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":null,"dir":"Reference","previous_headings":"","what":"Merge Trajectory Motifs — merge_trajectory_motifs","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"function merges multiple motifs (chosen manually) new motif trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"","code":"merge_trajectory_motifs( traj_model, motifs, new_motif_name, min_diff = 0.1, seed = 60427 )"},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"traj_model trajectory model object. motifs character vector specifying names motifs merged. new_motif_name character string specifying name new merged motif. min_diff numeric value specifying minimum absolute difference ATAC scores motif considered merging process. Default 0.1. seed integer specifying seed random number generation. Default 60427.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"modified trajectory model object merged motif updated attributes.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/merge_trajectory_motifs.html","id":"details","dir":"Reference","previous_headings":"","what":"Details","title":"Merge Trajectory Motifs — merge_trajectory_motifs","text":"function validates trajectory model, checks specified motifs exist model, performs merging process. computes merged motif using distillation motifs partial response, updates model features, returns modified trajectory model object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":null,"dir":"Reference","previous_headings":"","what":"Motif Database — motif_db","title":"Motif Database — motif_db","text":"compilation DNA motifs various sources.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Motif Database — motif_db","text":"","code":"motif_db"},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"Motif Database — motif_db","text":"data frame 270340 rows 9 columns: motif Character. name identifier motif. pos Integer. position within motif. Numeric. score adenine position. C Numeric. score cytosine position. G Numeric. score guanine position. T Numeric. score thymine position. dataset Character. source dataset motif. motif_orig Character. name motif without database prefix. cluster Character. SCENIC motifs, cluster motif belongs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"references","dir":"Reference","previous_headings":"","what":"References","title":"Motif Database — motif_db","text":"HOMER: Heinz S, Benner C, Spann N, Bertolino E et al. Simple Combinations Lineage-Determining Transcription Factors Prime cis-Regulatory Elements Required Macrophage B Cell Identities. Mol Cell 2010 May 28;38(4):576-589. PMID: 20513432 JASPAR: Castro-Mondragon JA, Riudavets-Puig R, Rauluseviciute , Berhanu Lemma R, Turchi L, Blanc-Mathieu R, Lucas J, Boddie P, Khan , Manosalva Pérez N, Fornes O, Leung TY, Aguirre , Hammal F, Schmelter D, Baranasic D, Ballester B, Sandelin , Lenhard B, Vandepoele K, Wasserman WW, Parcy F, Mathelier JASPAR 2022: 9th release open-access database transcription factor binding profiles Nucleic Acids Res. 2022 Jan 7;50(D1):D165-D173.; doi: 10.1093/nar/gkab1113 JOLMA: Jolma, ., Yin, Y., Nitta, K. et al. DNA-dependent formation transcription factor pairs alters binding specificity. Nature 534, S15–S16 (2016). https://doi.org/10.1038/nature18912 HOCOMOCO: Ivan V. Kulakovskiy; Ilya E. Vorontsov; Ivan S. Yevshin; Ruslan N. Sharipov; Alla D. Fedorova; Eugene . Rumynskiy; Yulia . Medvedeva; Arturo Magana-Mora; Vladimir B. Bajic; Dmitry . Papatsenko; Fedor . Kolpakov; Vsevolod J. Makeev: HOCOMOCO: towards complete collection transcription factor binding models human mouse via large-scale ChIP-Seq analysis. Nucl. Acids Res., Database issue, gkx1106 (11 November 2017). https://doi.org/10.1093/nar/gkx1106 SCENIC: Aibar, S., González-Blas, C., Moerman, T. et al. SCENIC: single-cell regulatory network inference clustering. Nat Methods 14, 1083–1086 (2017). https://doi.org/10.1038/nmeth.4463 SCENIC+: Bravo González-Blas, C., De Winter, S., Hulselmans, G. et al. SCENIC+: single-cell multiomic inference enhancers gene regulatory networks. Nat Methods 20, 1355–1367 (2023). https://doi.org/10.1038/s41592-023-01938-4","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Motif Database — motif_db","text":"","code":"data(motif_db) head(motif_db) #> motif pos A C G #> 1 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 1 0.1633990 0.163399 96.895421 #> 2 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 2 9.9673210 13.888901 72.712407 #> 3 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 3 0.1633990 98.856209 0.163399 #> 4 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 4 65.5228541 14.542490 15.849689 #> 5 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 5 0.1633990 97.549021 2.124180 #> 6 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 6 0.1633989 9.313725 9.967315 #> T dataset motif_orig cluster #> 1 2.7777806 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 2 3.4313703 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 3 0.8169931 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 4 4.0849671 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 5 0.1633990 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 6 80.5555605 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1"},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":null,"dir":"Reference","previous_headings":"","what":"SCENIC Motif Clusters — motif_db_scenic_clusters","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"data frame containing representative motif SCENIC cluster.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"","code":"motif_db_scenic_clusters"},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"format","dir":"Reference","previous_headings":"","what":"Format","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"motif_db filtered include SCENIC motifs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"source","dir":"Reference","previous_headings":"","what":"Source","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"https://doi.org/10.1038/nmeth.4463","code":""},{"path":[]},{"path":"https://tanaylab.github.io/iceqream/reference/motif_db_scenic_clusters.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"SCENIC Motif Clusters — motif_db_scenic_clusters","text":"","code":"data(motif_db_scenic_clusters) head(motif_db_scenic_clusters) #> motif pos A C G #> 1 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 1 0.1633990 0.163399 96.895421 #> 2 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 2 9.9673210 13.888901 72.712407 #> 3 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 3 0.1633990 98.856209 0.163399 #> 4 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 4 65.5228541 14.542490 15.849689 #> 5 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 5 0.1633990 97.549021 2.124180 #> 6 SCENIC.kznf__ZNF264_Imbeault2017_OM_RCADE 6 0.1633989 9.313725 9.967315 #> T dataset motif_orig cluster #> 1 2.7777806 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 2 3.4313703 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 3 0.8169931 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 4 4.0849671 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 5 0.1633990 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1 #> 6 80.5555605 SCENIC kznf__ZNF264_Imbeault2017_OM_RCADE 0.1"},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize Values to the 0-1 Range — norm01","title":"Normalize Values to the 0-1 Range — norm01","text":"function scales translates values input vector x minimum value becomes 0 maximum value becomes 1. normalization done first subtracting minimum value element (translation) dividing element new maximum value (scaling).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize Values to the 0-1 Range — norm01","text":"","code":"norm01(x)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize Values to the 0-1 Range — norm01","text":"x numeric vector needs normalized 0-1 range. x matrix, normalization applied column-wise.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize Values to the 0-1 Range — norm01","text":"numeric vector values normalized 0-1 range. x matrix, function returns matrix columns normalized 0-1 range.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm01.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize Values to the 0-1 Range — norm01","text":"","code":"# Generate random values x <- rnorm(100) range(x) #> [1] -1.900061 2.564408 normed_x <- norm01(x) range(normed_x) # This should show values between 0 and 1 #> [1] 0 1"},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize a vector to a specified quantile — norm0q","title":"Normalize a vector to a specified quantile — norm0q","text":"function takes vector x normalizes specified quantile. normalization done subtracting minimum value x dividing result specified quantile x. Values greater 1 capped 1.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize a vector to a specified quantile — norm0q","text":"","code":"norm0q(x, quant = 0.99)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize a vector to a specified quantile — norm0q","text":"x numeric vector normalized quant quantile normalize (default 0.99)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize a vector to a specified quantile — norm0q","text":"normalized vector","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm0q.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize a vector to a specified quantile — norm0q","text":"","code":"x <- rnorm(100) normed_x <- norm0q(x) range(normed_x) # This should show values between 0 and 1 #> [1] 0 1"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize Energy Values of a Vector — norm_energy","title":"Normalize Energy Values of a Vector — norm_energy","text":"function normalizes energy values given vector. normalization process involves transforming energy values using exponential function, followed logarithm base 2. function scales values lie user-specified minimum energy q-th quantile initial energy values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize Energy Values of a Vector — norm_energy","text":"","code":"norm_energy(x, min_energy = -7, q = 1)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize Energy Values of a Vector — norm_energy","text":"x numeric vector containing energy values normalized. min_energy numeric value representing minimum energy value normalization. Default set -7. q numeric value 0 1, representing quantile energy values used maximum normalization. Default set 1 (max).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize Energy Values of a Vector — norm_energy","text":"numeric vector normalized energy values.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize Energy Values of a Vector — norm_energy","text":"","code":"# Generate random energy values x <- runif(n = 100, min = -11, max = 0) # Normalize the energy values norm_energy(x) #> [1] 0.0000000 1.7510064 0.0000000 2.1999360 5.0324659 4.7046640 5.3820270 #> [8] 0.0000000 0.5785698 5.6452978 0.0000000 3.4704537 2.9982590 4.9237030 #> [15] 6.8817897 0.0000000 6.7936218 1.6807474 0.0000000 0.0000000 0.0000000 #> [22] 1.0811420 0.0000000 1.3845202 2.6943816 1.1094402 0.0000000 1.9633541 #> [29] 1.7582626 0.0000000 0.0000000 2.1334769 5.3759993 3.0002508 0.0000000 #> [36] 0.0000000 0.0000000 0.0000000 0.5809605 0.0000000 3.1763567 0.1118413 #> [43] 1.4658960 0.0000000 6.1583792 1.7289254 0.0000000 0.0000000 7.0000000 #> [50] 0.0000000 0.0000000 3.7368619 1.8432438 0.0000000 5.9695994 0.0000000 #> [57] 1.5632755 0.0000000 3.1969100 4.8476089 4.9428020 4.1457761 0.0000000 #> [64] 4.0182657 5.4651457 0.9182832 0.0000000 6.0003541 1.1718340 0.0000000 #> [71] 5.6358062 3.5998753 0.0000000 0.0000000 0.0000000 0.0000000 0.0257006 #> [78] 0.0000000 4.1415158 6.4389581 0.0000000 0.0000000 6.9726246 0.0000000 #> [85] 0.0000000 0.0000000 0.0000000 0.0000000 0.0000000 3.1374177 6.5651625 #> [92] 2.0075307 0.0000000 0.0000000 0.0000000 1.3728656 0.0000000 5.4883894 #> [99] 3.8409082 0.0000000"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize Energy Matrix — norm_energy_matrix","title":"Normalize Energy Matrix — norm_energy_matrix","text":"function normalizes energy matrix applying logarithmic transformation scaling.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize Energy Matrix — norm_energy_matrix","text":"","code":"norm_energy_matrix(x, dataset_x, min_energy = -7, q = 1, norm_energy_max = 10)"},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize Energy Matrix — norm_energy_matrix","text":"x input matrix normalized. dataset_x reference dataset matrix used normalization. min_energy minimum energy value assigned normalization. Default -7. q quantile value used calculating maximum value reference dataset. Default 1. norm_energy_max maximum value normalized energy values scaled. Default 10.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize Energy Matrix — norm_energy_matrix","text":"normalized energy matrix dimensions input matrix.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/norm_energy_matrix.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Normalize Energy Matrix — norm_energy_matrix","text":"","code":"# Example usage: data <- matrix(rnorm(100), nrow = 10) normalized_data <- norm_energy_matrix(data, data, min_energy = -7, q = 1, norm_energy_max = 10) #> Warning: no non-missing arguments to max; returning -Inf"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute energies / response for a PBM on given sequences — pbm.compute","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"Compute energies / response PBM given sequences","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"","code":"pbm.compute( pbm, sequences, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"pbm PBM object sequences set sequences compute energies. response logical flag indicating whether compute response. Default FALSE. func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute energies / response for a PBM on given sequences — pbm.compute","text":"data frame containing computed energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute local PBM scores / response — pbm.compute_local","title":"Compute local PBM scores / response — pbm.compute_local","text":"function computes local energies given PBM set sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute local PBM scores / response — pbm.compute_local","text":"","code":"pbm.compute_local(pbm, sequences, response = FALSE, scaling_q = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute local PBM scores / response — pbm.compute_local","text":"pbm PBM object sequences vector DNA sequences response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.compute_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute local PBM scores / response — pbm.compute_local","text":"matrix computed local energies","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract PBM scores for genomic intervals — pbm.gextract","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"function extracts PBM scores given PBM genomic intervals optionally computes response.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"","code":"pbm.gextract( pbm, intervals, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"pbm PBM object intervals Genomic intervals extract response Logical, whether compute response (default FALSE) func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract PBM scores for genomic intervals — pbm.gextract","text":"intervals, additional column containing PBM scores / response","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract local PBM scores / response — pbm.gextract_local","title":"Extract local PBM scores / response — pbm.gextract_local","text":"function extracts local PBM scores genomic intervals optionally computes response.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract local PBM scores / response — pbm.gextract_local","text":"","code":"pbm.gextract_local(pbm, intervals, response = FALSE, scaling_q = 0.995)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract local PBM scores / response — pbm.gextract_local","text":"pbm PBM object intervals Genomic intervals extract response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.gextract_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract local PBM scores / response — pbm.gextract_local","text":"matrix extracted local energies / response","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize energies for a PBM — pbm.normalize_energies","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"function normalizes energies given PBM.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"","code":"pbm.normalize_energies( pbm, energies, max_energy = pbm@max_energy, min_energy = pbm@min_energy, energy_range = pbm@energy_range, norm_energy_max = 10 )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"pbm PBM object energies vector energy values normalize max_energy maximum energy value (default pbm@max_energy) min_energy minimum energy value (default pbm@min_energy) energy_range range energy values (default pbm@energy_range) norm_energy_max maximum value normalized energy (default 10)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize energies for a PBM — pbm.normalize_energies","text":"vector normalized energy values","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Normalize energies locally for a PBM — pbm.normalize_energies_local","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"function performs local normalization energies given PBM.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"","code":"pbm.normalize_energies_local(pbm, energies)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"pbm PBM object energies matrix local energy values normalize","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.normalize_energies_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Normalize energies locally for a PBM — pbm.normalize_energies_local","text":"matrix locally normalized energy values","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":null,"dir":"Reference","previous_headings":"","what":"Trim a PBM — pbm.trim_pssm","title":"Trim a PBM — pbm.trim_pssm","text":"function trims PBM object removing positions low information content.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Trim a PBM — pbm.trim_pssm","text":"","code":"pbm.trim_pssm(pbm, bits_thresh = 0.1)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Trim a PBM — pbm.trim_pssm","text":"pbm PBM object bits_thresh threshold trimming positions (default 0.1)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm.trim_pssm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Trim a PBM — pbm.trim_pssm","text":"trimmed PBM object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"function computes energies list PBMs given sequences.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"","code":"pbm_list.compute( pbm_list, sequences, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"pbm_list list PBM objects sequences set sequences compute energies. response logical flag indicating whether compute response. Default FALSE. func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute energies / response for a list of PBMs on given sequences — pbm_list.compute","text":"matrix containing computed energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"function extracts local PBM scores sequences optionally computes response list PBMs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"","code":"pbm_list.compute_local(pbm_list, sequences, response = FALSE, scaling_q = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"pbm_list list PBM objects sequences vector DNA sequences response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.compute_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract local PBM scores / response for a list of PBMs given sequences — pbm_list.compute_local","text":"list matrices containing extracted local energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"function extracts PBM scores genomic intervals optionally computes response list PBMs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"","code":"pbm_list.gextract( pbm_list, intervals, response = FALSE, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"pbm_list list PBM objects intervals Genomic intervals extract response Logical, whether compute response (default FALSE) func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract PBM scores / response for a list of PBMs — pbm_list.gextract","text":"intervals, additional column containing PBM scores / response PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"function extracts local PBM scores genomic intervals optionally computes response list PBMs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"","code":"pbm_list.gextract_local( pbm_list, intervals, response = FALSE, scaling_q = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"pbm_list list PBM objects intervals Genomic intervals extract response Logical, whether compute response (default FALSE) scaling_q Scaling quantile normalization (default NULL)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.gextract_local.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract local PBM scores / response for a list of PBMs — pbm_list.gextract_local","text":"list matrices containing extracted local energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":null,"dir":"Reference","previous_headings":"","what":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"Compute energy list pbm lists (multiple trajectories)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"","code":"pbm_list.multi_traj.compute_energy( multi_traj, sequences, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"multi_traj list PBM lists sequences set sequences compute energies. func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.compute_energy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Compute energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.compute_energy","text":"matrix containing computed energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":null,"dir":"Reference","previous_headings":"","what":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"Extract energy list pbm lists (multiple trajectories)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"","code":"pbm_list.multi_traj.gextract_energy( multi_traj, intervals, func = \"logSumExp\", normalize_energies = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"multi_traj list PBM lists intervals Genomic intervals extract func function use combine PWMs sequence. Either 'logSumExp' 'max'. default 'logSumExp'. normalize_energies logical flag indicating whether normalize energies range 0-10. Default TRUE. Note response computation requires normalized energies.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.multi_traj.gextract_energy.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Extract energy for a list of pbm lists (multiple trajectories) — pbm_list.multi_traj.gextract_energy","text":"matrix containing computed energies PBM","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":null,"dir":"Reference","previous_headings":"","what":"Trim a list of PBMs — pbm_list.trim_pssm","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"Trim list PBMs","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"","code":"pbm_list.trim_pssm(pbm_list, bits_thresh = 0.1)"},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"pbm_list list PBM objects bits_thresh threshold trimming positions (default 0.1)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pbm_list.trim_pssm.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Trim a list of PBMs — pbm_list.trim_pssm","text":"list trimmed PBM objects","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":null,"dir":"Reference","previous_headings":"","what":"Pipe operator — %>%","title":"Pipe operator — %>%","text":"See magrittr::%>% details.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Pipe operator — %>%","text":"","code":"lhs %>% rhs"},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Pipe operator — %>%","text":"lhs value magrittr placeholder. rhs function call using magrittr semantics.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/pipe.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Pipe operator — %>%","text":"result calling rhs(lhs).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot IQ Locus — plot_iq_locus","title":"Plot IQ Locus — plot_iq_locus","text":"function generates plot IQ locus, including DNA sequence, motif responses, ATAC-seq tracks.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot IQ Locus — plot_iq_locus","text":"","code":"plot_iq_locus( interval, pbm_list, atac_tracks, width = 500, ext_width = 200000, T_emax = 8, T_rmax = NULL, motifs = NULL, plot_others = FALSE, trim_pbms = TRUE, trim_bits_thresh = 0.1, bits_threshold = NULL, order_motifs = TRUE, atac_names = atac_tracks, atac_colors = NULL, atac_sizes = NULL, line_thresh = 0.9, title = NULL, score = NULL, predicted_score = NULL, dna = NULL, norm_q = 0.995, tracks_q = NULL, iterator = 20, norm_intervals = gintervals.all(), atac_smooth = 2, ext_atac_smooth = atac_smooth * 5, tn5bias_track = \"tn5bias\", normalize_tn5bias = TRUE, tss_intervals = \"intervs.global.tss\", exon_intervals = \"intervs.global.exon\", annot_track = NULL, annot_track_name = NULL, annot_colors = c(\"#FF9800\", \"#009688\"), annot_track_iterator = 1, annot_track_smooth = 1, annot_intervals = NULL, annot_intervals_color = \"darkgreen\", mark_conservation = FALSE, conservation_threshold = 1.5, scale_cex = 500, dna_height = 0.03, filename = NULL, dev = grDevices::pdf, plot_width = 15, plot_height = 8, base_size = 8, base_family = \"ArialMT\", rasterize = FALSE, raster_device = \"ragg\", ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot IQ Locus — plot_iq_locus","text":"interval genomic interval plot. pbm_list list PBM objects. atac_tracks vector ATAC-seq track names plot. width Width plot bp. ext_width Width top plot bp. T_emax Numeric, threshold maximum energy. T_rmax Numeric, threshold maximum response. motifs list specific motifs plot. plot_others Logical, whether plot motifs pass threshold specific motifs provided. trim_pbms Logical, whether trim PBM objects removing positions low information content beginning end PSSM. trim_bits_thresh Numeric, threshold trimming PBM objects. bits_threshold Numeric, threshold trimming PSSMs. order_motifs Logical, whether order motifs maximum response. atac_names Character vector, names ATAC-seq tracks. atac_colors Named vector, colors ATAC-seq tracks. atac_sizes Named vector, line sizes ATAC-seq tracks. line_thresh Numeric, threshold drawing vertical lines. title Character, optional title plot. score Numeric, optional score display plot title. predicted_score Numeric, optional predicted score display plot title. dna Character, DNA sequence plot. NULL, sequence extracted interval. norm_q Numeric, quantile normalization. vector, length atac_names. tracks_q Data frame, pre-computed quantiles tracks. 'type' column 'q' column. iterator Numeric, iterator gextract. norm_intervals Genomic intervals normalization. atac_smooth Numeric, smoothing factor ATAC-seq tracks. ext_atac_smooth Numeric, smoothing factor top plot. tn5bias_track Character, name Tn5 bias track. normalize_tn5bias Logical, whether normalize using TN5 bias track. vector, length atac_names. tss_intervals Character, name TSS intervals track. exon_intervals Character, name exon intervals track. annot_track Character, name annotation track. annot_track_name Character, display name annotation track. annot_colors Named vector, colors annotation track. annot_track_iterator Numeric, iterator annotation track extraction. annot_track_smooth Numeric, smoothing factor annotation track. annot_intervals Genomic intervals annotation (start positions used). annot_intervals_color Color annotation intervals. mark_conservation Logical, whether mark conservation DNA sequence. conservation_threshold Numeric, threshold marking conservation. scale_cex Numeric, scaling factor letter sizes. dna_height Numeric, height row DNA sequence relative entire plot. filename Character, output filename (NULL, plot saved). dev Function, device use plotting. plot_width Numeric, width output plot. plot_height Numeric, height output plot. base_size Numeric, base font size plot. base_family Character, base font family plot. rasterize Logical, whether rasterize certain plot elements better performance. raster_device Character, device use rasterization. ... additional arguments pass plotting function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_iq_locus.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot IQ Locus — plot_iq_locus","text":"ggplot object containing IQ locus plot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"function plots boxplot ATAC difference (response) energy levels given motif. subtitle=NULL, subtitle set kologorov-smirnov test lowest (0-3) highest (9-10) energy levels.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"","code":"plot_motif_energy_vs_response_boxplot( traj_model, motif, xlab = paste(motif, \"energy\"), ylab = \"ATAC difference\", ylim = c(-0.5, 0.5), fill = \"lightblue1\", title = \"\", subtitle = NULL, outliers = TRUE )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"traj_model trajectory model object. motif motif plot energy levels . xlab label x-axis (default motif name followed \"energy\"). ylab label y-axis (default \"ATAC difference\"). ylim limits y-axis (default -0.5 0.5). fill fill color boxplot (default \"lightblue1\"). title title plot. subtitle subtitle plot (default kologorov-smirnov test lowest highest energy levels). color subtitle set \"darkred\" p-value less 0.01. outliers Whether plot outliers (default TRUE).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_energy_vs_response_boxplot.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot Motif Energy vs Response Boxplot — plot_motif_energy_vs_response_boxplot","text":"ggplot object representing boxplot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot motif spatial frequency — plot_motif_spatial_freq","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"function plots spatial frequency given motif across genomic positions.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"","code":"plot_motif_spatial_freq( spatial_freqs, motif, smooth = 10, plot_atac = FALSE, linewidth = 1 )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"spatial_freqs data frame containing spatial frequency motifs /ATAC-seq peaks. Output compute_traj_model_spatial_freq. motif string specifying motif plot. smooth integer specifying window size smoothing frequency values. plot_atac logical indicating whether plot ATAC-seq frequency instead motif frequency. linewidth width line plot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_motif_spatial_freq.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot motif spatial frequency — plot_motif_spatial_freq","text":"ggplot object showing spatial frequency given motif.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot multi-trajectory model report — plot_multi_traj_model_report","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"function plots report multi-trajectory model. report includes motifs, spatial models, partial responses trajectory model type \"pr\". type \"boxp\", function plot boxplots energy vs response motif. type \"spat\", function plot spatial distribution motifs.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"","code":"plot_multi_traj_model_report( multi_traj, filename = NULL, width = NULL, height = NULL, dev = grDevices::pdf, title = NULL, use_full = FALSE, names_map = NULL, type = \"pr\", ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"multi_traj TrajectoryModelMulti object. filename Optional. name output file. provided, plot displayed screen. width Optional. width output plot inches. height Optional. height output plot inches. dev Optional. graphics device use output. Default 'pdf'. title Optional. title plot. use_full Optional. Whether use models motifs . Default FALSE. names_map named vector map names motifs new names. type Optional. type plot, can \"pr\", \"boxp\" \"spat\". Default \"pr\". ... Additional arguments passed plotting function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_multi_traj_model_report.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot multi-trajectory model report — plot_multi_traj_model_report","text":"ggplot2 object (invsibly filename provided).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot Partial Response — plot_partial_response","title":"Plot Partial Response — plot_partial_response","text":"function plots partial response given trajectory model motif.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot Partial Response — plot_partial_response","text":"","code":"plot_partial_response( traj_model, motif, ylim = NULL, xlab = \"Energy\", ylab = \"Partial response\", pointsize = 3 )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot Partial Response — plot_partial_response","text":"traj_model trajectory model object. motif motif plot partial response . ylim y-axis limits plot (optional). xlab label x-axis (optional, default \"Energy\"). ylab label y-axis (optional, default \"Partial response\"). pointsize size points scatter plot (optional, default 3).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_partial_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot Partial Response — plot_partial_response","text":"ggplot object representing partial response plot.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"function takes trajectory model plots boxplot observed vs predicted ATAC differences. plot grouped observed ATAC difference, divided n_groups quantiles.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"","code":"plot_prediction_boxplot(traj_model, n_groups = 5)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"traj_model trajectory model object n_groups number groups divide observed ATAC difference ","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_boxplot.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot a boxplot of observed vs predicted ATAC differences — plot_prediction_boxplot","text":"ggplot object representing boxplot","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"Plot scatter plot observed vs predicted ATAC difference","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"","code":"plot_prediction_scatter(traj_model, type = NULL, point_size = 1, alpha = 0.5)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"traj_model Trajectory model object. Please run regress_trajectory_motifs first. type \"train\" \"test\". NULL - \"test\" used available, otherwise \"train\". point_size Size points. alpha Transparency points.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_prediction_scatter.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot scatter plot of observed vs predicted ATAC difference — plot_prediction_scatter","text":"ggplot2 object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot trajectory model clusters report — plot_traj_model_clusters_report","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"Plot trajectory model clusters report","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"","code":"plot_traj_model_clusters_report(traj_model, dir, k = 10, spatial_freqs = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"traj_model trajectory model object dir directory save report files k Number clusters split heatmap spatial_freqs vector spatial frequencies plot. Use compute_traj_model_spatial_freq compute.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_clusters_report.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot trajectory model clusters report — plot_traj_model_clusters_report","text":"None. file called heatmap.png heatmap file called motifs_report.pdf motifs report saved directory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot a report of trajectory motifs — plot_traj_model_report","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"Plot report trajectory motifs","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"","code":"plot_traj_model_report( traj_model, filename = NULL, motif_num = NULL, free_coef_axis = TRUE, spatial_freqs = NULL, width = NULL, height = NULL, dev = grDevices::pdf, title = NULL, motif_titles = NULL, sort_motifs = TRUE, names_map = NULL, boxp_ylim = c(-0.5, 0.5), ... )"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"traj_model Trajectory model object. Please run regress_trajectory_motifs first. filename Filename save plot . NULL, plot returned. motif_num Number motifs plot. NULL, motifs plotted. free_coef_axis Whether use free axis coefficient plots. spatial_freqs Pre-computed spatial frequencies plot. Use compute_traj_model_spatial_freq compute. width Width plot. height Height plot. dev Device use saving plot. Default: grDevices::pdf. title Title plot. motif_titles Titles motifs. NULL, motif names used. sort_motifs Whether sort motifs absolute value coefficients / r2 values. names_map named vector map names motifs new names. boxp_ylim ylimits boxplot energy vs response. ... Additional arguments pass device.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_traj_model_report.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot a report of trajectory motifs — plot_traj_model_report","text":"ggplot2 object. filename NULL, plot saved file function return invisible(NULL).","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":null,"dir":"Reference","previous_headings":"","what":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"Plot scatter variable vs ATAC difference","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"","code":"plot_variable_vs_response(traj_model, variable, point_size = 0.5)"},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"traj_model Trajectory model object. Please run regress_trajectory_motifs first. variable Variable plot. point_size Size points.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/plot_variable_vs_response.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Plot scatter of a variable vs ATAC difference — plot_variable_vs_response","text":"ggplot2 object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Predict method for IQmodel — predict,IQmodel-method","title":"Predict method for IQmodel — predict,IQmodel-method","text":"method makes predictions using IQmodel object new data.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Predict method for IQmodel — predict,IQmodel-method","text":"","code":"# S4 method for IQmodel predict( object, new_data = NULL, intervals = NULL, sequences = NULL, pbm_responses = NULL, iq_responses = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Predict method for IQmodel — predict,IQmodel-method","text":"object IQmodel object new_data Optional data frame matrix new data IQ features intervals Optional genomic intervals sequences Optional DNA sequences pbm_responses Optional pre-computed PBM responses iq_responses Optional pre-computed IQ responses","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-IQmodel-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Predict method for IQmodel — predict,IQmodel-method","text":"vector normalized rescaled predictions","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"Computes predicted differential accessibility score start end trajectory.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"","code":"# S4 method for TrajectoryModel predict(object, peak_intervals, additional_features = NULL)"},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"object instance TrajectoryModel. peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak predict. additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/predict-TrajectoryModel-method.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Predict TrajectoryModel on new data — predict,TrajectoryModel-method","text":"numeric vector predicted differential accessibility scores.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":null,"dir":"Reference","previous_headings":"","what":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"function performs motif regression ATAC trajectories. can work either ATAC scores trajectory bins directly differential accessibility. basic inputs regression genomic positions peaks, two vectors ATAC scores (atac_scores matrix) differential accessibility (atac_diff), database energies computed genomics positions. Optionally, additional features epigenomic features can provided.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"","code":"regress_trajectory_motifs( peak_intervals, atac_scores = NULL, atac_diff = NULL, normalize_bins = TRUE, norm_intervals = NULL, max_motif_num = 30, n_clust_factor = 1, motif_energies = NULL, norm_motif_energies = NULL, pssm_db = iceqream::motif_db, additional_features = NULL, min_tss_distance = 5000, bin_start = 1, bin_end = NULL, min_initial_energy_cor = 0.05, normalize_energies = TRUE, energy_norm_quantile = 1, norm_energy_max = 10, n_prego_motifs = 0, traj_prego = NULL, min_diff = 0.1, distill_on_diff = FALSE, prego_sample_for_kmers = TRUE, prego_sample_fraction = 0.1, seed = 60427, feature_selection_beta = 0.003, lambda = 0.00001, alpha = 1, filter_using_r2 = FALSE, r2_threshold = 0.0005, parallel = TRUE, peaks_size = 500, spat_num_bins = NULL, spat_bin_size = 2, kmer_sequence_length = 300 )"},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"peak_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peak, additional column named \"const\" indicating whether peak constitutive. Optionally, column named \"cluster\" can added indication cluster peak. atac_scores Optional. numeric matrix, representing mean ATAC score per bin per peak. Rows: peaks, columns: bins. default iceqream regress last column minus first column. want regress something else, please either set bin_start bin_end, provide atac_diff instead. normalize_bins TRUE, scores normalized 0 1. atac_diff Optional. numeric vector representing differential accessibility start end trajectory. Either atac_scores must provided. normalize_bins whether normalize ATAC scores 0 1. Default: TRUE norm_intervals data frame, indicating genomic positions ('chrom', 'start', 'end') peaks used energy normalization. NULL, function use peak_intervals normalization. max_motif_num maximum number motifs consider. Default: 50 n_clust_factor factor divide number keep clustering. e.g. n_clust_factor > 1 number motifs keep reduced factor n_clust_factor. Default: 1 motif_energies numeric matrix, representing energy motif peak. NULL, function use pssm_db calculate motif energies. Note might take . norm_motif_energies numeric matrix, representing normalized energy motif interval norm_intervals. NULL, function use pssm_db calculate motif energies. Note might take . pssm_db data frame PSSMs ('', 'C', 'G' 'T' columns), additional column 'motif' containing motif name. motifs motif_energies (column names) present 'motif' column. Default: motifs prego package. additional_features data frame, representing additional genomic features (e.g. CpG content, distance TSS, etc.) peak. Note NA values replaced 0. min_tss_distance distance Transcription Start Site (TSS) classify peak enhancer. Default: 5000. NULL, filtering performed - use option peaks already filtered. Note order filter peaks close TSS, current misha genome must intervals set called intervs.global.tss. bin_start start trajectory. Default: 1 bin_end end trajectory. Default: last bin (used atac_scores provided) min_initial_energy_cor minimal correlation motif normalized energy ATAC difference. normalize_energies whether normalize motif energies. Set FALSE motif energies already normalized. energy_norm_quantile quantile energy used normalization. Default: 1 norm_energy_max maximum value normalized energy. Default: 10 n_prego_motifs number prego motifs (de-novo motifs) consider. traj_prego output learn_traj_prego. provided, additional prego models inferred. min_diff minimal ATAC difference peak participate initial prego motif inference distillation step (distill_on_diff TRUE). distill_on_diff whether distill motifs based differential accessibility. FALSE, peaks used distillation, TRUE - peaks differential accessibility >= min_diff used. prego_sample_for_kmers whether use sample peaks kmer screening. Default: TRUE prego_sample_fraction Fraction peaks sample prego motif inference. smaller number faster might lead -fitting. Default: 0.1 seed random seed reproducibility. feature_selection_beta beta parameter used feature selection. lambda user supplied lambda sequence. Typical usage program compute lambda sequence based nlambda lambda.min.ratio. Supplying value lambda overrides . WARNING: use care. Avoid supplying single value lambda (predictions CV use predict() instead). Supply instead decreasing sequence lambda values. glmnet relies warms starts speed, often faster fit whole path compute single fit. alpha elasticnet mixing parameter, \\(0\\le\\alpha\\le 1\\). penalty defined $$(1-\\alpha)/2||\\beta||_2^2+\\alpha||\\beta||_1.$$ alpha=1 lasso penalty, alpha=0 ridge penalty. filter_using_r2 whether filter features using R^2. r2_threshold minimal R^2 feature included model. parallel whether use parallel processing glmnet. peaks_size size peaks extract sequences . Default: 300bp spat_num_bins number spatial bins use. spat_bin_size size spatial bin. kmer_sequence_length length kmer sequence use kmer screening. default full sequence used.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/regress_trajectory_motifs.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Perform motif regression on ATAC trajectories. — regress_trajectory_motifs","text":"instance TrajectoryModel containing model information results: model: final General Linear Model (GLM) object. motif_models: Named List, PSSM spatial models motif cluster. normalized_energies: Numeric vector, normalized energies motif peak. additional_features: data frame additional features. diff_score: Numeric, normalized score differential accessibility 'bin_start' 'bin_end'. predicted_diff_score: Numeric, predicted differential accessibility score 'bin_start' 'bin_end'. initial_prego_models: List, inferred prego models initial step algorithm. peak_intervals: data frame, indicating genomic positions ('chrom', 'start', 'end') peak used training.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":null,"dir":"Reference","previous_headings":"","what":"Relearn Trajectory Model — relearn_traj_model","title":"Relearn Trajectory Model — relearn_traj_model","text":"function relearns trajectory model using glmnet package, without re-inferring motif models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Relearn Trajectory Model — relearn_traj_model","text":"","code":"relearn_traj_model( traj_model, new_energies = FALSE, new_logist = FALSE, lambda = NULL, use_additional_features = TRUE, use_motifs = TRUE, verbose = FALSE )"},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Relearn Trajectory Model — relearn_traj_model","text":"traj_model trajectory model object. new_energies TRUE - recreate energies. Default FALSE. new_logist TRUE - recreate logistic features. Default FALSE. new_energies TRUE, automatically set TRUE. lambda lambda value use relearning. NULL, lambda value trajectory model used. use_additional_features logical value indicating whether use additional features. Default TRUE. use_motifs logical value indicating whether use motif models. Default TRUE. verbose Logical indicating whether display additional information.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/relearn_traj_model.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Relearn Trajectory Model — relearn_traj_model","text":"updated trajectory model object.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":null,"dir":"Reference","previous_headings":"","what":"Remove motif models from trajectory model — remove_motif_models_from_traj","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"function removes specified motif models given trajectory model. updates model, motif models, predicted difference score, model features, coefficients, normalized energies, features R^2 trajectory model.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"","code":"remove_motif_models_from_traj(traj_model, motif_models, verbose = TRUE)"},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"traj_model trajectory model object remove motif models . motif_models character vector specifying names motif models remove. verbose logical value indicating whether display information R^2 removing motif models. Default TRUE.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/remove_motif_models_from_traj.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Remove motif models from trajectory model — remove_motif_models_from_traj","text":"updated trajectory model object removing motif models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":null,"dir":"Reference","previous_headings":"","what":"Rename motif models in a trajectory model — rename_motif_models","title":"Rename motif models in a trajectory model — rename_motif_models","text":"function renames motif models trajectory model based provided names_map. names_map named character vector names current names motif models values new names.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rename motif models in a trajectory model — rename_motif_models","text":"","code":"rename_motif_models(traj_model, names_map)"},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rename motif models in a trajectory model — rename_motif_models","text":"traj_model trajectory model object modify. names_map named character vector specifying mapping current motif model names new names. Can generated using match_traj_model_motif_names function.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rename_motif_models.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rename motif models in a trajectory model — rename_motif_models","text":"modified trajectory model object renamed motif models.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":null,"dir":"Reference","previous_headings":"","what":"Rescale Values Based on Original Scale Factors — rescale","title":"Rescale Values Based on Original Scale Factors — rescale","text":"function applies reverse operation normalization numeric vector x based scale factors derived original vector orig_x. effectively attempts map values x back original scale applying inverse operations scaling translation based minimum maximum values found orig_x. process involves scaling x maximum value (subtracting minimum value) orig_x adding minimum value orig_x element.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Rescale Values Based on Original Scale Factors — rescale","text":"","code":"rescale(x, orig_x)"},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Rescale Values Based on Original Scale Factors — rescale","text":"x numeric vector needs rescaled original range. orig_x original numeric vector scale factors derived.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Rescale Values Based on Original Scale Factors — rescale","text":"numeric vector values rescaled original range based scale factors orig_x.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/rescale.html","id":"ref-examples","dir":"Reference","previous_headings":"","what":"Examples","title":"Rescale Values Based on Original Scale Factors — rescale","text":"","code":"# Generate random values and normalize orig_x <- rnorm(100) normed_x <- norm01(orig_x) # Rescale normalized values back to original range rescaled_x <- rescale(normed_x, orig_x) range(rescaled_x) # This should closely match the range of orig_x #> [1] -2.808011 2.654898 range(orig_x) #> [1] -2.808011 2.654898"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeature-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQFeature — show,IQFeature-method","title":"Show method for IQFeature — show,IQFeature-method","text":"method defines IQFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeature-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQFeature — show,IQFeature-method","text":"","code":"# S4 method for IQFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeature-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQFeature — show,IQFeature-method","text":"object IQFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeatureGroup-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","title":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","text":"method defines IQFeatureGroup object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeatureGroup-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","text":"","code":"# S4 method for IQFeatureGroup show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQFeatureGroup-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQFeatureGroup — show,IQFeatureGroup-method","text":"object IQFeatureGroup object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQSeqFeature-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQSeqFeature — show,IQSeqFeature-method","title":"Show method for IQSeqFeature — show,IQSeqFeature-method","text":"method defines IQSeqFeature object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQSeqFeature-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQSeqFeature — show,IQSeqFeature-method","text":"","code":"# S4 method for IQSeqFeature show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQSeqFeature-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQSeqFeature — show,IQSeqFeature-method","text":"object IQSeqFeature object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQmodel-method.html","id":null,"dir":"Reference","previous_headings":"","what":"Show method for IQmodel — show,IQmodel-method","title":"Show method for IQmodel — show,IQmodel-method","text":"method defines IQmodel object displayed.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQmodel-method.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Show method for IQmodel — show,IQmodel-method","text":"","code":"# S4 method for IQmodel show(object)"},{"path":"https://tanaylab.github.io/iceqream/reference/show-IQmodel-method.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Show method for IQmodel — show,IQmodel-method","text":"object IQmodel object","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":null,"dir":"Reference","previous_headings":"","what":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"function takes trajectory model splits train test sets.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"","code":"split_traj_model_to_train_test(traj_model)"},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"traj_model trajectory model split","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/split_traj_model_to_train_test.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Split a trajectory model into train and test sets — split_traj_model_to_train_test","text":"list train test sets","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":null,"dir":"Reference","previous_headings":"","what":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"function takes trajectory model object converts additional features list IQ features.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"","code":"traj_model_to_iq_feature_list(traj_model)"},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"traj_model trajectory model object convert.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_iq_feature_list.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Convert trajectory model to IQ feature list — traj_model_to_iq_feature_list","text":"list IQ features, feature contains feature name corresponding coefficients.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":null,"dir":"Reference","previous_headings":"","what":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"function takes trajectory model converts list PBM objects.","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":"ref-usage","dir":"Reference","previous_headings":"","what":"Usage","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"","code":"traj_model_to_pbm_list( traj_model, func = \"logSumExp\", normalization_intervals = traj_model@normalization_intervals, bits_threshold = NULL )"},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":"arguments","dir":"Reference","previous_headings":"","what":"Arguments","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"traj_model trajectory model object func function use computing energies \"logSumExp\" \"max\". Default \"logSumExp\" normalization_intervals normalization intervals use computing energies. Default normalization intervals trajectory model. bits_threshold threshold trimming PSSM (default NULL, trimming)","code":""},{"path":"https://tanaylab.github.io/iceqream/reference/traj_model_to_pbm_list.html","id":"value","dir":"Reference","previous_headings":"","what":"Value","title":"Convert a trajectory model to a list of PBM objects — traj_model_to_pbm_list","text":"list PBM objects","code":""}] diff --git a/vignettes/articles/iceqream.Rmd b/vignettes/articles/iceqream.Rmd index 2420a7e..42c684c 100644 --- a/vignettes/articles/iceqream.Rmd +++ b/vignettes/articles/iceqream.Rmd @@ -1,11 +1,12 @@ --- -title: "iceqream" +title: "IceQream" resource_files: - gastrulation-example/peak_intervals.tsv - gastrulation-example/atac_scores.rds - gastrulation-example/additional_features.rds - gastrulation-example/gastrulation_intervals.tsv - gastrulation_energies.rds + - model_report.pdf - mm10 --- @@ -16,6 +17,17 @@ knitr::opts_chunk$set( ) ``` + + +## Introduction +IceQream (Interpretable Computational Engine for Quantitative Regression of Enhancer ATAC Motifs) is a package for regressing accessibility from DNA sequences. It models TF effective concentrations as latent variables that activate or repress regulatory elements in a nonlinear fashion, with possible contribution from pairwise interactions and synergistic chromosomal domain effects. + +This vignette demonstrates how to use IceQream to analyze chromosome accessibility data, specifically focusing on a mouse gastrulation trajectory from Epiblast to Early nascent mesoderm. This analysis can help identify key regulatory elements and transcription factors involved in cellular differentiation processes, and understand quantitatively how they contribute to the observed changes in chromatin accessibility. + +## Setup and Data Preparation + +First, let's load the necessary packages and set up our environment: + ```{r setup} library(iceqream) library(misha) @@ -23,13 +35,7 @@ library(misha.ext) options(timeout = 2 * 60 * 60) # allow 2 hours for loading large files ``` -# Running IceQream on a mouse gastrulation trajectory - -In this example we will run IceQream on a mouse gastrulation trajectory, Epiblast to Early nascent mesoderm. This is one of the datasets used in the original IceQream paper. - -## Download data - -### Create a `misha` genome +### Creating a `misha` genome We will start by creating a misha database for mm10 genome. If you already have an `mm10` misha database you can skip this part and load the genome using `gsetroot("path/to/mm10")`. @@ -41,11 +47,11 @@ gdb.create_genome("mm10") gsetroot("mm10") ``` -### Download the example files +### Downloading Example Data -The basic inputs for an iceqream regression are genomic positions of peaks and two vectors of ATAC scores. Optionally, additional features such as epigenomic features can be provided. We will download these files for the Epiblast to Early nascent mesoderm trajectory during mouse gastrulation. +See [below](#running-iceqream-on-your-own-data) for minimal instructions on how to use IceQream on your own data. - +For this tutorial, we'll use pre-prepared data from a mouse gastrulation trajectory. Let's download and load this data: ```{r download_data, eval=FALSE} download.file("https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation-example.tar.gz", "gastrulation-example.tar.gz") @@ -56,73 +62,60 @@ untar("gastrulation-example.tar.gz") peak_intervals <- readr::read_tsv("gastrulation-example/peak_intervals.tsv", show_col_types = FALSE) atac_scores <- readr::read_rds("gastrulation-example/atac_scores.rds") additional_features <- readr::read_rds("gastrulation-example/additional_features.rds") - normalization_intervals <- readr::read_tsv("gastrulation-example/gastrulation_intervals.tsv", show_col_types = FALSE) ``` -We loaded the following objects: - -- `peak_intervals`: A data frame with genomic positions of peaks. +Let's examine the structure of our input data: -```{r peak_intervals} +```{r examine_data} +# Peak intervals +print("Peak Intervals:") head(peak_intervals) -nrow(peak_intervals) -``` - -- `atac_scores`: A matrix with ATAC scores for each peak at the different bins of the trajectory. We will regress the last bin (bin4) vs the first bin (bin1). +print(paste("Number of peaks:", nrow(peak_intervals))) -```{r atac_scores} +# ATAC scores +print("\nATAC Scores:") head(atac_scores) -nrow(atac_scores) -``` +print(paste("Number of peaks:", nrow(atac_scores))) +print(paste("Number of bins:", ncol(atac_scores))) -- `additional_features`: A data frame with additional features for each peak. This is optional. - -```{r additional_features} +# Additional features +print("\nAdditional Features:") head(additional_features) -nrow(additional_features) +print(paste("Number of peaks:", nrow(additional_features))) +print(paste("Number of features:", ncol(additional_features))) ``` -In addition, we loaded a set of genomic intervals that will be used for motif energy normalization. These intervals are all the peaks including the ones that are close to TSSs. - -## Compute motif energies +The `peak_intervals` dataframe contains the genomic positions of accessibility peaks. The `atac_scores` matrix contains ATAC-seq signal intensities for each peak across different stages of the trajectory. `additional_features` includes extra genomic features for each peak. -The first step in the IceQream pipeline is to compute motif energies for each motif model and each peak. This process is computationally intensive as we are computing the energy for 21862 motifs collected from HOMER, JASPAR, Jolma et al., HOCOMOCO and SCENIC databases. - -```{r number_of_motifs} -length(unique(motif_db$motif)) -``` +## Computing Motif Energies -Calculation is done by: +The first step in the IceQream pipeline is to compute motif energies for each transcription factor model and each peak. This process is computationally intensive, as it calculates energies for over 20,000 motifs from various databases. ```{r compute_motif_energies, eval=FALSE} -# motif_energies <- compute_motif_energies(peak_intervals, motif_db, normalization_intervals = normalization_intervals) -``` - -If you want to start with a less computationally intensive example, you can use the the scenic clusters (1615) instead of the full motif database. This will still take ~10-15 minutes, and the performance will be significantly lower. - -```{r compute_motif_energies_scenic, eval=FALSE} -# motif_energies <- compute_motif_energies(peak_intervals, motif_db_scenic_clusters, normalization_intervals = normalization_intervals) +motif_energies <- compute_motif_energies(peak_intervals, motif_db, normalization_intervals = normalization_intervals) ``` -In any case, we will load the precomputed motif energies for this example. Note that the full matrix requires ~23GB of RAM. +For this tutorial, we'll use pre-computed motif energies: -```{r download_motif_energies, eval=FALSE} +```{r load_motif_energies, eval=FALSE} download.file("https://iceqream.s3.eu-west-1.amazonaws.com/gastrulation_energies.tar.gz", "gastrulation_energies.tar.gz") untar("gastrulation_energies.tar.gz") ``` -Load the motif energies: - -```{r load_motif_energies} +```{r load_precomputed_energies} motif_energies <- readr::read_rds("gastrulation_energies.rds") motif_energies <- motif_energies[peak_intervals$peak_name, ] -dim(motif_energies) +print(paste("Motif energy matrix dimensions:", paste(dim(motif_energies), collapse = " x "))) ``` -## Run IceQream +For a less memory and computationally intensive analysis, you can use the SCENIC motif clusters instead of all motifs (See [Performance Considerations](#performance-considerations) section). + +## Running IceQream + +Now we're ready to run the IceQream regression: -We will now run IceQream on the gastrulation trajectory: +This takes ~25 minutes on a 40 core machine with 256GB of RAM. ```{r run_iceqream, cache=TRUE} traj_model <- iq_regression( @@ -137,25 +130,102 @@ traj_model <- iq_regression( ) ``` -The result is a `TrajectoryModel` object that contains the regression results and the model report: +Let's examine the output: -```{r traj_model} -traj_model +```{r examine_output} +print(traj_model) ``` -## Plot results +The `TrajectoryModel` object contains components such as the regression model, motif models, and predicted accessibility scores. -We can plot the performance of the model: + +## Visualizing Results + +Let's start with a scatter plot of observed vs. predicted accessibility changes: ```{r prediction_scatter, fig.width=7, fig.height=7} plot_prediction_scatter(traj_model) ``` -And the model report: +This plot shows how well our model predicts accessibility changes. Points closer to the diagonal line indicate better predictions. We measure the accuracy of the model using the coefficient of determination (R^2). + +### Model report + +Next, let's look at the model report, which provides detailed information about the motifs and their contributions: + +```{r plot_report, eval = FALSE} +plot_traj_model_report(traj_model, filename = "model_report.pdf") +``` + +```{r show_report} +knitr::include_graphics("model_report.pdf") +``` + +### Interpreting the trajectory model report + +The model report provides several key pieces of information (from left to right): + +1. Motif logos show the inferred sequence preferences for each transcription factor model. +2. Response curves show how the accessibility changes as a function of binding energy for each TF. +3. Barplots show the coefficient of each non-linear term of every motif in the model. +4. Spatial model curves show the parameters of the spatial model for each TF. The R² values indicate the predictive power each TF adds to the model. +5. Spatial curves show the frequencey of each TF binding site along the peaks from the bottom 10% (blue) and top 10% (red) of the differential accessibility (dAP) distribution. +6. Boxplots show the distribution of ATAC differences (dAP, y-axis) for bins of binding energy (x-axis) for each TF. + +## Renaming the motif models + +You can rename the motif models to more informative names, either manually using `rename_motif_models` or automatically using `match_traj_model_motif_names`: + +```{r rename_motif_models} +names_map <- match_traj_model_motif_names(traj_model) +names_map +traj_model <- rename_motif_models(traj_model, names_map) +``` + +## Exporting the model + +You can export the minimal model representation to a list of PBM in order to use infer it on new data: + +```{r export_model} +pbm_list <- traj_model_to_pbm_list(traj_model) +pbm_list +``` + +You can now use `pbm_list.compute` or `pbm_list.gextract` to infer the model on new data: + +```{r infer_model} +new_intervals <- data.frame( + chrom = rep("chr1", 3), + start = c(3671720, 4412460, 4493400), + end = c(3672020, 4412760, 4493700) +) +pbm_list.gextract(pbm_list, new_intervals) + +# directly compute on sequences +seqs <- prego::intervals_to_seq(new_intervals) +seqs +pbm_list.compute(pbm_list, seqs) +``` + +## Performance Considerations + +The computational requirements for IceQream depend on the size of your dataset. For reference, the example dataset used here (with ~100,000 peaks and ~20,000 motifs) requires about 23GB of RAM for the motif energy matrix, and will take several hours to create, depending on your hardware. -```{r plot_report, fig.width=20, fig.height=50} -plot_traj_model_report(traj_model) +For a less memory and computationally intensive analysis, you can reduce the number of motifs used in the regression by taking a representative from the SCENIC clusters (1615) instead of all motifs (20,000+). This can be done by: + +```{r reduce_motifs, eval=FALSE} +# motif_energies <- compute_motif_energies(peak_intervals, motif_db_scenic_clusters, normalization_intervals = normalization_intervals) ``` +Note that the performance of the model will be lower with fewer motifs, but it can still provide valuable insights. + +## Running IceQream on your own data + +To run IceQream on your own data, you will need to provide the following inputs: + +1. Genomic positions of peaks (as a dataframe with columns `chrom`, `start`, `end`, `peak_name`), optionally it can have a `const` column indicating constitutive loci. +2. ATAC scores (as a matrix with rows corresponding to peaks and columns corresponding to bins). +3. (Optional) Additional features (as a data frame with rows corresponding to peaks and columns corresponding to features). +You can then follow the steps outlined in this vignette to compute motif energies and run the regression. diff --git a/vignettes/articles/iceqream_files/figure-html/plot_report-1.png b/vignettes/articles/iceqream_files/figure-html/plot_report-1.png new file mode 100644 index 0000000..27a5123 Binary files /dev/null and b/vignettes/articles/iceqream_files/figure-html/plot_report-1.png differ diff --git a/vignettes/articles/iceqream_files/figure-html/plot_report-2.png b/vignettes/articles/iceqream_files/figure-html/plot_report-2.png new file mode 100644 index 0000000..27a5123 Binary files /dev/null and b/vignettes/articles/iceqream_files/figure-html/plot_report-2.png differ diff --git a/vignettes/articles/iceqream_files/figure-html/prediction_scatter-1.png b/vignettes/articles/iceqream_files/figure-html/prediction_scatter-1.png new file mode 100644 index 0000000..48af160 Binary files /dev/null and b/vignettes/articles/iceqream_files/figure-html/prediction_scatter-1.png differ diff --git a/vignettes/articles/model_report.pdf b/vignettes/articles/model_report.pdf new file mode 100644 index 0000000..e096c76 Binary files /dev/null and b/vignettes/articles/model_report.pdf differ