Get Started

Overview

evanverse is a utility toolkit that combines package management, data helpers, plotting tools, statistical workflows, and convenient operators.

Area Examples
Operators %p%, %nin%, %match%, %map%, %is%
Package management set_mirror(), inst_pkg(), check_pkg(), update_pkg()
Data and parsing df2list(), df2vect(), gmt2df(), gmt2list()
Statistics quick_ttest(), quick_anova(), quick_chisq(), quick_cor()
Plotting plot_bar(), plot_density(), plot_pie(), plot_venn(), plot_forest()
library(evanverse)

Note: All code examples are static (eval = FALSE). If you copy-paste everything at once and your fan starts roaring, congratulations: your laptop has entered “research mode”.


1 First 30 Seconds

Try a few operators first:

"Good" %p% "morning"
#> [1] "Good morning"

c("A", "B", "C") %nin% c("B", "D")
#> [1]  TRUE FALSE  TRUE

c("tp53", "egfr") %match% c("TP53", "MYC", "EGFR")
#> [1] 1 3

2 Install And Check Packages

Use built-in package-management helpers:

set_mirror("all", "tuna")

inst_pkg("dplyr", source = "CRAN")

check_pkg(c("dplyr", "ggplot2"), source = "CRAN")
#> # A tibble with installed status

Update packages when needed:

update_pkg(source = "CRAN")

3 Quick Data Helpers

df2list() and df2vect()

df <- data.frame(
  group = c("A", "A", "B"),
  gene  = c("TP53", "EGFR", "BRCA1"),
  score = c(1.2, 0.8, 1.6)
)

df2list(df, group_col = "group", value_col = "gene")
#> $A
#> [1] "TP53" "EGFR"
#> $B
#> [1] "BRCA1"

df2vect(df, name_col = "gene", value_col = "score")
#>  TP53  EGFR BRCA1
#>   1.2   0.8   1.6

toy_gmt() with GMT parsers

path <- toy_gmt(n = 3)

gmt_df <- gmt2df(path)
head(gmt_df, 3)
#>                    term               description  gene
#> 1 HALLMARK_P53_PATHWAY   Genes regulated by p53  TP53
#> ...

gmt_list <- gmt2list(path)
names(gmt_list)
#> [1] "HALLMARK_P53_PATHWAY" "HALLMARK_MTORC1_SIGNALING" "HALLMARK_HYPOXIA"

4 Quick Statistics

set.seed(42)
df <- data.frame(
  group = rep(c("A", "B"), each = 30),
  value = c(rnorm(30, 5), rnorm(30, 6))
)

res_t <- quick_ttest(df, group_col = "group", value_col = "value")
print(res_t)
#> t.test | p = ...

Correlation summary:

res_cor <- quick_cor(mtcars)
print(res_cor)
#> pearson | ... vars | ... significant pairs

5 First Plot

plot_bar(
  data = data.frame(category = c("A", "B", "C"), value = c(10, 7, 12)),
  x_col = "category",
  y_col = "value"
)
#> # A ggplot object

6 A Combined Workflow

# 1) Prepare toy reference and gene sets
ref  <- toy_gene_ref("human", n = 100)
path <- toy_gmt(n = 3)

# 2) Parse GMT and convert gene IDs
long <- gmt2df(path)
idm  <- gene2entrez(long$gene, ref = ref, species = "human")
long$entrez_id <- idm$entrez_id

# 3) Build list per term
long2 <- long[!is.na(long$entrez_id), ]
sets  <- df2list(long2, group_col = "term", value_col = "entrez_id")

# 4) Quick statistical and plotting step
res <- quick_cor(mtcars[, c("mpg", "hp", "wt", "qsec")])
plot(res, type = "upper", show_sig = TRUE)

Getting Help