Yanagida, A., Spindlow, D., Nichols, J., Dattani, A., Smith, A., and Guo, G. (2021). Naive stem cell blastocyst model captures human embryo lineage segregation. Cell Stem Cell 28, 1016–1022.e4.
Load required packages.
library(tidyverse)
library(magrittr)
library(Matrix)
library(patchwork)
library(extrafont)
Sys.time()
## [1] "2021-07-18 00:10:33 CDT"
source(
file = file.path(
SCRIPT_DIR,"utilities.R"
) )
"/Users/jialei/Dropbox/Data/Projects/UTSW/Peri-implantation" PROJECT_DIR <-
reticulate::import(module = "anndata", convert = TRUE)
ad <-print(ad$`__version__`)
## [1] "0.7.5"
NULL
BACKED <- ad$read_h5ad(
adata <-filename = file.path(
PROJECT_DIR,"raw/public/PRJNA720968/",
"matrix",
"adata.h5ad"
),backed = BACKED
)
adata |> convert_adata()
matrix_readcount_use <-|> dim() matrix_readcount_use
## [1] 33538 495
"embedding_ncomponents12_ccc1_seed20200416.csv.gz"
EMBEDDING_FILE <-
vroom::vroom(
embedding <-file = file.path(
PROJECT_DIR,"raw/public/PRJNA720968/",
"clustering/PRJNA720968/exploring/batch_1covariate/",
EMBEDDING_FILE
)
)
|> head() embedding
vroom::vroom(
cell_metadata_PRJNA720968 <-file = file.path(
PROJECT_DIR,"raw/public/PRJNA720968/",
"raw",
"GSE171820_Sample_Assignments.csv.gz"
)|>
) dplyr::rename_all(tolower) |>
dplyr::rename(cell_name = name) |>
dplyr::left_join(
::vroom(
vroomfile = file.path(
PROJECT_DIR,"raw/public/PRJNA720968/",
"clustering",
"PRJNA720968",
"cell_metadata_GEO.csv"
),col_name = c("cell", "cell_name")
)|>
) dplyr::rename(
developmental_stage = time
|>
) dplyr::left_join(
$obs |>
adata tibble::rownames_to_column(var = "cell") |>
dplyr::select(-batch)
)
|>
cell_metadata_PRJNA720968 dplyr::count(origin, name = "num_cells") |>
gt::gt() |>
gt::tab_options(table.font.size = "median")
origin | num_cells |
---|---|
Blastocyst | 228 |
Blastoid | 267 |
::walk(list(matrix_readcount_use, cell_metadata_PRJNA720968), function(x) {
purrrprint(object.size(x), units = "auto", standard = "SI")
})
## 57.9 MB
## 105.2 kB
embedding |>
embedding <- dplyr::left_join(
cell_metadata_PRJNA720968,by = c("cell" = "cell")
|>
) dplyr::mutate(
annotated = paste(origin, lineage, sep = ": "),
annotated = factor(
annotated,levels = c(
"Blastoid: Epiblast",
"Blastoid: Hypoblast",
"Blastoid: Transitioning",
"Blastoid: Trophectoderm",
"Blastocyst: Epiblast",
"Blastocyst: Hypoblast",
"Blastocyst: Inner Cell Mass",
"Blastocyst: Inner Cell Mass-Trophectoderm Transition",
"Blastocyst: Early Trophectoderm",
"Blastocyst: Trophectoderm",
"Blastocyst: Unknown"
)
) )
|>
embedding dplyr::group_by(
origin|>
) summarise(
num_cells = n(),
median_umis = median(num_umis),
num_features = median(num_features),
median_mt_percentage = median(mt_percentage)
|>
) gt::gt() |>
gt::tab_options(table.font.size = "median")
origin | num_cells | median_umis | num_features | median_mt_percentage |
---|---|---|---|---|
Blastocyst | 228 | 7781726 | 9003 | 0.06319315 |
Blastoid | 267 | 7579396 | 9576 | 0.03904364 |
|>
embedding dplyr::group_by(
leiden|>
) summarise(
num_cells = n(),
median_umis = median(num_umis),
num_features = median(num_features),
median_mt_percentage = median(mt_percentage)
|>
) gt::gt() |>
gt::tab_options(table.font.size = "median")
leiden | num_cells | median_umis | num_features | median_mt_percentage |
---|---|---|---|---|
0 | 83 | 6676351 | 8999 | 0.06627523 |
1 | 72 | 8036980 | 9678 | 0.03425774 |
2 | 69 | 5637674 | 7416 | 0.04448353 |
3 | 53 | 8096014 | 10089 | 0.03892195 |
4 | 53 | 7969080 | 10078 | 0.05799040 |
5 | 51 | 7452917 | 9544 | 0.04538753 |
6 | 50 | 7609314 | 9391 | 0.05459019 |
7 | 41 | 8255229 | 8814 | 0.07119083 |
8 | 23 | 8341361 | 10273 | 0.05194548 |
"x_umap_min_dist=0.1"
x_column <- "y_umap_min_dist=0.1"
y_column <-
1.25
GEOM_POINT_SIZE <- "UMAP"
EMBEDDING_TITLE_PREFIX <- TRUE RASTERISED <-
plot_embedding(
p_embedding_leiden <-embedding = embedding[, c(x_column, y_column)],
color_values = embedding$leiden |> as.factor(),
label = paste(EMBEDDING_TITLE_PREFIX, "Leiden", sep = "; "),
label_position = NULL,
show_color_value_labels = TRUE,
show_color_legend = FALSE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = FALSE,
rasterise = RASTERISED
+
) theme_customized()
c(0.8, 0.995)
CB_POSITION <- plot_embedding(
p_embedding_UMI <-embedding = embedding[, c(x_column, y_column)],
color_values = log10(embedding$num_umis),
label = paste(EMBEDDING_TITLE_PREFIX, "UMI", sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = TRUE,
shuffle_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) theme_customized(
x = CB_POSITION[1],
legend_key_size = 2,
legend_text_size = 5
)
plot_embedding(
p_embedding_MT <-embedding = embedding[, c(x_column, y_column)],
color_values = embedding$mt_percentage,
label = paste(EMBEDDING_TITLE_PREFIX, "MT%", sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = TRUE,
shuffle_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) theme_customized(
x = CB_POSITION[1],
legend_key_size = 2,
legend_text_size = 5
)
Clustering of 496 Smart-seq2 libraries.
::reduce(
purrrlist(
p_embedding_leiden,
p_embedding_UMI,
p_embedding_MT
),`+`
+
) patchwork::plot_layout(ncol = 3) +
patchwork::plot_annotation(
theme = theme(plot.margin = margin())
)
plot_embedding(
p_embedding_lineage <-embedding = embedding[, c(x_column, y_column)],
color_values = embedding$annotated,
label = paste(EMBEDDING_TITLE_PREFIX, "Lineage", sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) theme_customized(
x = CB_POSITION[1] - 0.3,
legend_key_size = 2,
legend_text_size = 5
)
plot_embedding(
p_embedding_origin <-embedding = embedding[, c(x_column, y_column)],
color_values = embedding$origin |> as.factor(),
label = paste(EMBEDDING_TITLE_PREFIX, "Origin", sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) theme_customized(
x = CB_POSITION[1] - 0.08,
legend_key_size = 2,
legend_text_size = 5
)
plot_embedding(
p_embedding_developmental_stage <-embedding = embedding[, c(x_column, y_column)],
color_values = embedding$developmental_stage |> as.factor(),
label = paste(EMBEDDING_TITLE_PREFIX, "Developmental stage", sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) theme_customized(
x = CB_POSITION[1],
legend_key_size = 2,
legend_text_size = 5
)
::reduce(
purrrlist(
p_embedding_lineage,
p_embedding_origin,
p_embedding_developmental_stage
),`+`
+
) patchwork::plot_layout(ncol = 3) +
patchwork::plot_annotation(
theme = theme(plot.margin = margin())
)
|>
embedding dplyr::group_by(
developmental_stage|>
) summarise(
num_cells = n(),
median_umis = median(num_umis),
num_features = median(num_features),
median_mt_percentage = median(mt_percentage)
|>
) gt::gt() |>
gt::tab_options(table.font.size = "median")
developmental_stage | num_cells | median_umis | num_features | median_mt_percentage |
---|---|---|---|---|
Day3 | 159 | 7329571 | 9462.0 | 0.03540585 |
Day4 | 108 | 7685250 | 9759.0 | 0.04054943 |
Day5 | 68 | 7692114 | 8909.0 | 0.07377675 |
Day6 | 80 | 6475820 | 8393.5 | 0.05267877 |
Day7 | 80 | 8645422 | 9454.0 | 0.06118594 |
embedding |>
values <- dplyr::mutate(
value = paste(origin, developmental_stage, sep = ": ")
|>
) dplyr::pull(value)
::map(sort(unique(values)), function(x) {
purrrplot_embedding(
embedding = embedding[, c(x_column, y_column)],
color_values = as.numeric(
== x
values |> as.factor(),
) label = paste(EMBEDDING_TITLE_PREFIX, x, sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = FALSE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = TRUE,
rasterise = RASTERISED
+
) theme_customized() +
scale_color_manual(
values = c("grey70", "salmon")
)|>
}) purrr::reduce(`+`) +
patchwork::plot_layout(ncol = 3) +
patchwork::plot_annotation(
theme = theme(plot.margin = margin())
)
|>
embedding dplyr::group_by(
lineage|>
) summarise(
num_cells = n(),
median_umis = median(num_umis),
num_features = median(num_features),
median_mt_percentage = median(mt_percentage)
|>
) gt::gt() |>
gt::tab_options(table.font.size = "median")
lineage | num_cells | median_umis | num_features | median_mt_percentage |
---|---|---|---|---|
Early Trophectoderm | 18 | 8361592 | 8773.0 | 0.072238465 |
Epiblast | 104 | 7924372 | 9801.0 | 0.039743530 |
Hypoblast | 27 | 8720780 | 9573.0 | 0.036048865 |
Inner Cell Mass | 22 | 7335337 | 9136.5 | 0.071956141 |
Inner Cell Mass-Trophectoderm Transition | 23 | 8187758 | 8853.0 | 0.079507155 |
Transitioning | 7 | 4276121 | 8903.0 | 0.001258322 |
Trophectoderm | 291 | 7489586 | 9338.0 | 0.050840133 |
Unknown | 3 | 4890522 | 10178.0 | 0.060837473 |
|>
embedding dplyr::group_by(
annotated|>
) summarise(
num_cells = n(),
median_umis = median(num_umis),
num_features = median(num_features),
median_mt_percentage = median(mt_percentage)
|>
) gt::gt() |>
gt::tab_options(table.font.size = "median")
annotated | num_cells | median_umis | num_features | median_mt_percentage |
---|---|---|---|---|
Blastoid: Epiblast | 73 | 7916385 | 9707.0 | 0.034658941 |
Blastoid: Hypoblast | 13 | 8166701 | 9573.0 | 0.009467274 |
Blastoid: Transitioning | 7 | 4276121 | 8903.0 | 0.001258322 |
Blastoid: Trophectoderm | 174 | 7467628 | 9562.5 | 0.043218885 |
Blastocyst: Epiblast | 31 | 8126430 | 9951.0 | 0.052335040 |
Blastocyst: Hypoblast | 14 | 9776420 | 9619.5 | 0.049162825 |
Blastocyst: Inner Cell Mass | 22 | 7335337 | 9136.5 | 0.071956141 |
Blastocyst: Inner Cell Mass-Trophectoderm Transition | 23 | 8187758 | 8853.0 | 0.079507155 |
Blastocyst: Early Trophectoderm | 18 | 8361592 | 8773.0 | 0.072238465 |
Blastocyst: Trophectoderm | 117 | 7541800 | 8597.0 | 0.060103082 |
Blastocyst: Unknown | 3 | 4890522 | 10178.0 | 0.060837473 |
::map(levels(embedding$annotated), function(x) {
purrrplot_embedding(
embedding = embedding[, c(x_column, y_column)],
color_values = as.numeric(embedding$annotated == x) |> as.factor(),
label = paste(EMBEDDING_TITLE_PREFIX, x, sep = "; "),
label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = FALSE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) theme_customized(
x = CB_POSITION[1] - 0.3,
legend_key_size = 2,
legend_text_size = 5
+
) scale_color_manual(
values = c("grey70", "salmon")
)|>
}) purrr::reduce(`+`) +
patchwork::plot_layout(ncol = 3) +
patchwork::plot_annotation(
theme = theme(plot.margin = margin())
)
calc_group_composition(
p_barplot_composition_batch <-data = embedding,
x = "leiden",
group = "origin"
|>
) dplyr::mutate(
leiden = factor(leiden)
|>
) plot_barplot(
x = "leiden",
y = "percentage",
z = "origin",
legend_ncol = 1
)
calc_group_composition(
p_barplot_composition_lineage <-data = embedding,
x = "leiden",
group = "lineage"
|>
) dplyr::mutate(
leiden = factor(leiden)
|>
) plot_barplot(
x = "leiden",
y = "percentage",
z = "lineage",
legend_ncol = 1
)
calc_group_composition(
p_barplot_composition_developmental_stage <-data = embedding,
x = "leiden",
group = "developmental_stage"
|>
) dplyr::mutate(
leiden = factor(leiden)
|>
) plot_barplot(
x = "leiden",
y = "percentage",
z = "developmental_stage",
legend_ncol = 1
)
list(
p_barplot_combined <-
p_barplot_composition_batch,
p_barplot_composition_lineage,
p_barplot_composition_developmental_stage|>
) purrr::reduce(`+`) +
patchwork::plot_layout(nrow = 3, guides = "collect") +
patchwork::plot_annotation(
theme = theme(plot.margin = margin())
) p_barplot_combined
Genes used in Fig. 2C.
c(
FEATURES_SELECTED <-"ENSG00000204531_POU5F1",
"ENSG00000111704_NANOG",
"ENSG00000171872_KLF17",
"ENSG00000186103_ARGFX",
#
"ENSG00000164736_SOX17",
"ENSG00000125798_FOXA2",
"ENSG00000136574_GATA4",
"ENSG00000134853_PDGFRA",
#
"ENSG00000179348_GATA2",
"ENSG00000070915_SLC12A3",
"ENSG00000165556_CDX2",
"ENSG00000007866_TEAD3"
)
::map(FEATURES_SELECTED, function(x) {
purrr x
selected_feature <-
cat(selected_feature, "\n")
log10(calc_cpm(matrix_readcount_use[, embedding$cell])[selected_feature, ] + 1)
values <-$origin == "Blastocyst"] <- NA
values[embedding
plot_embedding(
p1 <-embedding = embedding[, c(x_column, y_column)],
color_values = values,
# label = paste(EMBEDDING_TITLE_PREFIX, selected_feature, sep = "; "),
label = paste(
EMBEDDING_TITLE_PREFIX,"Blastoid",
|> stringr::str_remove(pattern = "^E.+_"),
selected_feature sep = "; "
),label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = TRUE,
shuffle_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) scale_color_viridis_c(
na.value = "grey80"
+
) theme_customized(
x = CB_POSITION[1] + 0.05,
legend_key_size = 2,
legend_text_size = 5
)
log10(calc_cpm(matrix_readcount_use[, embedding$cell])[selected_feature, ] + 1)
values <-$origin == "Blastoid"] <- NA
values[embedding
plot_embedding(
p2 <-embedding = embedding[, c(x_column, y_column)],
color_values = values,
label = paste(
EMBEDDING_TITLE_PREFIX,"Blastocyst",
|> stringr::str_remove(pattern = "^E.+_"),
selected_feature sep = "; "
),label_position = NULL,
show_color_value_labels = FALSE,
show_color_legend = TRUE,
geom_point_size = GEOM_POINT_SIZE,
sort_values = TRUE,
shuffle_values = FALSE,
rasterise = RASTERISED,
legend_size = 2
+
) scale_color_viridis_c(
na.value = "grey80"
+
) theme_customized(
x = CB_POSITION[1] + 0.05,
legend_key_size = 2,
legend_text_size = 5
)return(list(p1, p2))
|>
}) unlist(recursive = FALSE) |>
purrr::reduce(`+`) +
patchwork::plot_layout(ncol = 4) +
patchwork::plot_annotation(
theme = theme(plot.margin = margin())
)
## ENSG00000204531_POU5F1
## ENSG00000111704_NANOG
## ENSG00000171872_KLF17
## ENSG00000186103_ARGFX
## ENSG00000164736_SOX17
## ENSG00000125798_FOXA2
## ENSG00000136574_GATA4
## ENSG00000134853_PDGFRA
## ENSG00000179348_GATA2
## ENSG00000070915_SLC12A3
## ENSG00000165556_CDX2
## ENSG00000007866_TEAD3
::session_info()$platform devtools
## setting value
## version R version 4.1.0 (2021-05-18)
## os macOS Big Sur 10.16
## system x86_64, darwin20.4.0
## ui unknown
## language (EN)
## collate en_US.UTF-8
## ctype en_US.UTF-8
## tz America/Chicago
## date 2021-07-18
::session_info()$pack |>
devtools as_tibble() |>
dplyr::select(
package,
loadedversion,
date,`source`
|>
) # print(n = nrow(.))
gt::gt() |>
gt::tab_options(table.font.size = "median")
package | loadedversion | date | source |
---|---|---|---|
assertthat | 0.2.1 | 2019-03-21 | CRAN (R 4.1.0) |
backports | 1.2.1 | 2020-12-09 | CRAN (R 4.1.0) |
beeswarm | 0.4.0 | 2021-06-01 | CRAN (R 4.1.0) |
bit | 4.0.4 | 2020-08-04 | CRAN (R 4.1.0) |
bit64 | 4.0.5 | 2020-08-30 | CRAN (R 4.1.0) |
broom | 0.7.8 | 2021-06-24 | CRAN (R 4.1.0) |
bslib | 0.2.5.1 | 2021-05-18 | CRAN (R 4.1.0) |
cachem | 1.0.5 | 2021-05-15 | CRAN (R 4.1.0) |
callr | 3.7.0 | 2021-04-20 | CRAN (R 4.1.0) |
cellranger | 1.1.0 | 2016-07-27 | CRAN (R 4.1.0) |
checkmate | 2.0.0 | 2020-02-06 | CRAN (R 4.1.0) |
cli | 3.0.1 | 2021-07-17 | CRAN (R 4.1.0) |
colorspace | 2.0-2 | 2021-06-24 | CRAN (R 4.1.0) |
crayon | 1.4.1 | 2021-02-08 | CRAN (R 4.1.0) |
DBI | 1.1.1 | 2021-01-15 | CRAN (R 4.1.0) |
dbplyr | 2.1.1 | 2021-04-06 | CRAN (R 4.1.0) |
desc | 1.3.0 | 2021-03-05 | CRAN (R 4.1.0) |
devtools | 2.4.1.9000 | 2021-06-16 | Github (r-lib/devtools@6d6ade5) |
digest | 0.6.27 | 2020-10-24 | CRAN (R 4.1.0) |
dplyr | 1.0.7.9000 | 2021-06-29 | Github (tidyverse/dplyr@ca55fce) |
ellipsis | 0.3.2 | 2021-04-29 | CRAN (R 4.1.0) |
evaluate | 0.14 | 2019-05-28 | CRAN (R 4.1.0) |
extrafont | 0.17 | 2014-12-08 | CRAN (R 4.1.0) |
extrafontdb | 1.0 | 2012-06-11 | CRAN (R 4.1.0) |
fansi | 0.5.0 | 2021-05-25 | CRAN (R 4.1.0) |
farver | 2.1.0 | 2021-02-28 | CRAN (R 4.1.0) |
fastmap | 1.1.0 | 2021-01-25 | CRAN (R 4.1.0) |
forcats | 0.5.1.9000 | 2021-06-08 | Github (tidyverse/forcats@b5fce89) |
fs | 1.5.0 | 2020-07-31 | CRAN (R 4.1.0) |
generics | 0.1.0 | 2020-10-31 | CRAN (R 4.1.0) |
ggbeeswarm | 0.6.0 | 2017-08-07 | CRAN (R 4.1.0) |
ggplot2 | 3.3.5.9000 | 2021-07-13 | Github (tidyverse/ggplot2@13c0730) |
ggrastr | 0.2.3 | 2021-03-01 | CRAN (R 4.1.0) |
glue | 1.4.2 | 2020-08-27 | CRAN (R 4.1.0) |
gt | 0.3.0 | 2021-05-12 | CRAN (R 4.1.0) |
gtable | 0.3.0 | 2019-03-25 | CRAN (R 4.1.0) |
haven | 2.4.1 | 2021-04-23 | CRAN (R 4.1.0) |
highr | 0.9 | 2021-04-16 | CRAN (R 4.1.0) |
hms | 1.1.0 | 2021-05-17 | CRAN (R 4.1.0) |
htmltools | 0.5.1.1 | 2021-01-22 | CRAN (R 4.1.0) |
httr | 1.4.2 | 2020-07-20 | CRAN (R 4.1.0) |
jquerylib | 0.1.4 | 2021-04-26 | CRAN (R 4.1.0) |
jsonlite | 1.7.2 | 2020-12-09 | CRAN (R 4.1.0) |
knitr | 1.33 | 2021-04-24 | CRAN (R 4.1.0) |
labeling | 0.4.2 | 2020-10-20 | CRAN (R 4.1.0) |
lattice | 0.20-44 | 2021-05-02 | CRAN (R 4.1.0) |
lifecycle | 1.0.0 | 2021-02-15 | CRAN (R 4.1.0) |
lubridate | 1.7.10 | 2021-02-26 | CRAN (R 4.1.0) |
magrittr | 2.0.1.9000 | 2021-05-19 | Github (tidyverse/magrittr@bb1c86a) |
Matrix | 1.3-4 | 2021-05-29 | R-Forge (R 4.1.0) |
memoise | 2.0.0 | 2021-01-26 | CRAN (R 4.1.0) |
modelr | 0.1.8 | 2020-05-19 | CRAN (R 4.1.0) |
munsell | 0.5.0 | 2018-06-12 | CRAN (R 4.1.0) |
patchwork | 1.1.1 | 2020-12-17 | CRAN (R 4.1.0) |
pillar | 1.6.1 | 2021-05-16 | CRAN (R 4.1.0) |
pkgbuild | 1.2.0 | 2020-12-15 | CRAN (R 4.1.0) |
pkgconfig | 2.0.3 | 2019-09-22 | CRAN (R 4.1.0) |
pkgload | 1.2.1 | 2021-04-06 | CRAN (R 4.1.0) |
png | 0.1-7 | 2013-12-03 | CRAN (R 4.1.0) |
prettyunits | 1.1.1 | 2020-01-24 | CRAN (R 4.1.0) |
processx | 3.5.2 | 2021-04-30 | CRAN (R 4.1.0) |
ps | 1.6.0 | 2021-02-28 | CRAN (R 4.1.0) |
purrr | 0.3.4.9000 | 2021-05-19 | Github (tidyverse/purrr@5aca9df) |
R6 | 2.5.0 | 2020-10-28 | CRAN (R 4.1.0) |
ragg | 1.1.3.9000 | 2021-06-10 | Github (r-lib/ragg@adf5f06) |
Rcpp | 1.0.7 | 2021-07-07 | CRAN (R 4.1.0) |
readr | 2.0.0 | 2021-07-13 | Github (tidyverse/readr@acde4b8) |
readxl | 1.3.1.9000 | 2021-05-19 | Github (tidyverse/readxl@9f85fa5) |
remotes | 2.4.0 | 2021-06-02 | CRAN (R 4.1.0) |
reprex | 2.0.0 | 2021-04-02 | CRAN (R 4.1.0) |
reticulate | 1.20 | 2021-05-03 | CRAN (R 4.1.0) |
rlang | 0.4.11 | 2021-04-30 | CRAN (R 4.1.0) |
rmarkdown | 2.9.4 | 2021-07-17 | Github (rstudio/rmarkdown@5273047) |
rprojroot | 2.0.2 | 2020-11-15 | CRAN (R 4.1.0) |
rstudioapi | 0.13.0-9000 | 2021-07-05 | Github (rstudio/rstudioapi@96fad1d) |
Rttf2pt1 | 1.3.8 | 2020-01-10 | CRAN (R 4.1.0) |
rvest | 1.0.0 | 2021-03-09 | CRAN (R 4.1.0) |
sass | 0.4.0 | 2021-05-12 | CRAN (R 4.1.0) |
scales | 1.1.1 | 2020-05-11 | CRAN (R 4.1.0) |
sessioninfo | 1.1.1 | 2018-11-05 | CRAN (R 4.1.0) |
stringi | 1.7.3 | 2021-07-16 | CRAN (R 4.1.0) |
stringr | 1.4.0.9000 | 2021-05-19 | Github (tidyverse/stringr@f030ae0) |
styler | 1.5.1.9000 | 2021-07-17 | Github (r-lib/styler@e7777f2) |
systemfonts | 1.0.2 | 2021-05-11 | CRAN (R 4.1.0) |
testthat | 3.0.4 | 2021-07-01 | CRAN (R 4.1.0) |
textshaping | 0.3.5 | 2021-06-09 | CRAN (R 4.1.0) |
tibble | 3.1.2.9000 | 2021-07-17 | Github (tidyverse/tibble@03da995) |
tidyr | 1.1.3.9000 | 2021-06-22 | Github (tidyverse/tidyr@6386079) |
tidyselect | 1.1.1 | 2021-04-30 | CRAN (R 4.1.0) |
tidyverse | 1.3.1.9000 | 2021-05-19 | Github (tidyverse/tidyverse@195d8a4) |
tzdb | 0.1.1 | 2021-04-22 | CRAN (R 4.1.0) |
usethis | 2.0.1 | 2021-02-10 | CRAN (R 4.1.0) |
utf8 | 1.2.1 | 2021-03-12 | CRAN (R 4.1.0) |
vctrs | 0.3.8 | 2021-04-29 | CRAN (R 4.1.0) |
vipor | 0.4.5 | 2017-03-22 | CRAN (R 4.1.0) |
viridisLite | 0.4.0 | 2021-04-13 | CRAN (R 4.1.0) |
vroom | 1.5.2.9000 | 2021-07-13 | Github (r-lib/vroom@1dccc44) |
withr | 2.4.2 | 2021-04-18 | CRAN (R 4.1.0) |
xfun | 0.24 | 2021-06-15 | CRAN (R 4.1.0) |
xml2 | 1.3.2 | 2020-04-23 | CRAN (R 4.1.0) |
yaml | 2.2.1 | 2020-02-01 | CRAN (R 4.1.0) |