From 972eeda3e003a8c321a4e861fa916d1f219d0713 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Fri, 25 Aug 2023 10:53:07 +0000 Subject: [PATCH] Built site for tidyseurat: 0.7.2@4c7cde6 --- articles/figures_article.html | 32 +- articles/introduction.html | 48 +- .../figure-html/plot2-1.png | Bin 48063 -> 48202 bytes .../figure-html/unnamed-chunk-12-1.png | Bin 104027 -> 104425 bytes index.html | 48 +- pkgdown.yml | 2 +- reference/aggregate_cells.html | 21 +- reference/arrange.html | 190 ++++ reference/as_tibble.html | 221 ++++ reference/bind_rows.html | 33 +- reference/cell_type_df.html | 28 +- reference/count.html | 188 ++++ reference/distinct.html | 153 +++ reference/dplyr-methods.html | 1000 ----------------- reference/extract.html | 193 ++++ reference/filter.html | 222 ++++ reference/{print.html => formatting.html} | 101 +- reference/full_join.html | 297 +++++ reference/ggplot-1.png | Bin 0 -> 22326 bytes reference/ggplot.html | 164 +++ reference/ggplot2-methods.html | 149 --- reference/glimpse.html | 183 +++ reference/group_by.html | 220 ++++ reference/index.html | 127 ++- reference/inner_join.html | 298 +++++ reference/join_features.html | 32 +- reference/join_transcripts.html | 2 +- reference/left_join.html | 297 +++++ reference/mutate.html | 210 ++++ reference/nest.html | 197 ++++ reference/pbmc_small_nested_interactions.html | 56 +- reference/pivot_longer.html | 160 +-- reference/plot_ly.html | 340 ------ reference/plotly.html | 357 ++++++ reference/pull.html | 158 +++ reference/rename.html | 166 +++ reference/right_join.html | 298 +++++ reference/rowwise.html | 147 +++ reference/sample_n.html | 198 ++++ reference/select.html | 377 +++++++ reference/separate.html | 214 ++++ reference/slice.html | 584 ++++++++++ reference/summarise.html | 196 ++++ ...er-methods.html => tbl_format_header.html} | 47 +- reference/tibble-methods.html | 268 ----- reference/tidy.html | 39 +- reference/tidyr-methods.html | 364 ------ reference/unite.html | 163 +++ reference/unnest.html | 245 ++++ reference/unnest_seurat.html | 196 ---- sitemap.xml | 76 +- 51 files changed, 6704 insertions(+), 2601 deletions(-) create mode 100644 reference/arrange.html create mode 100644 reference/as_tibble.html create mode 100644 reference/count.html create mode 100644 reference/distinct.html delete mode 100644 reference/dplyr-methods.html create mode 100644 reference/extract.html create mode 100644 reference/filter.html rename reference/{print.html => formatting.html} (53%) create mode 100644 reference/full_join.html create mode 100644 reference/ggplot-1.png create mode 100644 reference/ggplot.html delete mode 100644 reference/ggplot2-methods.html create mode 100644 reference/glimpse.html create mode 100644 reference/group_by.html create mode 100644 reference/inner_join.html create mode 100644 reference/left_join.html create mode 100644 reference/mutate.html create mode 100644 reference/nest.html delete mode 100644 reference/plot_ly.html create mode 100644 reference/plotly.html create mode 100644 reference/pull.html create mode 100644 reference/rename.html create mode 100644 reference/right_join.html create mode 100644 reference/rowwise.html create mode 100644 reference/sample_n.html create mode 100644 reference/select.html create mode 100644 reference/separate.html create mode 100644 reference/slice.html create mode 100644 reference/summarise.html rename reference/{tbl_format_header-methods.html => tbl_format_header.html} (76%) delete mode 100644 reference/tibble-methods.html delete mode 100644 reference/tidyr-methods.html create mode 100644 reference/unite.html create mode 100644 reference/unnest.html delete mode 100644 reference/unnest_seurat.html diff --git a/articles/figures_article.html b/articles/figures_article.html index cda9310..8c99626 100644 --- a/articles/figures_article.html +++ b/articles/figures_article.html @@ -137,8 +137,8 @@

2023-08-25

names_to="property", values_to="Value" ) %>% - mutate(property = factor(property, levels = c("mito.fraction", "G2M.Score", "S.Score"))) %>% - ggplot(aes(sample, Value)) + + mutate(property = factor(property, levels = c("mito.fraction", "G2M.Score", "S.Score"))) %>% + ggplot(aes(sample, Value)) + geom_boxplot(outlier.size = 0.5 ) + facet_wrap(~property, scales = "free_y" ) + custom_theme + @@ -146,15 +146,15 @@

2023-08-25

 p2 = 
   PBMC_clean_scaled_UMAP_cluster_cell_type %>%
-  sample_n(20000) %>%
-  ggplot(aes(UMAP_1, UMAP_2, color=seurat_clusters)) +
+  sample_n(20000) %>%
+  ggplot(aes(UMAP_1, UMAP_2, color=seurat_clusters)) +
   geom_point(size=0.05, alpha=0.2) +
   custom_theme +
   theme(aspect.ratio=1)
 
 PBMC_clean_scaled_UMAP_cluster_cell_type %>%
-  sample_n(20000) %>%
-  plot_ly(
+  sample_n(20000) %>%
+  plot_ly(
     x = ~`UMAP_1`,
     y = ~`UMAP_2`,
     z = ~`UMAP_3`,
@@ -166,10 +166,10 @@ 

2023-08-25

 p3 = 
   PBMC_clean_scaled_UMAP_cluster_cell_type %>%
-  arrange(first.labels) %>%
-  mutate(seurat_clusters = fct_inorder(seurat_clusters)) %>%
+  arrange(first.labels) %>%
+  mutate(seurat_clusters = fct_inorder(seurat_clusters)) %>%
   join_features(features=c("CD3D", "HLA-DRB1")) %>%
-  ggplot(aes(y=seurat_clusters , x=.abundance_SCT, fill=first.labels)) +
+  ggplot(aes(y=seurat_clusters , x=.abundance_SCT, fill=first.labels)) +
   geom_density_ridges(bandwidth = 0.2) +
   facet_wrap(~ .feature, nrow = 2) +
   coord_flip() +
@@ -178,7 +178,7 @@ 

2023-08-25

# Plot heatmap p4 = PBMC_clean_scaled_UMAP_cluster_cell_type %>% - sample_n(2000) %>% + sample_n(2000) %>% DoHeatmap( features = markers$gene, group.colors = friendly_cols @@ -186,11 +186,11 @@

2023-08-25

 p5 = 
   PBMC_clean_scaled_UMAP_cluster_cell_type %>%
-  sample_n(1000) %>%
+  sample_n(1000) %>%
   join_features(features=markers$gene) %>%
-  mutate(seurat_clusters = as.integer(seurat_clusters)) %>%
-  filter(seurat_clusters<10) %>%
-  group_by(seurat_clusters) %>%
+  mutate(seurat_clusters = as.integer(seurat_clusters)) %>%
+  filter(seurat_clusters<10) %>%
+  group_by(seurat_clusters) %>%
   
   # Plot heatmap
   heatmap(
@@ -210,13 +210,13 @@ 

2023-08-25

 p6 = 
   PBMC_clean_scaled_UMAP_cluster_cell_type %>%
-  tidyseurat::unite("cluster_cell_type", c(first.labels, seurat_clusters), remove=FALSE) %>%
+  tidyseurat::unite("cluster_cell_type", c(first.labels, seurat_clusters), remove=FALSE) %>%
   pivot_longer(
     c(seurat_clusters, first.labels_single),
     names_to = "classification", values_to = "value"
   ) %>%
   
-  ggplot(aes(x = classification, stratum = value, alluvium = cell,
+  ggplot(aes(x = classification, stratum = value, alluvium = cell,
            fill = first.labels, label = value)) +
   scale_x_discrete(expand = c(1, 1)) +
   geom_flow() +
diff --git a/articles/introduction.html b/articles/introduction.html
index b5cbecd..ee22819 100644
--- a/articles/introduction.html
+++ b/articles/introduction.html
@@ -270,14 +270,14 @@ 

Preliminary plots
 pbmc_small %>%
-  tidyseurat::ggplot(aes(nFeature_RNA, fill = groups)) +
+  ggplot(aes(nFeature_RNA, fill = groups)) +
   geom_histogram() +
   my_theme

Here we plot total features per cell.

 pbmc_small %>%
-  tidyseurat::ggplot(aes(groups, nCount_RNA, fill = groups)) +
+  ggplot(aes(groups, nCount_RNA, fill = groups)) +
   geom_boxplot(outlier.shape = NA) +
   geom_jitter(width = 0.1) +
   my_theme
@@ -286,7 +286,7 @@

Preliminary plots
 pbmc_small %>%
   join_features(features = c("HLA-DRA", "LYZ")) %>%
-  ggplot(aes(groups, .abundance_RNA + 1, fill = groups)) +
+  ggplot(aes(groups, .abundance_RNA + 1, fill = groups)) +
   geom_boxplot(outlier.shape = NA) +
   geom_jitter(aes(size = nCount_RNA), alpha = 0.5, width = 0.2) +
   scale_y_log10() +
@@ -326,8 +326,8 @@ 

Preprocess the datasetIf a tool is not included in the tidyseurat collection, we can use as_tibble to permanently convert tidyseurat into tibble.

 pbmc_small_pca %>%
-  as_tibble() %>%
-  select(contains("PC"), everything()) %>%
+  as_tibble() %>%
+  select(contains("PC"), everything()) %>%
   GGally::ggpairs(columns = 1:5, ggplot2::aes(colour = groups)) +
   my_theme

@@ -365,7 +365,7 @@

Identify clusters
 pbmc_small_cluster %>%
-  tidyseurat::count(groups, seurat_clusters)

+ count(groups, seurat_clusters)
## # A tibble: 8 × 3
 ##   groups seurat_clusters     n
 ##   <chr>  <fct>           <int>
@@ -406,7 +406,7 @@ 

Identify clustersmarkers <- pbmc_small_cluster %>% FindAllMarkers(only.pos = TRUE, min.pct = 0.25, thresh.use = 0.25) %>% - group_by(cluster) %>% + group_by(cluster) %>% top_n(10, avg_log2FC) # Plot heatmap @@ -427,7 +427,7 @@

Reduce dimensions
 pbmc_small_UMAP %>%
-  plot_ly(
+  plot_ly(
     x = ~`UMAP_1`,
     y = ~`UMAP_2`,
     z = ~`UMAP_3`,
@@ -456,21 +456,21 @@ 

Cell type prediction= "single" ) %>% as.data.frame() %>% - as_tibble(rownames = "cell") %>% - select(cell, first.labels)

+ as_tibble(rownames = "cell") %>% + select(cell, first.labels)
 # Join UMAP and cell type info
 pbmc_small_cell_type <-
   pbmc_small_UMAP %>%
-  left_join(cell_type_df, by = "cell")
+  left_join(cell_type_df, by = "cell")
 
 # Reorder columns
 pbmc_small_cell_type %>%
-  tidyseurat::select(cell, first.labels, everything())
+ tidyseurat::select(cell, first.labels, everything())

We can easily summarise the results. For example, we can see how cell type classification overlaps with cluster classification.

 pbmc_small_cell_type %>%
-  count(seurat_clusters, first.labels)
+ count(seurat_clusters, first.labels)

We can easily reshape the data for building information-rich faceted plots.

 pbmc_small_cell_type %>%
@@ -482,7 +482,7 @@ 

Cell type prediction) %>% # UMAP plots for cell type and cluster - ggplot(aes(UMAP_1, UMAP_2, color = label)) + + ggplot(aes(UMAP_1, UMAP_2, color = label)) + geom_point() + facet_wrap(~classifier) + my_theme

@@ -491,11 +491,11 @@

Cell type predictionpbmc_small_cell_type %>% # Add some mitochondrial abundance values - mutate(mitochondrial = rnorm(n())) %>% + mutate(mitochondrial = rnorm(n())) %>% # Plot correlation join_features(features = c("CST3", "LYZ"), shape = "wide") %>% - ggplot(aes(CST3 + 1, LYZ + 1, color = groups, size = mitochondrial)) + + ggplot(aes(CST3 + 1, LYZ + 1, color = groups, size = mitochondrial)) + geom_point() + facet_wrap(~first.labels, scales = "free") + scale_x_log10() + @@ -510,16 +510,16 @@

Nested analyses
 pbmc_small_nested <-
   pbmc_small_cell_type %>%
-  filter(first.labels != "Erythrocytes") %>%
-  mutate(cell_class = if_else(`first.labels` %in% c("Macrophages", "Monocytes"), "myeloid", "lymphoid")) %>%
-  nest(data = -cell_class)
+  filter(first.labels != "Erythrocytes") %>%
+  mutate(cell_class = if_else(`first.labels` %in% c("Macrophages", "Monocytes"), "myeloid", "lymphoid")) %>%
+  nest(data = -cell_class)
 
 pbmc_small_nested

Now we can independently for the lymphoid and myeloid subsets (i) find variable features, (ii) reduce dimensions, and (iii) cluster using both tidyverse and Seurat seamlessly.

 pbmc_small_nested_reanalysed <-
   pbmc_small_nested %>%
-  mutate(data = map(
+  mutate(data = map(
     data, ~ .x %>%
       FindVariableFeatures(verbose = FALSE) %>%
       RunPCA(npcs = 10, verbose = FALSE) %>%
@@ -534,14 +534,14 @@ 

Nested analysespbmc_small_nested_reanalysed %>% # Convert to tibble otherwise Seurat drops reduced dimensions when unifying data sets. - mutate(data = map(data, ~ .x %>% as_tibble())) %>% - unnest(data) %>% + mutate(data = map(data, ~ .x %>% as_tibble())) %>% + unnest(data) %>% # Define unique clusters - unite("cluster", c(cell_class, seurat_clusters), remove = FALSE) %>% + unite("cluster", c(cell_class, seurat_clusters), remove = FALSE) %>% # Plotting - ggplot(aes(UMAP_1, UMAP_2, color = cluster)) + + ggplot(aes(UMAP_1, UMAP_2, color = cluster)) + geom_point() + facet_wrap(~cell_class) + my_theme

diff --git a/articles/introduction_files/figure-html/plot2-1.png b/articles/introduction_files/figure-html/plot2-1.png index 168f2e0532fc9cef6c94d4876e7343564e2b2d4d..5ffbcfc446b70f01138ec6a3bb7672dac99e7e2b 100644 GIT binary patch literal 48202 zcmeFZXH->Nw=K9Z9s_bvF`$4V5=23eAQ=@=kf;PDsz}a~Ge?h#ND@#~6cA95C?Z*c z0T2}=gJeNLvg8caC+GX_yVY*Bs`uJ`^{Z;PV}ql6uQk`4V~){B?|tsuDoUql*E6oC zD2i6@w9HwGTJ20xD=+=A27jZwqDBut)?7YwN(MjinmLi@g&*r|PG7L2D5hKF4^80D z5krdFL&?b;Q*(Yi(CYHwp2LFFV#C85C$H?Hp|?49Ea<9&fbFquVVmU@70PQ>SPuy( zE~um!KJxr0KT$ zWx=?bm;5Fz&*e-*emN`ub_4ktbap*?ILbTp?C%xim)Ov2+sV&8&$hlHKPj$f9jnRD z(_H_LmpC9ViVM`er<2-!XWJoPAD>I_Z=PfikvmH7zCXNN_TsmyX{PG&SvI})@rh4KnYFqAhOuz~l@Vc9@tCS1b#I9A&G^(&c`lyrdNL;n4f-0;h{lgk1DM3D zYUeYXt-@p25Y+~;%YS=flgO2rZaRta%H8`hzl{43vC^9+hFbF~o>?}e=yo+41eV*f zQdAV5Dw%}F!K`-XX3MNrSK~***346_PLawqYbi>|7h~R2nrq*?c?*Y<-*q}k=j6FF zXU=rp)6~1|G5L+-pNZrq;a+q<>P#39pW{HIbCNY2G(Fk(Uz{w`_)JF5v{NMnLP++qa!*am>Pi(G#$IgFafBt{?5(%6n6aFYctS+xn zR+}q#LSkafsX%5vlgcQQ=1j}#D(nu|Xhf39-$R8tc+tOe4$=c(C&BAT2 z{mJnO3BJq{t{?bHcW+s_W}}Y+dx*UP_9yf5GrYKeNV{a%YiTalfXv60+oT--_e#}C zxwTZ(h)8d2$mQPZXAX}feiyCmdTdv5!Ls?Wh~4E6KJ>f9CleA=e33L#?YxjB6&@Vk zOY*bx++bD=d4zV4sU70ZHlg?L%d&^OI45iJ5yRZZ`{wuYFAwuxprJHk`q<^z`5~v@B_htWnx51#qZ)c(b1~+{&8wnMwzv)F@A6o%5ZV={=W0p@sFh{Kv|Zob*1o^~5Jsu+ zL{yL`Z{XE~!j_ZB&HUKI<`7AaB_0`ynFYK^UxuG z?v!j+R@Mll&ebnC`@Yr3SCW|WyX) zM`wS<*j@E6W$_YcW!-eN!~0j|)Ax*Xc}~O3V#9CjWMstg)FNe6j(zX5uzFLT@bVI5 z>W5uqHv|L5{HXiPTezE^o|KhTk3sVZ&qYi~YW}2_jLgQ}M{S5RqRcpoSG_!}2{4bFzAE-oTUV(4YA> zGM|#3#pd`JPA4`0(y_dm6sPNBb#-+k$RM?nks@|RUmlAbVRr8L>u9IXzRpsq#SzB- zaUR{=*ORuW!u2jgLY7Unl03Y;`ojb7ZfuBo_3Ens;6nv=Bnt$o>vjDNwP6~`T9&o$ zs;a64u$?mXz8RmJD{A#-q-6R%%i^Cbp3|2GCzYOv7JoC2WHNr@aG&ndDsNetw;QC} z<_E34?)doVI<*QmWteAG?FWP)J)QV(X+I`0A?$%I zis3^3AxfgA83tjz`g(KD9=v+tNO*JE(b1RlR}U9&*VoA#c%MM(^b;|sfI!Jv&I8=s ztqdpi23~#UsY*~!Jpabo_DS~~wh(5c&By!D2VVy6&g`y$I~n0XFaA0u<%_@lag@GN0V_o#s+<_1=%NJh*^T8IGBIPq#KnV zJh{rEibQVlhud5BbtXnTewCPNNwTBe$-OzBHpd1E=7t<3mjEFN7*$pKVaP@auzB*Y4BE~u zr8D^ZJze|2_M59$uU6I4VkAiELb_3MW-4+)M&Rd9pETSG5_k*eUrpMMb(c4|HHi)SHlS!02lP6O)*uPQNYpo$rI0 z%@vOxw{LGKm{CGx{r zD(WMt+agn6j(kOe>#2AWW7ks=?osgQ(W3|ahVt0TuWOVN2R~ooPa7_nDt?8T}`x@xuL$h*? z%&kpKeLwqGdB-w2)T$EfZfV04QYM3)z1yk9*5&kSz>~r~`B@>*Ag*svejFa4>7%twsA_^jTrjSQEpVj9-$)Y9UD0U80_VHc8MH1$0k-puwT z5>)>{)WK}))~zz8rluPi1vp)&hL|w+^g>y*tre1U10@l_{vCp* zE$Z&h!xyDD?l`;$MGEUIp!M41yZ>p*BzC!x_g7;NxecJg&a{&HxYzpof4kZLcQf%% zFH1F!x&t}zdCZP~yux3FJ>KZpY#9=;ihA*56JZ!ejo$seuBy;$=~qjR-EPE%ZRN4G zCy`mZf=+C@E!^&Yq}Q1W62%JQy`2$mL$?b&=1T7H7G#$c6e2w=?=yoyiTl$0)M;LX zIRK$B0{!UBkC2#z1hXecNHg6PC?#q1<-y(3D^!rx^0lrG2^Y>Ns%dCg*`xr(koXa2 zTj5=DjPM`QN{6&F4@P*-_KJR$LeJfwU$dQ>mip&|eYjWv1Gh%4i)UHzem zk`w=YP|&i;J|@t#I#zB|FeTj;1FTN%i6hk?Y4*jKdl--I<#5Z)vP-O#iTLsg{7}1e z>C$8SYB`4p7EybXEBp`t)AcHJ?W;~!<=FMmRt%z^@m>A#@jnf-A_MgwbCUC`DWhN1 z82vXrf!MFDT15e|_q6_V{gbJB`JG6FzDP&n@@LM(WM?0JBw)H3pEK5Rs8i>|XbJeP z=A+r8?i;)bQ&@E0pg%b)U;|I~9v<{3sD%nUNrw>Akvn3nVbJ&)vEctWm!SR05AhlaxksdICuX1j*}<*XfJ;L zDYl2Iy?*W5iq*Wd!Cqm~9%Wbf@0MM0*MIsJzsa4VPLsvzJ7#N}w*8I3QRHE8Hz5Hu z0<5^pQ0OY}H6_YM6jlEcDAswbT-X46q3YS0u<6-`!Xd?t6lLN)e}5Atoy=P>&FVQC z5-F4CI2f&8=sEIa*qvh%j7y_!DO1;dZL8ZBLgDscP%knJA-MLivbF(9AN>_|y%TU- z$Dn=STY4Ar@f}S)m;GS12Ca|^O!mwh;o@rQ>cv5OPt2 zb?k_7#TV7h7?lBOIen0yyX~3L*3yy`lhzaA_MiUOcC?J6!6g%YZdIIeWXlb7Dt!t_ z2hsz8EPNJ?FKH_nwrwk!XwV1g(!?aJaK zG8>u2kIKu-lSV$*agcGJte;PBO9-pyy-}tf0B-AeElk*Al}|Z1OfVin$E&{rEj*rs zyooxb_vR=m>Dlw6p9wfHA3*EpMlf}NXkR?Y0o@hraK(S#Elp7V-|Mz?J~B_aP5P_k zBVqcUE{|>AtxM|)5bG9U!i6jU1mNB*WL)t$d#pmtpf+AL4P8*(q{FYuz1|f1U*7kk1T!@D^b)Q;U7JuL3v+exw;E1sjfE~w! zt@w<|$CkGnf=&UVS+%&2m5;$iiROfXOpdnm%4I?cVBS2{u=QZj#XM9*!If%MY59UCuI z0VAzChsUQ(jcE0}R}BDnr+wzhlL=v03=SaWHueFQR~Z09Z*H3G2XHVFWc|QJnY+*Y z3|q$zwwI~~Gatk;*7G$G-DAnywJbV$gQOpgod3a5h43WJR9Bs*zCW<&s&nMJrr-cR zhM@U8I^A*I0LY%ys_gDZ=Fz%&ju~?-E>^nq36I~%W>|x=;PqYV3UySlo%h{zPy@o~u5@{EL&SRk!I zd{UBvC?U2geF*E0*PdtOnjFJ##+0t4e=C>#3fQv^YY~z67x{NQUV;5!lS6vI(vJ}3 zPP8a~rByIfGnOj7+MXmkg|KTQ1nJ{84aD>zP0ucZsvWtF{`(3F1%FYje23m-!Wpz>Vk*I%BU%;nhu zb&A?1u~~sEUF2eIX4Wyky@!Jp3j%+4_y5%xD+n>t8 zM8;-v^9qCIgc3vgXO)qIk(Ru9J_hJP5E;)0-mpjGhua#>{K=Lqv zj8Wo5Di6{COg#ON(3(H*Ym>}l+xH@_1a&t!V3kGD2|9_bh|(X7KZoR(rc0$Rql*pv zDzzm3ADR>!Ne^izRngcGEgcp>AB2ufD;H}1U>f)2dE<>xuyed*p94tbwdD{BfDn}8 z&#>r>8%R>V7Zz3;uNp&c4(js`A@v1JtJ!8J2X}#;&@mvLuvN~_`#|WoBNqmYRW&p; z@~k_G{^CO;;a;**5pqs)%>WrNi~H|mRx2^p{t$%r1QG=j%w8ZW6>s;~$ik)q z0#yiS3mGA$RR~RdqeFx4GKfK{sk2(D&njRz7pLUEUC((h0QuN`mPTg~#qVUxm%3P% zJ`&s!#W%XwoN^h@ANJq{bCKWnkc4Vh;ldyh1TPbk(z3nd?e#9KTmXttH$S^dU;(D$ zaRp*RTgVAfT-Iz|$i$mJes*vyL|IaVkcK4pzCmYe`-v;Ac4#hgX(n<9+QY#yB44$6 z&J8*P%iPNg;z#yxkDqZIZ2HN$jwpYKfzd1Ai8BHNMYEK&9D1wwrxY&EqEjNDAt8`7`&JHAqHe!}t?h`J zQ@4H0w55NLT>1c4N;O8g~Ooo^#3W%doRnm^+O5J2>J!G5&%qc+Fp_E-TSm-^=WB5 ze!qiN-Gs-kYtR*;PwW#q>Qtw$nLK5l^y0i6vZ z-kAM|=%6DM?tg|iUjY3$Jw&De^zui+VQ&Mi{aon@BZ2BfTd~UReSUOdyrzG_`Sd3O z(?Nk;A}q4D<=l_55Q9+^(1nSHQsi;Qwam^Jj{{Rg!g1MuDo zkiA)1QwnDLK-QiZEWjLOclvU70;BjFM|ubahz(^Ekebg-Cx=eg_T4&;B-No5Ga_jN zMmXax23f6+pAAs(qMkPW=9r?SBP5VD>FI5YXx1iaRHW4AyG=FG-FI7@=^^8NhpoVj z(& z<0lv$BoPTW$4xa@c+*R_*LcgCHRw7edpw4YSoYF=W^{+3nHqUOAfwA9c>{Qt?!C2p z^D@)Phn(dPszOHQ!zQtTmlbxy;1KBPN6I)NWgHwF25&vH9Kxcas#@006E@{n^|Lbp z)#P3XvOUI#J)&*D@Q}3Y{z9e_9)y*)ALvhg2=too60Glq$9M(g6DU-*Tj@rEcWg$TGP%_F_ zgNr{Jo=v-wjGQgbBFr=C0y7# zc}}A(L;u{l^opI{ilnr}?ki#h{w`>1|4A{5p~IU?1ru8p^SFeZ*7?q!e-{m`w_Z=^Gy2ia_N7IqCq{Yj2`tP`X!jK6+;b|~ z4zdu1r~lBtmxkJ}O;lf7e5-yXD{ypaVf!UYoA_{CgdrY*#9tc?LW*7S(blz0_9}w~ zfM#`)Dd6!3XA-c=W-O_$!b9E6g+d5~R;@D~q+O6iG=i-y()j&Kgb<_Ii?jV**#GSv z16YTGHnCdGXFfE2=Z+owYnYp=EOOqzUb>CpANo>8<_pxr3=ecWNgg^H8krS#r0d8C z#7yZ~m!@)CU%K?2ap@%66pf>RB-ybCfrS&?S*orlG^3X< z5@9XqjUXq0L_Wh$p?Ij*TI!%E!NLo(vX=Po%Brv@JrY%o! zn)^9+y@>3{_?Q5#eV@IIcLArrwhK3b0^)EK(YzFy zzp^GukB}E6?9s9MLY9&snHw9*r?a!O5g6?9aQ;-l;=)`hRHD4LF(UAjWa~Upr@7p9 zf^;WZFVZdNA>foZJsne(n%p2xeRMi4`6zZU0)1Cf7y8mF&0ohXHv zYB#o$T#fe8e$YL55w}~=S?=MsL!7^pcjGTI)wF25w;tf-P4#%QFxkxU0HusN9SoFb zNF-hW;EbuHmA7w>jt*(T+8q@uAy1fm=x;TSwhF#VgmlQq4?FHBso(lEp1VyLHN zWYpE`T*FL!e4r`pdQ8K33&yF;$xR~@Gt*sx1_V1^F7~CZFyenW{aJr;GqKK~?|&|N z84I({u6et31Taz3MBzPXKn)`4qf$S4EOugn{g@?kE5`csK2H^X)kauBr5t@O3#i1n z19+Ov1c(64C}R{1aix$&`@{=Jd1?C0hFWrV?E*?Ri9!xsXNJYCruSYG57j@e$GW}1 zL+LBF^p8Libc_!GsZSNbGPig+}g~ops+@&&+rxlRYEa3kPG|Bt=(5o z6OoZfZqukK1|Szy;YlP@1ZKlFxyKaCVF6S~90sIs1Qp=!{}5{a2awQ=`tBnqUqhBe zTU6*jt0IiSdczRZU$rl4jC76ROIpU~<-+Z|fz>mb!=d54zeN|gw9vk!KE47J0y>C2$G%F=SqygJ z#=1Ehw4=hU3q(khLVRdGByL4|9&eFa=v9V%3op?&9-SQsK>z-fJgbbW!mQXg47TrS zg+Cy7vVd%CPwGbooI$xeU72vBA|-F=(Z$Vs)-BC^^&-qldq>Nmtd`BF$6t+f`#Gd$ zR2I*{g9?Y&1^vyP`i6hGrE9fOfej2U1` zv|JL&kZ`q%1=~Oz=!4-~#RRmO5eU(2`L@bZ3-(WpF?-Bt!QZm$8lxd4`Zg5|o$Ykx zI*!LGbJGyS$&IXu0S9`nMJ*rdZdgc>tEq!fPXBLtI+l}^5f>%!mpblIjtn5bEEuitH6GIOH-@T`$nMs$0 z{#mnU20oe(q!E>CXhNXbiDL7!#Vz-dufT@#z*`cXlynd}2O4MMeggYdf~##gr1d(! z#-(reyPWiUept>#dB5_zPyhBW=yG}%6Ciqk$jZd+wZ>RG(_&}oZo4n+x_I`FQfRfV z{fjcxF_b2i6+Z54^OcgG9gfz74qGwg|gs!CL=m`Rp zaD*e^Eu7O+kSc$KiGj#^eWffob|1CQ9B7Daa@!`;xMIQ!S?5n^Ky@uaBr%fh-sQ6| zz~|bvSr=tbG_fPe)*jr8;DJiuVg3_+v_Em8polKRZ#V*LKRbY*oCin87LRoz+1LlZ z2dT++ucgQOabTL4$^4!MJjdw!&2Ts3^az+1M^4=gJ5*HI_ zdSN0Go)e!?-MlhM5$q;ue8?mguVr!nv;2|Z9YXfqq}{a*&752H2wMC*Xr`%)$;9V& z;^xNN%R<4zvoJkh7_9hbE*?`?Ui9VaMZ-sU|F%E;7=t7#-?fF6wC-(nHkJOULvXN5V5Ss1Foc{oeGb$G@ z>?G!ZdF;{vWXEE3@djY|h4376B3KN9&6_;PSFat1oeX{FA@bXKg%9c_5s=j6FogKd5EJGUdOS5G5q!x zj(XFX2lr5?BHs((&BWq%mazUAfg}U03ZeX~pdLLW9`LBe<$ui1&Ym1;Of%S`utGo< z{pq*(neOuNQtZSqVuStHC0@OP{RrgeH97AR6Li_Pu?g#47BR#AsCdP|;RYj}#Ug~o zofpRbT95TM&j=)mj@(ogP`DHPSM#r~A^g~J)Fw(e0Mv97fxAln)e6frhny0Zkf z>)NXlu8n92dx{Cd05cLEO)PnK;7kbnxXhfwCh|{BKu4vuY0JAugnB?TCNH|iK}B6X zXc&16)7e#SDIArfolC^)K<<+s2X!TcxY7Dn+ zdrWL>Y{WSl_x&*S0Ha+-SLY9b@sx{;%aef5aQS1?n?R8a*aDn|jTDL?Rt5m*|gBQn7K6jj{6y#LAp(TqaqIaDVMVLDc|-85a+vfyV|^3qM^8SY1X)! z56FOxJh3aN4HT?;(@d1iDy$VDg^{3kb6n5m;ye(*en@LS({=I2gmR%Yn|p+r|3s+Z3~!M71)98}~Fc4Y|GZ z;WVojh?wt6jY)`h_g~O;oRgimsr_YA2e}M9mvM$9Q{xF5$nLM zq69;W?_YV6>oFz`)m4_)RHg5=g-mQj?JZ39)(O2bDrG%ZQd&=?>D5CItZ^9D8|m`;Z_MX z^Pr`+5k-!W$|!U~PGiS?{qqgg{PGQJ8Ji2|=R=$)Z?+eEEkcr>t2t2>T`sgPRy*td zV5YyP)T|3^3CrM^$U}rlL2QeW5QABbwCg1>eRoZ5qZXwmhmIUh;J56W7CiEB{O`Y4 zZFZ&Iqv-R;f$Hdv1HRXCb6Nk;IC#e}xlv>5$%9czsfN0%)YM+?xhBtWm+@ZPx>d*b zNV`59|MG^V_OwE{-1FFZugHqWc9A_f(SHWJMYwFz@%GZCDS8ifUH5s;u5H_%gSJ1J zmX;=e`n1aNBFup5@KnePt-dil@9KTzaw;ss6d^FAa);4j^ zM2o`Ifz{r*2YGmufTrp|$s`M!*Z+b^6BnxlspbGi-~crwn$=b^7})2at$~;Hu4Pp8JD(6>o(dLez6Un;D`{^(@2^nX1vdVvod}Qd%c49?FJ?@eS2+49JE{0&|_- zIt4!e>9{j8h*J5gBH97>BXK1YREI3=c}Q%p@;m|gEkKKUZ*g$}F)Lt%EcC2YPjAxe zjO5(9+MJvm^0^6CQAfL^f)E3I)B>oq4m^b+|HE-iEa#p*QR9z_FWWl5nV)xeadQ(p z!U{=e8#kF9Q9PsT0?t%XTvV&oPOP&;<)n3BR;n80MoTASc;o|U38xY0UAsJ3zE#+R2W{P1WB zdPcf4m9N|N)$%mFIKShVri>~Hn-Xe}3yqe1ayoz#NUOfpqmc<# z8=T^{wziglMQ+Gv6(t>Wj0`Xy=A6Fv!a}wev9U5ZL{~$2YNHJ|rOqGR28X;drr_D! z5b#*mxF2p-0@OZSo;gq3GSKcXn|x1wibpes*V92tw%hNRS})d(ZW^QD6uX z0ROPkI1+dlWN0iB{|g9seN{2HHmmgoi7Gs&U z-uw~Ho$DM1o7BPP#Bajh>23l%kApq67xLny3POx=IYciZC)B*XzSaR+ZXd7*mxR|q zBOmDYq<3ym6cd3eWr5^vG!-bG?w^A(?DWZIf;Tf_&qqo+#5tzu=nQE&elqn~ihR*D zRdcmf)a|bO{7Q4d?UWjk*K%Rccx~A%#B|g~8dQ2;U1AuJdWqu^ipu_jR*#BbiGvbb zckN1?=x^vJTTgOf{2b8Wy%&5B6>@PV!yX!~2{g0$V71ali_8O3_nU$Q?x&_pYRwFd zuMf{N7RxlaBN;iX?Ehr(ukf=^5BT@Gtz``8TWn$6xaQ=kQ{1AWxh)>viNDkNyi5Gn z@KUw(Ypz2PrmY5HL#VwA2k%$sJFi^1l3~Y=k8~*x=P}HfZ#-Xk@*GrDhsSC;uigMf2CrLV6)GdJfZ zx<(~AeaU}pY^>|+A&PQ1-8HSa75n6`GfF;o@sd9qzxUlCO+c+n67myeLix#toS0a% zoDtRwg)4$6ttUz0@Q&JaV`W6ZJp}&`evD_{RF`G*l9_ruh&@w-EAu#~Uf{*;^9GT#88=i8#q1CwKPBmDrmb zcb<*0<-rjoD5y%oJyXs$P3nL| zZ?^8#j*V+*3;S&qU6-_<9GSM}pPQBs_G9OD5Fftm?>2Elcd2Em%;a(y4;69u-o0ly zpYnES7O7>_6po;Tx5`sg2m5lxu>zZuTw;c-*K2EGVUb+2LM1DfSt@$iNGeXkyzpN6 ztns-R^(?!Ithor)+STt9m|{F4H`EqE4_6CSfqFo>&%?; zi!ZBQz50rE-#*<3YP~h0b90xchtUzQYmw@O?u+gC=n$wuH1?IXhHRX4Q^Ox(& ziKcnoT6Aj9nC*?p8eslpVK_6S^!@vH$A(iU zPjVeS+IZtOMa3_f{9fT5{-C_O+TfJrqw{yuS>&%yW+Me|y7}Dsp(P@G!dKiI}E#L!2^;VubiNS~8CI<#FKf)ywf|G+`Nx{a|LE zm69F^i_+mDl&Efc`xH|yhag{@;3cZ4`1tYTuP+y`p8)q+{RsQGAH-L3RYX1zfe@*b ziWOGB3m^n#Fq#8aJS!D&{%cLq#h|jcgBl7(*4yFLZ0N6idfjtjLNgyYlu^jy0amQ; zmEjrx9el@8g6h!a*G8Y*pj^6&iqiW%YL6Up5bgN|*LiSc{W$WY3c_?ZGY1!!9AOlC z`{AV%+0R0K<=e5*tm;|ZX2*rg`uSC{AC-Etk1|l%_mS+ty!@10Q;UXf*$cpfo>?~n zW$1yz#HfcKx~e`E6?+ zwe#TtR?8--C>{ekJaalYB|R{X4L~qwz9yefI}YRiOE*6VJIXi)kj~vn^E;~OdAUIE zg7rjy@akE^-WB_q8lMG6v);()jbeVEQX3UMtS&@Zm&=<1M1*Z1QI$HCB>pq-nAsn>L9g}=|+i%~hmm>4Bb$_yRpPhhza$>Pg?F4U?m1QJu?dxW`l zUzBzk3OuY$vNU#?Tk9+eYYwLbr8Es=U6O$z-dTiF$%#L}1C6IpJN z8Z{b&61)DS9{&QXjT0Ytab)Ewsu{wFoc1KRA}$7q>*8|7Wkc+e^}KvJdUR}Tuwb}e z+uGsM0jlEFVBSfs@nN?sI0j@_5F3A5Ow;|@^<5gh_b)^yoM_)55sF*9H%d2!Ys3{C zm%56IN_P`*iM9VOVI`PPGFPma1~pA(oJ2JBd6T9Htk+o`9UcFnxVIZ>Jvb&UQ(xw| zWxAiqBwrmMk!=%l?cJk1wo~;F*#^(g+zZ|`aMo7!uXoM%X9FK_*CjOP@I0iG?ivTX z(o3ufk<%f-nV-=yzH z)zXo|)jS&0IzeC&fyw8NxC_s<6Q~sHi{?=$=X|eRsY8R?nV&xgyJ~Z21bEsFkYzcyiZQD8gY!2FjlBN!;1IP3VcgbI zUU6So3N34_%XP0m9e-=ZAW|@=x$yg~0;!pCUp7S9YUMd5w`QQ9Y|3-urPD=)-_{7T zskq6^=+9@RND)sV#Hh&fmbRZ07PS>@o?UIdAThX;HLjdC%9iWEfwM+N z&reLTad7031LgiJmj?(7#XV-H-s1Snd2B83_MP86?BN1<;L8kHePC%q=<+Jv%-p^I-a~9 zu9?;9g$ak=SaRsPcd^Bln;&Lm_;Yi2rNm!~;mh|j%+PYckr^}CtdTP`ADV-ttbzsRo;m=GA$C1;bM@eVR421v8R6{VjH`6j+6z zafOC8n6Lo1@i=sFG0P$N8IM5_3@t45$}vaV0Hy5KeIDHd>E8xki_lOeNxQvbk5EM~ zaKgg_hf;bWnyJ~_zlMJ(7E+}Pf_wWqizbDAEbhn1pOdR+_!<5AMSfG6k4#$gQ)OEu zPI9-UEd8k~KFJ(rMAIP&kCVEmXF=-(4A`|`HituVXxCf^G^O!p64TK4oOzaM z-JSw57P+q%hYnPsYd_(KC=*4d!~tSge0KKvZFf!v+jkVvkYIWG^eJhCSF9MAdoT$f z|MyQ1D4h=jUHzFkH(O_USO5KYZ?o`H@`^K#5Al?$3#S4b?k%~hvh!-x(9jm6+Ujaq z2a?_$sqX4*Hbr$PFGns+5sB*~b)G~-q`(8^wuj#P=BJB?O^PzM)R|8UHswuf?`LXB z?tHi6M%G~L&{#Mh3%s3fyRMO+Rc{&}d|pmrqjZ4U<`z-KX+8vw*zLkE@RlH!_{q!9nM*Eu9+~31lpG`VXosKHFefzem zf`T7PY3QRz2^jax?5rzEi#97fMIncIgTIJZ*$|Pf=vL3e?R02gZ+3x;rSD{_{?n0E z-k@){O8!(~LF;)^R@RmH>up#wO~|d;dh@=0Rc~yOXnuOgJmX49jFmhwe?*Bcw~gM_ z%IqfZmZ;xBi!3C9DE7$&okVRvZpWjBfz!Ya@X4Y@qIBpM2 z_IvwsC6AIY4=Xb|l$Ph&kdVq?%R#FbwO1?OH3MdPjs0wFp?TZ3ZjFT!&j~!fvJ7*1 zlB8jZl9zP-m^N!*%Ok&{D5PLvQd`&Yn<0ac(|#^7G3_v&tGAUNAN}49QZI^s`96DM z%6?S4QV#ma$DoMff`bz@$2j)yC+88Z{fDNu`S|GB)b9-> z2%X3ToS1+l`;?rOVk%l58PAoB`@dpNSyz>OZR2iexfk1c&D}$IPUKMdOz7I`1+JH- zM`#Pj`0~td1r+K(J=BzqBVA5ncHMqw`a$%Y6AqHHd3s3yOI<xg zt|WZv7zuG0QFPM0V7DmPW#1cH+8X+Yx0s-LccUX8IwCwSMeQbB7*%u_|FBaLpFy-gkE%7xT{|eGVIgE@d3Brsw;0EFe_5Iki7rX*Ro)1 z=^#ILPm5KIxe&h0z|?*E@+B$L5xQt!)%9D4R^aH`OB~9>=nk54ZK~V8o#8-x@L;q+ zz!65pQMygfP^&j1cY##3%Aj-KNJrNI)vJeqlqk{V@X%q~Bk<*^Ye-m_`^sxNp=+oF zC!D7E1&@I0l`B_nG^|{)0-E;$fZU355`~86$+r=8us%K1%*FO9gI{TXlY0AJ*QnAg zW6GOk7W5Q^(Im0|<%_~#TfR0(-SwL`X#h=%GtpDj;~VXJ5N|pkE*}2X89tPm=UG`k zm3x?$YUJIsM;fKR0gOo^bbU2=*9xv(zb?T96s_jHjBhvS+P`P=Wjy@a*SCE#cel-; zj6?pfvsqWLOjM=KKTEwgrtD0YzJAnLYC+Dses*47-K(WBx!q}+gcHFdoG4<3cti0R zO^(!MC>OpsW-wfrB6ueB>Om!}9ztC+^-QY9=_}^S#I{VSC@<$Sn~-j%yuRRoKLE$;{NyR-xWyZ^lUxR7Z7dHw6sPy9W?mQArJ5T<~eqz?jx zZYGElidTdT9=2mMN(qrA1#CK`5dvi<0tfc(J3)$X!Q!kr4hWv7r>94Ec;%VFs#U9g zK{>K@wgN#6drKcqF~He%8;AEy9fn#ipo-vNRuvFMDtPi=c={^%G_=Ecw=CZ;@G`nZ z?;3as9A@G65_BCm5wvd8!Pm(Fa3J~#Uu6#?yj<`iEDP#6XS1GbbABi;HbvPFj&0C$ zQ-mmdx5^~6?8;f_{u5w#<%1!~ri6xuGM1C1OG)dJ-nT;y7es`HWo0=%6NKR{gY5-? z!iyI#l)nB(+jk~-&8FS)NRMH8%nS_A04wE#u?D^4Gs_pT*-lnIYiwkMOCnP%S&69` zZ4$m+AvhMQuez2ncyPIDpuWeVQk9h#&iFc5lx|y?pExyZSXL_ElBX!du_Qsx5M7j- zL{7_YMfp4v`2PKS?qpQa8X%`6u;DMFqNL%wRt1RS!8s4qG!18EC8Yr9x%=f%ijwUI z;8~UnMwxgT9K4x1b4}x=o=?TIlm5n`wg=L_%>2%LVqf>3_eKB7Fjr3C3#!tYY=CTa zIl0^T<_lf9YBW7uys4j-xX{B^feVq>FD)+S!p0|X3-p9NRN#Bfal#xNapOlJsZ^(( zIDT9{5PWQ6(gKWL_kw~{hTfnrF)@j+uBqY9-)_R``Cu&f{!;q}2E8+KN0aE-mvm#| z-lWhNuxAVJAY=HrJcc@)JAmZOwtDSaa~#)WsNdl)s|&9Qqo{p6TH3wo-wr0$CH(kt z<&aLc3QSYgI3@6-t1AXQ|GgYxcsR!!Erc{5bq!du5~|JOcgltI=l0FF(oy{p+*}e8 zx^MvSGwv#_I0d-~NJ#k3orRI9?v!J}$#l!e75fM-xWNIipgJ&TTnjl>SgEEB@T{w^h;xr%2FlgRh_-W?t-20lRL6 z479~12L3yb$YQzF0FyJVS`!{Tcu;L_oZ7~D;6Q@C;3?=-y(8ZeUAXz7C$-`n^3RHP zct7NolN{tTR@W{BX0TAIFpRpp=mp@YP?;g@$aB#a(R8&;GHfujSyM}8!i~o1zxZi1#QR~|l?+q*K?qrcF z9VWX}a{`;>^@lqRXvI7~jEj3eBEZJxHVk=5_Fr|4Q(JUj zU6Jdp|D&p^>SszIqo8~+`KE?vv9Y0fof)DG4dl!@rLu|4d5s6MHc5@< zwJo4+s=%wIAXRW-gW7LcgPa>0x|N6;kB%4z#I`f$Agvz~mc=vIC2I@IRl_|WJv|K~ zK?wgr>{G@$mcQ9d0cy$dG3)bgi*# zrJAFl%e6d6xh%Q(SMEYG@5J|gUH0x@>(`r$PO(IX>&-@j9TtvTslswTSwk^WQWrY( zIV&rxhvrP8_LaExGi2bF6TSbUtSKGnDzTsXy)0WEDX^DEO6kLiR)=$pNjP+M04l#x z`UT9TCcgeh;L688@tt34A}NuPkvJ$WXxWmjO0pLY@m=|6XXwIu0NxgzSo}o8+M{N5 zZoJ%59EnZ2^N$ZE&kk?YovYntby~gt;l8!@CZFj($xH4p?D#Wd*zT{UiJ{aysq-mM zxC^Q)81#F;R9)xa;qNCmI>SGLJvCx9gv|fAB@!j=g*L`YyL!3dtqV85spkg4WP7swLV|#%cGrnm3ru zEqM-TO=QSQjXd&WpPK)8KjeNAZ=6JYzLcl-kXE8qPhYO_QjDZmo|4C+;}h*s%47#Q zjVK?U=k@ZNMJ|YUK>!Cd=sDzjMrl{NE%z33-4EFq)Y1gs>q7_Q68rgj!)-~ z@njS_IkgMtLL(Db2P)SV7Wmu?%L>%KN)w-tBddMbEE?|aFa*pKt^^#s7M`6a(hW#~ zcraQg;4{qM0NX+3;eP?e4x_uHv>P+c>Gb4AX)U6oekV+YJKluTfm=6cP7|bFhTTt1 zUuKt>JLhQPlYx>6QKOY@b1BE1urqDWU9_!NKOf>L4|?$6m&yW=KbEJlW*0@R{RiQ0 z0m99{r61Fn+TE<~HRMyp_ww4bSI^!ka3wZh3rGPSm-PJDcPO}QDJmg-2Nf|uT{ zGBh$W!y!4PCt`3YfLPbGut>uBfZe&mM~^~IqNq*FK(<3RtYswLF?B{Z=V7mU{fzLs zy8T&Fo%a_4oScNZq=2|Soaag_DGn{k#X6xS2B8RvYxJ_{QxwrQZp32 zZ6QlbZ)DqVF@ujp(ao|v4hv&NoS-%wVtIfnTwFc!;lrr72=~N_5K=?3D*;`(l95|Q z1FbLhgRg-s9&k+zj;6q(ZgJi86DRf%{?)W2Cb_%mN9+5Z=ua_G-+%SLBDB*tZ>ep0 zFlEC&^}t9yld-4VS1XET)kL{Y8G|?#56)y4dEe1d%R9rsv`;NBq607(??k#~4Vm;` zmkvy)&9eF9V{RJAKIJVfEzj+g4KdR&`@Z_bK7x2s8nwMN^HlwhP0LFS@6Y%YwL3CA zh3iP9>epvKlnQ4i80-F)VAmL_8Th_j@MNR?VJWs%oApnez|b=q17`yoYKY8;hEJX@ zwO+sKUA*}G;Eww!JYzBbK?NeW?#A=xXJl?h;))N8M6PkP;&|)e&`#SIiYa;rs=H-S zT0z?u5F8x5dd-@qH)d+#`o*WYTLdQ@Pam~SSzIk#9E28MTYG&%^fBdIiM+fcR$3`G-1vt)6nbFL)rb;X@rqZ;1KYj>& ztQ#7JH>OY+Npc3_gd!gtW)#emj@yr_dhHj?oMfDKeBf?UmT+1@r|@(fzn@k09@)q1 zH#L>)7&8yQcrL$2(d@fi{f`?SNAu)uXcleFJbl9J7780A!8Ppp^Q;n3DEw)x8b87< zY}OXHMbu@nx+~=H;9=hpYB!JAQkRsjm$%z@U8`$Z3tDl$Ytf~a(Y>W8@pt5sHKp>M zpW%BZrqDz^EG~rl{g|27ocVsvpgukHLC)ji;^I5oR>k{^aDN!lzU|3TUCYngSb~z@BsfB#^2i&{!1kkN zi8rg-ZI~ZwJp6W(M9eLuB0AwKY}Kv7zW@;HfqUOcdgsljYdQAPvUA0Db@DGX z+OZVaZj{l=z0xmXqhV=p?f2ED`$eVxw*Jo}oOp|H#GS-Z#vr?y$V!qFAzC0?lIMQL$zcK%Y`OJQCf zUdM}nP&S|WR^B|kt*t$^earJ+mc}f#l!36^x%EujnOodhqyJGJ*FSyYp<(f;uJ3Sr zeskX%O5M{}XTSpUVKCXxO$QWPOJVpv z{b@@6?8nQ=)cJ_OPF5?$2if^WXD+<5zqc{Sv)S+;gSR0gev|7Gl`dOYoj>;CUGk=9 z3j3WH{OjgY+CN$zZQ|XBkoY?tzKUwnKPg zqQQ;7J>KQAMNs#q=U48fXxiT?lq45`v zdUdww^@-p5TPnHtl)vX$)#$QLcHpMWaM<^A!PUKkH)`9zM_Eb-vVnZn%ihwwSqp@fpr!*r0Z&&NhEUaHy^coCZn>#|kF; zG&{1`I(#u#xA8*p$Ib^wt33wyj~NxeUHg$z;kgTIf}O9EgE3EK>K zX@v_QN=L$b)(vs{^DMqg520FSkgC5i`hNBgiU@^WINpkTF=P3+YQM$w`jFp@q^k=? z#n-wnsEak(3BZW&Y|QUoL&l}4jvfWy-As;&A9!B7^R12K}|9L4Lil>!^-HLVb_DRXU@{%X~(K1 z993ra221Syo#Lu^Q8u06(54Um{kU#gUD`?-|cxRw#5t`j)85LL3P!>BS4t9CrV2W|Att^Jo#h#(@mX7 z^YJyJ!(Xn4Gd0hOnk7DBJRiihPoXU#uD?4bK|DfK*~%ka@WwwqU*Az!GESL&)OB-> z{M>-L=iJz-w~jh-4vh(B8M^+|##$p|kMOkI4pA+=jwCmEgH95Mz;=1QaxvEZQ~ifi z?fS~h{>t3;ywM{VQt^joo>tJy)WS$!_;RN-({C)}KUndc3=h2L7=E|J#w&18x#7uJ zqvs$Ki_n$7s*1b>A~{Y_HMCWeckR|Rn^AW#0mq(~&R$!cME2h*34$${|( zKPICmVv%;dDx^UL>TmILgd@o$*wFgpnkeh^c1w51{!1xJ$MnsrgBP;+glk`D-S$t_ z=xeGpZA{wtVX)6Y+M;W^x}v<6ukebo^BKV5VhrL!R4*0^REMQR53dy{`e-5B8mPsMdH*b|fBY$ayjnNjV=Q|H z)4oqDO~Ic}9;jCrF0W(j&d98Cvye^SVyzo}Bh2YKOsJ~6Fev!o?HZEfk98W$5 zM0|d-=(Ec8!&@mmVdK&YmTqq$+5`KI4BH3C`reW8!^@TD;Zs6Rq4>{ArHblvY9~x{ zvOKfn^&PS|g-(s_u8lWKavt90pyB&fvS>gn-@-~H3H@Dy0P}}NQvr%oN7olMcay$E zUH``#50y}{`iTEU4`#b#xY=5mYn3$hNBy^SnLXy@_gs{9;;?t~Wv|eD8a#5L@O`fs z7#QDdsCz=IHIoi)3OKp=GkhCJPK_by^O%`Z8qbU;#eG%c1^(UyBm-#=v?4FrR^)>uG<;#GH^T|IDCN}+>a;{_yJ?6=-42V!2Nv~mT zGm2iQ+4WO2-{MASrgCL!p~X=~pFDmkL9H`fT$$`wPew9?Jp{CSjA13Q-n+l3a@Ql< z?P%%y<)@rrePX!PP0QJI*6Z{yEPqI6xTKWj6nPkJwr*+LfGp#a@oGJZ;tXt#Z%ZF6 z{nnM5v1R$k*86KVa$2&e}PjP+TQgm5TcavyvQC6F! z_!~1{=TzO~BQlH_81TGyaG@3cbkCG<@o6X$pp5_iWh^>NA%u7Dk?LL#&%y#nnW+=L zS7~S(oe0K+5CqVnKhSRV$+uJQCm#nnf7X6B*;TZ};y!YNMZ9;_F5j1O-@bKv|2;l; zA@@m@>v@@M8v)Vj@3Kl{+KtYOQ#SXR+5F{-G4VGhR?pf=sWv&_;0T)QaC=mYpCVz?D7)$9g7Si{cUarB$C@ThlO}{A-svPaXWyM&S&wVj4xPoAUgOT-{feV5 zTtjjGOKK(#GmPs+QtPu!BHM(yee(Y4xLm*6JKu0oH!J1MOMKJCfqTUbon-QUftXGD zFp$w~chOujWEf}_lbVX+y3*#lErzA%pU7!V?9hHqBQxoqufi3IK!T#^NKg%jlp)5W z=K?G>lSKIEBdKj70@sWN44fWQX%tDpcP&abMstjdzj-TnmyI<&n%drWS?$h4A>Tnq zKY_7Ug%91?7Iw^`G10q_NuCLyAXd3p-BcxAmjZkyK5gZ3e%RKc)FO36kE7H3#^oe; zCTlAIwFwO}(|oTTX6#$GEEgzZ4xiE~!bn20|73R~nV{bCE;bmF-LOSCT4}T+6>JAL zw}nP=Y0Au@bN7bo&KzRPa}~emC3h@YG&@=2n!DVy$wj@)mK)3;4kVf#VdNq#X#K``eGR3oU~y7BfB4{;TOrxT_wNIMQubZ}ppHBa*6|c9 z?i%Ww-Yu+o#i;o3fZy2PPNolxB`yh%Hs2XdW%M&0s+*scIGBE{@)vz;~VUU2k3+b$2iPQ(7=0 z4XTbUn3Ubs*|nu9vgV`eqs(__5SZe-Sv!cDj-vQ`>zil$YYby@89U>vpruVVYfjDB zUoi3PQj`B<>L{^D_@ke*eCG zntJkm=k%*nla!#3yu6Jc8hpqeq~}3y>hnWLpO+dGKVA^Z z`QuWd%fXh3^_Ua0Y@s*B?Dc;n!V*14WrVpPg^jORwc^t;6mY`dS~WbEoeKqiE{w(M z3FuGGCW$YH*pV71T=JC~R3sa18dRii8ziuwlBu|mJbOdOK;VJh0kxLcaP$YW3U(gHfX3+=5xc|-X1GJUP9{t{2bhrik22F5Xqoq38=pEm=ltPB#25j zZr&UOC|k;iP1@VLS~{yX$Ouzy8e#TPl#So7b*oU2=o{Ke>$=sVSciW=$qC}zwW(Ox z;=X-`M&QE04uLX83XgB1^30)r!W3o(>M~K(w^xqn<)mmqucmTP6D;DWx>o0%siNxrc}9M>T=Q3+By}(%a>DAj<;^#ev+Sd7&)p%-RVxpql)>7I)mS}n)awSAq7|8HifON2(o!zkEZ}iHp z^n@xI_3D)}w_=zw)C9?z7DIDAJr@X!w6wIO7z%Iw1k3{D&YxG8lbdTQ0`i1`P58BI z*EnSrLXO&*{sbo|?hEt>F|n~t@wp3kfVsjV-VoXf;*0 z_ToiYgf95R88=!$*jf))JFu>m$8|w)#{JyBZCf-JWi*=p#6TN4oa=CCHLyAX2Yyje zE%1>5VE&kxP=T%Hb{5^GUX+GJRg&tQT3&t*EbgqtZ4aoxnv7CL>c+C>}u6#W)e9q_j1 zRD&e!ZIK0^+riau@2T76m(pRe6aQg34J-o3Hj`lZ`+6n5c?mHh*rDMVqNqiS`P_T+ zeRG{~ia0bgi5D~5j+%`$>-ulIbY!?l;FD@~SMA$xStenhzBY0~r9*Kg13U^vGz1$F zZgp_})WE2QaQ0y*ma|vG&CAP6H`hKE1{rIs!^ASG);tDwIV0aFd*Z07&-2=~ zDJ&JRs0if22Y(FAdOHhCA`Aguy|rSa9A#hXI{rh{gD*S&bD_gn)A4sly1UUKo?FRD zvY2sh-MV!&6|4wx%-DlAcR>u9VpMDh!lF5(HW*xdc@S?hJ2%I(fB%P}zSXuVId3j| z7JA1`zYJ6LvU{YvPUKV1bhwk-0Q--_EEd99f7X|Xux0)zU()qG@n)IxMW*u((&T+De-n4WF_{dbkVFv_rKQuRyZvZgW#W2fo;8`rBU zj@*e}FKn~0qww&hH{y-9~HOl@d0bZJbc%Q#mV`XP4k0-)zl2O z>T^v7(7)}HcTV{_#KQhuMj-Fa*_mn6u9JfA^tn!@kRtdlJ?-gXRQzGQ9o{gQkOzr@ zK}#k@n0dulcuazzg3S{w(DrzbNqU})9AC<8&wEp#Uzla)lrpg3;cr^K^SJKstN!dy zopXQ2v}>pSSAt)Sk4T?hE*#!ZS}AugJZ^NNms2wcM1i59eBR#6^$tXH1l7-I-ZI9- zVCjZJN;i`DH)Z%~?TmFszH{}XHFA|1@d-vJQocSwm2jiosXi;FPdqRrd26V~Sjf>P zf>?Errd0iuM*zj8oIbTW0Y4V&p}%=DP%+sZNLdW+n}J_e~;3^rLwx3=6G}6zCVP{4b4q2&m^0E({HrFeefM$ zC~C7Lx{?17$x%u+tX{p^^!r-@&{NZ=zjfQVEMlZV7|0ctA|r4q&;SFAHH4U$Zu~W# zx)kD*#I*g@y+$1Y^9B`Q866tC2gjn(%jk#wI{vk{WdNhub;mNnlX2{`s!PrkP+9CyFNx!yyI8WaDry24;m#BC^R z@cvZ$--iyTX96YJyn1Db_zctocpx2x5~=#x5gF*a5w4;1$^-}F%FIS8g7FC4f10p2 zDGHNu!X?5ajYLhVF~#($`Vs4SzCo#kB{W6DE5rW;`)azgZ6ZNFHcVAH0w0L8Gru@dyek9_)-_lZeVV^nYEl#T zRp-q}m27qEE7j^Xe-T)o#e1Bx)_uYC01vLix~?qH8RPeXzQUR)C?IepR>0>lP|rn+ zIcC(Z-cBC^Qp7q$hF%IDuS>HFkjIcX^!;OQ@-73Vy-> zq%v&zYmWfHN);u2$&>rU!~3#;cs5?8qnyfj$ZD+s&Kv(In;4us_csI-DlVs2D=Tf^ z&OCBq_!$dzVeGloz1nk4KXM9noo#29Gh7B%X*A6(ml*|D^1gU}bI(2T{(EA%F|ki{ zb96oM$QMKEr9QeM{x%QjC zSJ$Jmo*1C1y5AS(D;N|Bf=_2P`dSGCScTm`~)ZX++qiy4ck0PuZ zZhi~q8Lv~a&OJ_{Xly=$SqX*r5u93NATE4PHkkckfeBV7Za-*nOs$at0WXw}&z%ON zFR1#88YX64*CrKwS;bUARU5Zv^SNWv-yb;NxsAEjqUUYf+UZ;C)(s_08#LzIsq5(R z^@MMpko(9x_vb?!8|{QGG#1_%U7CI2e|c|AX5G%BxPn`N!u3UHaZ#8wqnvAmQRC_| zFwXge%^S~Qvu52b24=^(A12|_-iBoR5`6x<2?0O3JeU&omqATs)7AW}z>%jPpAEU2 z&_svlYZLN}YZiv*-pjZTDK{;h%l*aA#pVxM@Vyp^;Wo7JfbPi?7qNonDS! z;GDFzR+N9*+03znLoGCKhq1YhQ#3WZM>Zj2ujN~E2QMLRx9nSuXNa=xzOQc+1iWF1 ziy)kkM;d#!-c=i{ia)Skt!8M!c)gVUn3#lU<&)sJ%reFi*LFAA`prwLhMQmAy`5Qf z%ISu=p@ZU>&xzpF-$(!J>vo{5k*8rSy}##7?2`cFhSv=;QqD5D7ef&*RW2DVPj%V@p^97>YTwLOvc$ym!M3z z0Hv#ey@izWCxI`m+g1@U@j!3o41?d;8QU85I}F(@>H*sBu#y|M~p+R1I$c)mlqcwO)8(q$N#I zTDo{^txfBz=LLn&9>YRFcD9%czjznFA`cbhOL^J}6SYEjCqgueur3Wmr9TBaCbhw8 zJK^1d8B+kVFT<#kynMsLx8gK#6%8C}d_}wBu^%lFRTOEE($Z|sWa@F9K6Az`4@1(m z`^eoEO2_FQh7_ThSki2@Aa?jLe2!h6w_3k%WF!eDQLcHL)x@DDLSKG4yF=c|3p?2y z$HNw$xCw1K1wKa}+&0q0M8G&1>&#UnUS^IzzR2pNXu?e4G$HPQn!+vnV`fGx^0?;| zJhv5~>2lGFq)?vjf`L8;L~XF3nSue64jh|8AxKKVq}?1gd=(!*@=UgZj6rx#pvfp( z8k|0T6Q8LHiA!uYf|u+8glyipfs_jA?` z#M2#alET6oAS83ua8BddCNT(ol>HFH?DBZF_Q7uVybY8C40y0!%9JoD?d>@u3$9x# z^h-PRwxPZU`-T^`+WM((cs&@Xcvh5`*TE$!3h$Z(Np1gO5uXa;HBB^YYMBspf#w_` zU{sWhCqDt+74xtlJHWvaiFL-+)lKl}ih^`B?L^%O8cp0TbBJLT4f0_}39__&x-k6K z{~`?6xDWRcG4V;m64!>|F)Eq*)pgZV_EmzCw|to2&q3qcM6_Y%@c2lEom^l?CVYKg zpr?f1P#%G|UqryCVlOCO=uqw5zgpve949`Xar4Mu`t?a?r#@~n+^(kr2ps}sOfx9! zhFjC4!N^q^%|*N>DhSAdQ!kB>^YU3+iVE<1J~&$i1_Y=kTFlMP#-snc_uzp#o=P<6 zu~AWb2sIVPqdY$(0R!whawTx*_!ScqF}86zRWM}y*rkRYN&H(wkAI>EhW33d248#% zdE&so`eCAJgSB3Mf&}Htj-5NT_YQ22!xlh@-hzoL`humPpdb})z3s0q-XQP(wij*>5h0~(%agE$3a=!!!B z@84}9G@={RkcI)L8YE<1=wyZtA&^bML{O0w--%siWirqSJDBOMg9!K13Wx_1S8{LdPrU?pYNt<+y%!3%UgOK7m*-3TYbL_48)<`$+V`n$J)-^gHEq?s2z`U9#`@@ zN=X$C1Lnd}=zIDP*I-3ir3tIn&fCwSavMaBBLa=@BWn({!BsCFimxE;mLg9NVywbc zr!wTrA#I3r%GJDf-MV2oaV7frA$~EhTw7Nnmo0Rs9rm9@<2VQ>5fw#6MKMQ>0+<69 z!oQi^I2aO;XRj$)M~xh25$n#u>5(JV(J40~Hz%CMT-#CO}r*iLAQrzQ{n|MF5Ff`nSEvn{YDi3KKWSfwJ(BPyC*&>o0v1OgKcPU}1L zLo2?n-9h%`+Q zAq0knCF7nRKnMd}Sp|M4l2mroG&@$&!C)#Z4BK-Z;$Ty`o}5Oq0pc0QZ%4hCt`))x zwZHNC8{6KKR)7~;L-_ujgoNEByQ6Zfol*gJDJcZ`Y?5m)SHq=17)&o!-^iy=rI23Su z3tJ*gJe~}@Q+WLm;f7G0IS++_Un`+8gYz&9aYpd_OFYxh{Xipcf(2m`3f}ryRLv*m zRszF%bmYX}L3;Tow6pE8XlbOdBuT)xw}Ry<&{~4-1>1@OXsI%$9AE=!8YWu$kfS)x zJ--94nqm{Z8Qv7#ijaXrHjEo9K*NWxV5T3K^)RCv0(Pg-UF1p9M{o_ULPA3(hxgBP zY}y+z_h`wP`x@GmYLI`}e@%%K?mNLB5kWK(CwGfj4yscT<@8xvf=n=HJTXVFeBwEA zthr%(6F0))KDak-cvGqJ`Sa(^Is&Ff9vI7p95%UEP%!)Z*6%lQvH1i9QX2m%mKT%&ZDTP-=+OlgA5B&``w>aW&VF`ce)aC%X~=qHVGcG7HxGH- zG$ROgV#SGTaC^G(9h6pmQ({U|v_Mo1n%&B^w}djLzd_Q+UM=6* zii*|giY?vv@7RqlX@f0kkyzLqi(91cPz7BB_RAB@7UX6*Pt0kQkJFPIFAt74o<(yM z(YM$|H=RN!+3@OO>E)eg(~XJw9E+&6e!A1`i>7#T^WX?u(I`rpafM}1cq*#bv`fau zm5zllS2V+6C-!fRSypyM-LtaH!cXlejK7{=4}62SxyI)Sf!lN5`cZ=28n>q zWjw5b2KbVQYcQ<1n~9|B4iD?fdUgsUDp7Kb8fd87E2^u5@Ko&12S64<@7I(!pc(Iq zoyV-mPedXqE72e)KD~Hm*ZDQPw07TBBYWK0P@rMPzuVfJR!=i zt~v5FTrM?K1e~&1(_1$;IiP`~;PPf&$ql(9+rag0N%urSN+57NU~0HX_{>#>_!N&< z!pcozc#~sijPu%>FpvHT(}bK{K1#%n-+zCOVG0B)$22(D*;DK4lu@}6Emnw_!%KSy z2ez^l%_Nviy?}{fq|P$>qrl)eFxM$1nIHgTzt5StVa_4!SG0AJr|_;q$qD`2nD;rlA!`M0qamF>UFVjdqrovT|62En9`8u(K^d{mZC+sn8UB zxJIzECBD3w;#!AC0q*}Qmkh8kmA_X}JHcS1!>$Zxa6==sBPm&&4 zSr)ww+Bqe7(aT*IKAQIHmMzV2(|myftZfZ-)%QSr;}rc|RpO!k`YQ}C>w!x{8yIuu z{thwWaeUJ>oV6geU_7`lUXe2M1lN^JU14aaNOD93B32*;g@w2)e54)5d5Ez7-Df@8 zSTo`nL#$|!k5t!hVSUI+;6|)c;h=#Ao`eWOi0}q1E~H6-DV~HbVv{xfb6;4EutMC4 z;yNhGckv}pdBatdhNWv7NFHPY^@DeIZ#DYPw%9}W6K&dF$3mFaKQ_j1V?$O>Mjh^5 zuEL$6T(H+n%B)+&5KO>VO??riN)Ylr`o66gX()fBevc;LhLpT)=cWy4&p~_wKAVP_{2g!RQ)@XlGA4BCu3QDy@FGz= zV0R;*kx}0w zxTK|E#N?582EQOje*!4BY=1*v2NChekO*#tnDJc_&dDDko|O;&f9tO{1UvD`ZyiG% z&O_2jsfQB;X}d^xf+Ro_|LStOwj>o99e+&7ZH*5=BQ1;x0tsj(OE{Mnkcg5LMjjp@ z5{yp7jEQohE&Viz4;68AP`Rr>ii%(8=h?TfG@T9Y zy)XDLH|eJT^4H31nL{elfeFzyJN6OiCcfIA44+>aCa9ng#5L z@_i>xPKi^k&;!*-;tPubBC*+Il~`Tz75h>H-(Px!?n6%QUR=j2<+Z=8UoWv_8xj!k zM?Q7D*Ux9UciD-O>O%j<@4LIZ)5AkU^?F8LvF)gB6?-N)KN$Q*QI7p(?OL%c z_^dHp^UQ?cQ#=bp^m}ZR*!#{qJqt~a!QgMU#kf)jAh|;)_6g}-lDfr*_X0de>F0n4 zjShg}@3u0yI~#W>ucoN;G$m=dRDC`tC&&9*;LstJ08Hg!WT*R|w}yU+?;$s0vyA}V zyzr3|0FVGL126i`qhyepP+bfqc@QVy=hV78)~piFRTIi@a3Iu8ZOEOX1ajlzo(O8d zNE#5w`G6^up*(oI+ZW4)Ho*&H5LV*>oWzL}0q;N0V=tEB`S6w@b)zA`CedI=m~O(~ zWjX}KYWpC{jOi0DJ`2Fyc>n?b^UpsK)@x5NsUQ)e5|IxmD0s>Zl+xtVgyR~DvgYlJ zQ%|-J3>{aVL-%iidWV!PWM2cy_5?h-#2yP3FTz3@WqVi!8=h16%d5%NyxsK9utu=nd>iN2p?g++2$C9Gaj;sN;&_B7r@k0BN8KBxNN2po5k{Vl0l+18YrgrK)%fRz?aGN6f7Q{qK!; zQUa^t`$B3raAJ0}agd#*iF6!zUkpjrKi|d3+;C4)9^maAh|-@eCT^l!_mM-wRLgUnc)`guw|yRS%WV-9Tir9AT0j&CAQcZF6xw*xgfcviH7lc$ z7~;k$tBRzO=BB#H1gxLz7+CAPwxp`l(@3YlH64}(xbBJMPPvh$z>9wEc@qfLC1Crm zT{;B9K7Hm5LXz!(XFp2v<^s1#1S=YjguM;O*?;{;F3!`i_jtM(D2Y3@zVR7(FJ=;F zTG9ps-BL$!Ms3&$;CvlJ7CxN1s#b(#WMH7WB^CCSd@tB28a@)^d~kAV0>nmgCep&z zanvLKJSBX5Wm$s_vTz=b>+I}2X))@YPll@34OR(d{3uF0Xjt&n7F{Fb%DIcd!y5;r zQ?|Y$h>sx!Tq|Etcz9p)Q}$~{%mfi6ApNUAFQ}{$r~b1bB#2!=41Sitv#=%&h=H8% zeOVc)Q6emHX98P1O#mN-NP8bAzZyhQ`a-$j{vUCKQer^9ErFnJvFD>vMCeR~h?+dn zp7T?=FTY~rULz(+tVRO^0}@%NnvFehc5g*6Mh){+dU7FVK`88e&6DOCBShvW!2eaI zU#^AsYHZDeRaCF-DSIpWL-E@B+vG}@{Hi|rsphkbZ3l68*I9}HBCSUcWV6ynCT;Djjo(Ho#UA^*?Akd zgu8nlu`4Qs<5fTms=_z#oP<{OY#c}LqRy5~zo#Dwa0ncb=f^C}JcwPMhW;shq6I+R z8tW~-uNIPO?pdqc1Y3AB5S@s{37*uKKu5`wnxdOo4_lBVG`Fs(2ltnHuC={@mX8b< z=ny_hHCs`eG#Jx)OeFREAH?VXyCviQlkXN4h?dGP4*91nvxpo5!SpjGfTvSwVs*M@at$ zDAZBGC(p9&FhIZa#HR>Q-Q}IP(e!dHvN-PeS}}pH9g&JS;@tD~EqpniJrEZY6K~U9 z)Q&`TeGw=j!KtuT{yDG&UF-<_bfi{t9~hT|Pqk8QFqgbWbtIO15ubr)N<}Ti0N6?_AZH zshdJpMPM|+R#u39A7L1tCggz6V~HM@EKYv|^4OPt4ZBH6xHdb%;{(nQ$ENXUB%)Cw z_l52lU%aRpFa@hpQ`l0jt;ue)^mB3|s3^ghZyCa!@+8cY)}FLN4KT8bPC214gC!fL4>fU4RD#4!CK& zww)N*fzB1giFWlAsCWu@8Qm})%!ybzYl@hysl&>MleqqaUduBP1|JX!DKB+(^}EIx zT7JBeAsc|cNj>_k@7A(HY%pW(kY1XN##@rPnmYd3Is!+hoc?u_ZR<#`%E!6vMae+BGya3%7m2^!-v&)O0Ey z?zj(yuTS6L43~7PAM&ao*;cX1V3FNG$7aSHKiPtshL|E$;0rqE8{qV{JUwJgx7!BsiaE%vTmLDm6ZKlTuj=ppC7;|!`3nz zWABpmq?Vsj7?<5OMjg@7rs?$g-3Ek;C)&&$9N${4apD^K{vEU(#j^B5V09p z8Mkb4wp<4Dgx@(C!+2tiBjCu(uk$*lwa?7VOcw=kj8U+oX=hG4Y~)lhkjS)bQw_ib z{j=*%dRjm|fg_RAgH_fJmeTWs(PwI+GCRhIAzO#X&LdYIfS-IX*%L{L%++O8fv>_J zdLt_%k`Y1(mn=*k>OV!xFtC*gZIW94IhltMmV6=Ebq5?)|9M$zfsEFZ+dB_mK6icB z`v6D0h$mokpvC;t;=6Y3B48#`&UPSX`HkGT{yHnyUtkc3m^BQ?W$RH`I${890mPAB zyCO4Takdhfbpo8H)}KPz#%58|4(!9aQ+s*7rI__%2GzO+^pK;bb$bdiiSnBSH0M!$ zqZYXB($4{DiK20|SxA%vzp6VpIDkKYoH(O`Q|Of2LQG5?8x%-uW}FMq=^BZj2m=k6 z>9A!2i25KrFo4vE3OCUpKMQN+tg)j|)t0zOMp*He1t?SONU$oio}d`AD+is=x_0c2`{yJnQJ420Aiu*uy4qh6Scf#SPkK}d{}Qvup;zn+rlDvHTJ zk(mSlVMgI`nq+SvR?3$Zl$9TnEhVT~#i!T)@=Kr|BRnQSNqhQzjM!X1JJ z%%!z8t z&Z_|M?$b6UNwRU~qj@G|3Fk1{X(1#U_^Xi-H3Sr;U69vRYlr zmaAnJ9ELU!Thb{n%Qj&`LxKB$gw)8dE@a{)gNc<@e|R#D8yz=#XFl2-N(H|$)S6^fMJ#*e3L7rt z;12nOGQ9rRGNsj&^O$J-n_DS0gsK5@(%6s)D~6Rc^uq~A1QFJ;suJEy1?x8Li~=0z zmdA7l3CtYOWrXz_p^X23K=Ii)jdw4M!X^))to+)N+-zN*m)!6gt`=;*fzkP-inU$%=g`;#PKjFl=f4_LD zG`jSyBgJ6<%PgWV4|kUW#scCR@$PMk`g0BWuINBP3=BY9AYbs3a}idp#N!VWY7HbA z0O6#;2Vm2TMS!HaJbASy%+CCv(#P8BPw5;YrVA~R7FRoqou4}{2e}~C1Eej>{38O>B!`6U716HJYC{UY>p~d@8NG1f(;lF!j z>agfF1&!4p_EmvU5I|(Vq~@9x=MA{Hv%SbMLUXB4!Nl+!kL|%1ZQq){ z&ABkO4T~^34ID>5-}3WfX=SCpgGS9|{d$kxT0~c|c6vd#koKK_>}aCZ)j8c1_Td^& zG6*IdOdNv)ucWb#2S^eDV94?ZKsZBa4}!Bri(jm!^zb??s-tUHzJ)UYH?_ppwscbU zs;dVQ;%I#7F9O? z91jstHx0ndcoPV2$%+TC1bEOWLlEF6-6GOkWEc9~eg-U9GEb(b-AfB21YN4TB@R~$R8pWvh6KZK$V7h{4W zu35h&`C&`{Ju2T0i-xyK_fpaa`iHs&rBm+@@ER#k0|Fw9ZJ0wo7tqg%!e>SWY6b}( zA&?>hK`lAbIBIj`W9Gm}?rdzHX}-QCwdM#nQ-+n*TBm+V7w>LN=D)UHkut&RfIB3& zl&m3IVU+0d0oX6(I5nt38|%;lG6#a>Bgl@?i^SoR5$+RzlQ3`qf*wl$>}3S1@l{x! z&$6qa?GQ1=<%PHaK#MAHcaRvq0OLWcz#}5koUZwj6I_|9eS5=jjr>@}UV#3gjoC67 zb&n9YkP1`497qI%+OHkr;MkH}5gdoqam>x){H2$)A=*{}8jQvh{{b)qI?waLK~rE5 zuT=SKFYLTs6gs3|9%)fo-|iMzekn~1T{wj z7Bih3fxen>^`M2%yXH$GQtLx|3|jogfaN9PWZr827f{16s0h*1X?j$Lw70yx75xzv zf9&6X7Ekvr_6*&Wc??hq7fZIds2D@ON5)c0BN`Ui?AlnqSeP@ z4QF?7=`7Zes7rg7H#)_j=&z#-=m=Ju52r?0%Dv|*jabXTTueP={GlA20^>^Wz~<@6 zt4@FL6~4=BT5yq&x)MQ66?IN+s=nwXpRACTEBb5d-{15AEJFaYPnHEh1^TMWX2@4s zR){f-+Bj!1MlJCN&2EnqPcPlz0?A(*iq%esRtf|e;zpYA{ZG>XX0 z>eJ-+t2>rRnASyI@&_kep0t1j;sy2s1T_InsQ^yQHOUYk1D;RlIvtl6XGTEhdF=16 zbmom=a)XCRkha56Jy-CDs*0R1jX6xcXcg&}(^9lXwOh@bc8i=RbWQr~F7vP$Zodxq z$>uLr0jGMB*m57fIPYD%oS*#nw+@tB1X;ax^QI~6PGiTJfReJ&WjgAwfKausJ9i%0q?2}oIZOt&(RlrKV}a}sYUOMjli788=qTw?qreGbwxd3A<;snED zxcPX6UQ3<(u)FcZa=2{$)wcT2kzNPV$L}5D??{^S?d59rw6{!CG^ja{p8BS9&NCEb zWE_`0I0YyNONSQrfY!@O;7OkiISxCbGK`HDABvO;=?}*xS0t4|H$d!OA&=4o9zZ6Sa!Ip-xL-YJD0v z@42Q`sy)n3d%L(sKH1|~V#<@z4xapN%hjFwBWImbTpkyAO`dr7c2+%Lrn2c<2f;Xs zfA$N$#ufz-g-O-&vIc01m%3jhY0y*mX$cD3&VIibSCe}=_FaBm0ii`W2W z&Ay7p6Cdxsv}2N2c)P*TZe4bNmBjJ^Ju#|%D*tj_UTD&}RfpchUO&$hza+%nczEEc zxcoj@1(m>#-m=9TBQ7s|eC{~R)=#E~kNupzRy5%Gv&y%yW}rZt{YrL6^-@l^=S(=u z?%m%c;&O6YQ-qJPZkc>H4|PwrSzFyBY%^;w=r$B`xLVtdeA+qVjz#naJQ}JNwt7ZJ z-raV{rH8-y?>h3bvSo%wYk~`S!t2+ECmk#yGOV1G+FLGm{#nP2h3Rb0ma@~;x>2#a zmm98dXJo@PS~dVxpTs6wXh_Hu3VM&%2mR&z{nXsghl%S3?ODF=?o#u|navE7rUv15 zGkKtY$wEfPMI4rx>5!T0(~CQa;4Y>)JQWQ~xL>h-|GkbihO)Y^FW+^8yGe0Fx`KiN z=6V@($BrLgia3N}y~sBXaKai!a`go~LH9LCe$zx+!J!dY?`psSH>Nq#SLW_B=>A*%0vy!Yd1Cr_C~)M zzB|-j{3UXJAwJc6Z|{b2{cP-rs~pXh&tahWEPSHN)ES7tBRH5_7Na*ZokBI_Sex_p z>lH8nU$>ag;w?F4(XkLp4sg1r@m8o$PN9r^$VnnB*jF=QWcFZ1&9tef(&N2WSLitN&wDR5rs9&)z$n|Kve`+deRDIP1PG4HdADDFUQ zFa?UpIrGhT*KZp1@D^ZvHOJ@NyYan%e(#uS-a9n1q`Jh|F9_N%d{9uO%X@8se(TL+ z^H|`sXG3F$rT(xlS6=jJx3mfV#5Jy)jT%7>vj?G4YKKu29^#pcbjvhmh@AlSH%GR& zG&bTdcCcm_b}1DW5gCTQLmg2DRtnvG!skOpsz=2->guB4;DYY1(z2zlvy%vf264Vx z(C1aVq5iX+xxiH_g!Pvu$Nlc#2iXN@AvmVlAfI&V07_}-hEM{}&%0ynhmmYKUZ$}z zCemwO7Be_h=!eU20XwX|iin8t0vK0}QzOFyG^|dOUlk^SF{UNGcySU_R&#Un05a3o z8}CUg;)Oa8Y4s5&y)D?ZDe&S>G7-hN3||1Zm(%H*X^XMH)c(-wD_z#vv#xXf!5xyz zDDm9Bo?2WhIhcouTD7IqXZu{B+znS!#*3(J>yU;V*}T(%MY>)`=)$D)!tFmYGc!Xl zN`%l3Q(H1U$D)&a_cm_E7!=rMqF9T;qQ>UZI>_a!!b>-A-t69ci8#EICxd|WIqP> zOH1@`ENmU1jTFs&-7ST|sQockTqxokgt7=bzAdM3vV$*`Ke>DN?tc5+s*dpSYejtP ze?A{!cchLx4v1&E;7kvV`NMj%xN*kI0oUj|^C5`M5WC3AOH856^Nlghc7$ft6D3Z2 zo>LMh&z?OcR>BV;FKTLPa{v15D!7X2ie=Va1v-d3V@EHrOS--y%6tG2F0I8P=;@G} z^KHKMO2F(R0p3UO6oRArplv6x7i+_}YJ;-Ln|$SOKP|QCmnQE1R+`*sf+^K(%n9z4JXAY|b+7{oTlB?%T3U zh{s8#7Jm4_*MSkl2&pN);0tK=7QwN{1d8m{!!aciNy5{DXAuCV;L_f@tC5~pYIcE* zu4nP<=FLqQlsKWa@SN?v!^_8~=H!%#z6YbHAkgN)-w+t9dmMvUGmM9rm@WWHhx1l;2aTrw@%ASFLexLHx``QAYl$Bh zP?au$IQa^5Zxx*}!7hQ)q~sh-0H$QpKnwlq#dGZC^y~S}k3zbYR&?bm(EUL9e5K0U5A6@;47zOcqFelO0 zR0~{5BJ0sm5mv7mbAOSSrwdAPFefRu!1EZI$OM>(R(Io(l9A2$FkgFJ$8<2*JH9k) z>^~kcp8Dj;4#NDx=ankDUDRp9U-}4&$N8SMR#&IGQ)-`2T;aY)h2c z^WT8s#qJxRC0-ZWfdwLPgHG|Y$H1W%{V?Wo&;pIP`oCY>(;=+A zUYjoWpC1NHalqw4A;6g3waW^$p#oUwhNPvXt#6z1E=i&dsB0N;qVMYuDd6<(W#D|c z%2u}5pdSD3Q?Et;Cf;RWc<~-Qzp>{Duz~>Aaluhhvw$u2CnZ*A&A3ZTOM&_70&r;& zXv3v<*4?$!=goWfbXDU#PF~(n;9>({Z(~m^*RIA=;9~ptkTHivz(eYgzRW7P!aCvGvF0HCt%r$I}1F0f19(*qvn5aR89I>wWI zPb@odkzxt3lLRbBz&FGA{pRb=$jZ6|9BxqY1a?C}*DX)iX8QN(nPgkxh1;$S2bvQ= z6&*u@BXA~;i<9$XndA#KU`Y&IDShoWa8RJ3t_6G@8pxRmfsj?qqfDxX!+++_U8kKl SzcYye1+u5BpUXO@geCyYP{sQI literal 48063 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 z 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 KelF{r5}E+r>oFw& diff --git a/articles/introduction_files/figure-html/unnamed-chunk-12-1.png b/articles/introduction_files/figure-html/unnamed-chunk-12-1.png index f77796f20a83382c67931b8ec5a08e04fe0bf66e..29b2fa4f99457adf77521e75c3b73341a27c1024 100644 GIT binary patch literal 104425 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 in9ctoz5Cy1`8qVwd8MlY5B?1aK3`q{ literal 104027 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�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 Vr;QqIsEbhPh6Y6jUQ+Kp@ee@Ax!wQ( diff --git a/index.html b/index.html index 75671fc..29a725d 100644 --- a/index.html +++ b/index.html @@ -263,14 +263,14 @@

    Preliminary plots
     pbmc_small %>%
       join_features(features = c("HLA-DRA", "LYZ")) %>%
    -  ggplot(aes(groups, .abundance_RNA + 1, fill = groups)) +
    +  ggplot(aes(groups, .abundance_RNA + 1, fill = groups)) +
       geom_boxplot(outlier.shape = NA) +
       geom_jitter(aes(size = nCount_RNA), alpha = 0.5, width = 0.2) +
       scale_y_log10() +
    @@ -319,8 +319,8 @@ 

    Preprocess the datasetIf a tool is not included in the tidyseurat collection, we can use as_tibble to permanently convert tidyseurat into tibble.

     pbmc_small_pca %>%
    -  as_tibble() %>%
    -  select(contains("PC"), everything()) %>%
    +  as_tibble() %>%
    +  select(contains("PC"), everything()) %>%
       GGally::ggpairs(columns = 1:5, ggplot2::aes(colour = groups)) +
       my_theme

    @@ -358,7 +358,7 @@

    Identify clusters
     pbmc_small_cluster %>%
    -  tidyseurat::count(groups, seurat_clusters)
    + tidyseurat::count(groups, seurat_clusters)

    ## # A tibble: 8 × 3
     ##   groups seurat_clusters     n
     ##   <chr>  <fct>           <int>
    @@ -396,7 +396,7 @@ 

    Identify clustersmarkers <- pbmc_small_cluster %>% FindAllMarkers(only.pos = TRUE, min.pct = 0.25, thresh.use = 0.25) %>% - group_by(cluster) %>% + group_by(cluster) %>% top_n(10, avg_log2FC) # Plot heatmap @@ -417,7 +417,7 @@

    Reduce dimensions
     pbmc_small_UMAP %>%
    -  plot_ly(
    +  plot_ly(
         x = ~`UMAP_1`,
         y = ~`UMAP_2`,
         z = ~`UMAP_3`,
    @@ -446,21 +446,21 @@ 

    Cell type prediction= "single" ) %>% as.data.frame() %>% - as_tibble(rownames = "cell") %>% - select(cell, first.labels)

    + as_tibble(rownames = "cell") %>% + select(cell, first.labels)
     # Join UMAP and cell type info
     pbmc_small_cell_type <-
       pbmc_small_UMAP %>%
    -  left_join(cell_type_df, by = "cell")
    +  left_join(cell_type_df, by = "cell")
     
     # Reorder columns
     pbmc_small_cell_type %>%
    -  tidyseurat::select(cell, first.labels, everything())
    + tidyseurat::select(cell, first.labels, everything())

    We can easily summarise the results. For example, we can see how cell type classification overlaps with cluster classification.

     pbmc_small_cell_type %>%
    -  count(seurat_clusters, first.labels)
    + count(seurat_clusters, first.labels)

    We can easily reshape the data for building information-rich faceted plots.

     pbmc_small_cell_type %>%
    @@ -472,7 +472,7 @@ 

    Cell type prediction) %>% # UMAP plots for cell type and cluster - ggplot(aes(UMAP_1, UMAP_2, color = label)) + + ggplot(aes(UMAP_1, UMAP_2, color = label)) + geom_point() + facet_wrap(~classifier) + my_theme

    @@ -481,11 +481,11 @@

    Cell type predictionpbmc_small_cell_type %>% # Add some mitochondrial abundance values - mutate(mitochondrial = rnorm(n())) %>% + mutate(mitochondrial = rnorm(n())) %>% # Plot correlation join_features(features = c("CST3", "LYZ"), shape = "wide") %>% - ggplot(aes(CST3 + 1, LYZ + 1, color = groups, size = mitochondrial)) + + ggplot(aes(CST3 + 1, LYZ + 1, color = groups, size = mitochondrial)) + geom_point() + facet_wrap(~first.labels, scales = "free") + scale_x_log10() + @@ -500,16 +500,16 @@

    Nested analyses
     pbmc_small_nested <-
       pbmc_small_cell_type %>%
    -  filter(first.labels != "Erythrocytes") %>%
    -  mutate(cell_class = if_else(`first.labels` %in% c("Macrophages", "Monocytes"), "myeloid", "lymphoid")) %>%
    -  nest(data = -cell_class)
    +  filter(first.labels != "Erythrocytes") %>%
    +  mutate(cell_class = if_else(`first.labels` %in% c("Macrophages", "Monocytes"), "myeloid", "lymphoid")) %>%
    +  nest(data = -cell_class)
     
     pbmc_small_nested

    Now we can independently for the lymphoid and myeloid subsets (i) find variable features, (ii) reduce dimensions, and (iii) cluster using both tidyverse and Seurat seamlessly.

     pbmc_small_nested_reanalysed <-
       pbmc_small_nested %>%
    -  mutate(data = map(
    +  mutate(data = map(
         data, ~ .x %>%
           FindVariableFeatures(verbose = FALSE) %>%
           RunPCA(npcs = 10, verbose = FALSE) %>%
    @@ -524,14 +524,14 @@ 

    Nested analysespbmc_small_nested_reanalysed %>% # Convert to tibble otherwise Seurat drops reduced dimensions when unifying data sets. - mutate(data = map(data, ~ .x %>% as_tibble())) %>% - unnest(data) %>% + mutate(data = map(data, ~ .x %>% as_tibble())) %>% + unnest(data) %>% # Define unique clusters - unite("cluster", c(cell_class, seurat_clusters), remove = FALSE) %>% + unite("cluster", c(cell_class, seurat_clusters), remove = FALSE) %>% # Plotting - ggplot(aes(UMAP_1, UMAP_2, color = cluster)) + + ggplot(aes(UMAP_1, UMAP_2, color = cluster)) + geom_point() + facet_wrap(~cell_class) + my_theme

    diff --git a/pkgdown.yml b/pkgdown.yml index 6403822..809ba99 100644 --- a/pkgdown.yml +++ b/pkgdown.yml @@ -4,5 +4,5 @@ pkgdown_sha: ~ articles: figures_article: figures_article.html introduction: introduction.html -last_built: 2023-08-25T08:38Z +last_built: 2023-08-25T10:51Z diff --git a/reference/aggregate_cells.html b/reference/aggregate_cells.html index 870596a..7bab498 100644 --- a/reference/aggregate_cells.html +++ b/reference/aggregate_cells.html @@ -77,7 +77,7 @@

    Aggregate cells

    Arguments

    .data
    -

    A tidySingleCellExperiment object

    +

    A tidyseurat object

    .sample
    @@ -110,24 +110,9 @@

    Value

    Examples

    data(pbmc_small)
    -pbmc_small |>
    -  aggregate_cells(c(groups, letter.idents), assays = "RNA")
    +pbmc_small_pseudo_bulk <- pbmc_small |>
    +  aggregate_cells(c(groups, letter.idents), assays="RNA")
     #> Joining with `by = join_by(letter.idents, groups)`
    -#> # A tibble: 920 × 8
    -#>    .feature  .sample   RNA letter.idents groups .aggregated_cells orig.ident   
    -#>    <chr>     <chr>   <dbl> <fct>         <chr>              <int> <fct>        
    -#>  1 MS4A1     g2___A  35.5  A             g2                    23 SeuratProject
    -#>  2 CD79B     g2___A  39.3  A             g2                    23 SeuratProject
    -#>  3 CD79A     g2___A  29.5  A             g2                    23 SeuratProject
    -#>  4 HLA-DRA   g2___A  73.9  A             g2                    23 SeuratProject
    -#>  5 TCL1A     g2___A  29.5  A             g2                    23 SeuratProject
    -#>  6 HLA-DQB1  g2___A  37.6  A             g2                    23 SeuratProject
    -#>  7 HVCN1     g2___A  22.4  A             g2                    23 SeuratProject
    -#>  8 HLA-DMB   g2___A  24.7  A             g2                    23 SeuratProject
    -#>  9 LTB       g2___A  91.9  A             g2                    23 SeuratProject
    -#> 10 LINC00926 g2___A   9.91 A             g2                    23 SeuratProject
    -#> # ℹ 910 more rows
    -#> # ℹ 1 more variable: RNA_snn_res.0.8 <fct>
     
     
    diff --git a/reference/arrange.html b/reference/arrange.html new file mode 100644 index 0000000..f84257e --- /dev/null +++ b/reference/arrange.html @@ -0,0 +1,190 @@ + +Order rows using column values — arrange • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    arrange() orders the rows of a data frame by the values of selected +columns.

    +

    Unlike other dplyr verbs, arrange() largely ignores grouping; you +need to explicitly mention grouping variables (or use .by_group = TRUE) +in order to group by them, and functions of variables are evaluated +once per data frame, not once per group.

    +
    + +
    +
    # S3 method for Seurat
    +arrange(.data, ..., .by_group = FALSE)
    +
    + +
    +

    Arguments

    +
    .data
    +

    A data frame, data frame extension (e.g. a tibble), or a +lazy data frame (e.g. from dbplyr or dtplyr). See Methods, below, for +more details.

    + + +
    ...
    +

    <data-masking> Variables, or +functions of variables. Use desc() to sort a variable in descending +order.

    + + +
    .by_group
    +

    If TRUE, will sort first by grouping variable. Applies to +grouped data frames only.

    + +
    +
    +

    Value

    + + +

    An object of the same type as .data. The output has the following +properties:

    • All rows appear in the output, but (usually) in a different place.

    • +
    • Columns are not modified.

    • +
    • Groups are not modified.

    • +
    • Data frame attributes are preserved.

    • +
    +
    +

    Details

    + +
    +

    Missing values

    + + +

    Unlike base sorting with sort(), NA are:

    • always sorted to the end for local data, even when wrapped with desc().

    • +
    • treated differently for remote data, depending on the backend.

    • +
    + +
    +
    +

    Methods

    + + + +

    This function is a generic, which means that packages can provide +implementations (methods) for other classes. See the documentation of +individual methods for extra arguments and differences in behaviour.

    +

    The following methods are currently available in loaded packages: +dplyr (data.frame), plotly (plotly), tidyseurat (Seurat) +.

    +
    +
    +

    See also

    +

    Other single table verbs: +mutate(), +rename(), +slice(), +summarise()

    +
    + +
    +

    Examples

    +
    data(pbmc_small)
    +pbmc_small |>
    +    arrange(nFeature_RNA)
    +#> # A Seurat-tibble abstraction: 80 × 15
    +#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    +#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    +#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    +#>  1 CATG… SeuratPro…         51           26 0               A             g2    
    +#>  2 GGCA… SeuratPro…        172           29 0               A             g1    
    +#>  3 AGTC… SeuratPro…        157           29 0               A             g1    
    +#>  4 GACG… SeuratPro…        202           30 0               A             g2    
    +#>  5 GGAA… SeuratPro…        150           30 0               A             g2    
    +#>  6 AGGT… SeuratPro…         62           31 0               A             g2    
    +#>  7 CTTC… SeuratPro…         41           32 0               A             g2    
    +#>  8 GTAA… SeuratPro…         67           33 0               A             g2    
    +#>  9 GTCA… SeuratPro…        210           33 0               A             g2    
    +#> 10 TGGT… SeuratPro…         64           36 0               A             g1    
    +#> # ℹ 70 more rows
    +#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    +#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/as_tibble.html b/reference/as_tibble.html new file mode 100644 index 0000000..1d0f17b --- /dev/null +++ b/reference/as_tibble.html @@ -0,0 +1,221 @@ + +Coerce lists, matrices, and more to data frames — as_tibble • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    as_tibble() turns an existing object, such as a data frame or +matrix, into a so-called tibble, a data frame with class tbl_df. This is +in contrast with tibble(), which builds a tibble from individual columns. +as_tibble() is to tibble() as base::as.data.frame() is to +base::data.frame().

    +

    as_tibble() is an S3 generic, with methods for:

    as_tibble_row() converts a vector to a tibble with one row. +If the input is a list, all elements must have size one.

    +

    as_tibble_col() converts a vector to a tibble with one column.

    +
    + +
    +
    # S3 method for Seurat
    +as_tibble(
    +  x,
    +  ...,
    +  .name_repair = c("check_unique", "unique", "universal", "minimal"),
    +  rownames = NULL
    +)
    +
    + +
    +

    Arguments

    +
    x
    +

    A data frame, list, matrix, or other object that could reasonably be +coerced to a tibble.

    + + +
    ...
    +

    Unused, for extensibility.

    + + +
    .name_repair
    +

    Treatment of problematic column names:

    • "minimal": No name repair or checks, beyond basic existence,

    • +
    • "unique": Make sure names are unique and not empty,

    • +
    • "check_unique": (default value), no name repair, but check they are +unique,

    • +
    • "universal": Make the names unique and syntactic

    • +
    • a function: apply custom name repair (e.g., .name_repair = make.names +for names in the style of base R).

    • +
    • A purrr-style anonymous function, see rlang::as_function()

    • +

    This argument is passed on as repair to vctrs::vec_as_names(). +See there for more details on these terms and the strategies used +to enforce them.

    + + +
    rownames
    +

    How to treat existing row names of a data frame or matrix:

    • NULL: remove row names. This is the default.

    • +
    • NA: keep row names.

    • +
    • A string: the name of a new column. Existing rownames are transferred +into this column and the row.names attribute is deleted. +No name repair is applied to the new column name, even if x already contains +a column of that name. +Use as_tibble(rownames_to_column(...)) to safeguard against this case.

    • +

    Read more in rownames.

    + +
    +
    +

    Value

    + + +

    `tibble`

    +
    +
    +

    Row names

    + + + +

    The default behavior is to silently remove row names.

    +

    New code should explicitly convert row names to a new column using the +rownames argument.

    +

    For existing code that relies on the retention of row names, call +pkgconfig::set_config("tibble::rownames" = NA) in your script or in your +package's .onLoad() function.

    +
    +
    +

    Life cycle

    + + + +

    Using as_tibble() for vectors is superseded as of version 3.0.0, +prefer the more expressive as_tibble_row() and +as_tibble_col() variants for new code.

    +
    +
    +

    See also

    +

    tibble() constructs a tibble from individual columns. enframe() +converts a named vector to a tibble with a column of names and column of +values. Name repair is implemented using vctrs::vec_as_names().

    +
    + +
    +

    Examples

    +
    data(pbmc_small)
    +pbmc_small |> as_tibble()
    +#> # A tibble: 80 × 29
    +#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    +#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    +#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    +#>  2 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  3 GAAC… SeuratPro…         87           50 1               B             g2    
    +#>  4 TGAC… SeuratPro…        127           56 0               A             g2    
    +#>  5 AGTC… SeuratPro…        173           53 0               A             g2    
    +#>  6 TCTG… SeuratPro…         70           48 0               A             g1    
    +#>  7 TGGT… SeuratPro…         64           36 0               A             g1    
    +#>  8 GCAG… SeuratPro…         72           45 0               A             g1    
    +#>  9 GATA… SeuratPro…         52           36 0               A             g1    
    +#> 10 AATG… SeuratPro…        100           41 0               A             g1    
    +#> # ℹ 70 more rows
    +#> # ℹ 22 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    +#> #   PC_4 <dbl>, PC_5 <dbl>, PC_6 <dbl>, PC_7 <dbl>, PC_8 <dbl>, PC_9 <dbl>,
    +#> #   PC_10 <dbl>, PC_11 <dbl>, PC_12 <dbl>, PC_13 <dbl>, PC_14 <dbl>,
    +#> #   PC_15 <dbl>, PC_16 <dbl>, PC_17 <dbl>, PC_18 <dbl>, PC_19 <dbl>,
    +#> #   tSNE_1 <dbl>, tSNE_2 <dbl>
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/bind_rows.html b/reference/bind_rows.html index bd116e8..582b308 100644 --- a/reference/bind_rows.html +++ b/reference/bind_rows.html @@ -1,5 +1,8 @@ -Efficiently bind multiple data frames by row and column — bind_rows • tidyseurat#' Efficiently bind multiple data frames by row and column — bind_rows • tidyseuratExample data set 2 — cell_type_df • tidyseuratCell types of 80 PBMC single cells — cell_type_df • tidyseurat @@ -53,22 +53,40 @@
    -

    Example data set 2

    +

    A dataset containing the barcodes and cell types of 80 PBMC single cells.

    -
    cell_type_df
    +
    data(cell_type_df)

    Format

    -

    An object of class tbl_df (inherits from tbl, data.frame) with 80 rows and 2 columns.

    +

    A tibble containing 80 rows and 2 columns. + Cells are a subsample of the Peripheral Blood Mononuclear Cells (PBMC) + dataset of 2,700 single cell. Cell types were identified with SingleR.

    cell
    +

    cell identifier, barcode

    + +
    first.labels
    +

    cell type

    + + +
    + +
    +

    Value

    + + +

    `tibble`

    diff --git a/reference/count.html b/reference/count.html new file mode 100644 index 0000000..39ddb14 --- /dev/null +++ b/reference/count.html @@ -0,0 +1,188 @@ + +Count the observations in each group — count • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    count() lets you quickly count the unique values of one or more variables: +df %>% count(a, b) is roughly equivalent to +df %>% group_by(a, b) %>% summarise(n = n()). +count() is paired with tally(), a lower-level helper that is equivalent +to df %>% summarise(n = n()). Supply wt to perform weighted counts, +switching the summary from n = n() to n = sum(wt).

    +

    add_count() and add_tally() are equivalents to count() and tally() +but use mutate() instead of summarise() so that they add a new column +with group-wise counts.

    +
    + +
    +
    # S3 method for Seurat
    +count(
    +  x,
    +  ...,
    +  wt = NULL,
    +  sort = FALSE,
    +  name = NULL,
    +  .drop = group_by_drop_default(x)
    +)
    +
    +# S3 method for Seurat
    +add_count(
    +  x,
    +  ...,
    +  wt = NULL,
    +  sort = FALSE,
    +  name = NULL,
    +  .drop = group_by_drop_default(x)
    +)
    +
    + +
    +

    Arguments

    +
    x
    +

    A data frame, data frame extension (e.g. a tibble), or a +lazy data frame (e.g. from dbplyr or dtplyr).

    + + +
    ...
    +

    <data-masking> Variables to group +by.

    + + +
    wt
    +

    <data-masking> Frequency weights. +Can be NULL or a variable:

    • If NULL (the default), counts the number of rows in each group.

    • +
    • If a variable, computes sum(wt) for each group.

    • +
    + + +
    sort
    +

    If TRUE, will show the largest groups at the top.

    + + +
    name
    +

    The name of the new column in the output.

    +

    If omitted, it will default to n. If there's already a column called n, +it will use nn. If there's a column called n and nn, it'll use +nnn, and so on, adding ns until it gets a new name.

    + + +
    .drop
    +

    Handling of factor levels that don't appear in the data, passed +on to group_by().

    +

    For count(): if FALSE will include counts for empty groups (i.e. for +levels of factors that don't exist in the data).

    +

    [Deprecated] For add_count(): deprecated since it +can't actually affect the output.

    + +
    +
    +

    Value

    + + +

    An object of the same type as .data. count() and add_count()

    + + +

    group transiently, so the output has the same groups as the input.

    +
    + +
    +

    Examples

    +
    data(pbmc_small)
    +pbmc_small |> count(groups)
    +#> tidyseurat says: A data frame is returned for independent data analysis.
    +#> # A tibble: 2 × 2
    +#>   groups     n
    +#>   <chr>  <int>
    +#> 1 g1        44
    +#> 2 g2        36
    +    
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/distinct.html b/reference/distinct.html new file mode 100644 index 0000000..13e6c5a --- /dev/null +++ b/reference/distinct.html @@ -0,0 +1,153 @@ + +Keep distinct/unique rows — distinct • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    Keep only unique/distinct rows from a data frame. This is similar +to unique.data.frame() but considerably faster.

    +
    + +
    +
    # S3 method for Seurat
    +distinct(.data, ..., .keep_all = FALSE)
    +
    + +
    +

    Arguments

    +
    .data
    +

    A data frame, data frame extension (e.g. a tibble), or a +lazy data frame (e.g. from dbplyr or dtplyr). See Methods, below, for +more details.

    + + +
    ...
    +

    <data-masking> Optional variables to +use when determining uniqueness. If there are multiple rows for a given +combination of inputs, only the first row will be preserved. If omitted, +will use all variables in the data frame.

    + + +
    .keep_all
    +

    If TRUE, keep all variables in .data. +If a combination of ... is not distinct, this keeps the +first row of values.

    + +
    +
    +

    Value

    + + +

    An object of the same type as .data. The output has the following +properties:

    • Rows are a subset of the input but appear in the same order.

    • +
    • Columns are not modified if ... is empty or .keep_all is TRUE. +Otherwise, distinct() first calls mutate() to create new columns.

    • +
    • Groups are not modified.

    • +
    • Data frame attributes are preserved.

    • +
    +
    +

    Methods

    + + + +

    This function is a generic, which means that packages can provide +implementations (methods) for other classes. See the documentation of +individual methods for extra arguments and differences in behaviour.

    +

    The following methods are currently available in loaded packages: +dplyr (data.frame), plotly (plotly), tidyseurat (Seurat) +.

    +
    + +
    +

    Examples

    +
    data("pbmc_small")
    +pbmc_small |> distinct(groups)
    +#> tidyseurat says: A data frame is returned for independent data analysis.
    +#> # A tibble: 2 × 1
    +#>   groups
    +#>   <chr> 
    +#> 1 g2    
    +#> 2 g1    
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/dplyr-methods.html b/reference/dplyr-methods.html deleted file mode 100644 index 3a50463..0000000 --- a/reference/dplyr-methods.html +++ /dev/null @@ -1,1000 +0,0 @@ - -Arrange rows by column values — arrange • tidyseurat - - -
    -
    - - - -
    -
    - - -
    -

    `arrange()` order the rows of a data frame rows by the values of selected -columns.

    -

    Unlike other dplyr verbs, `arrange()` largely ignores grouping; you -need to explicit mention grouping variables (or use `by_group = TRUE`) -in order to group by them, and functions of variables are evaluated -once per data frame, not once per group.

    -

    `filter()` retains the rows where the conditions you provide a `TRUE`. Note -that, unlike base subsetting with `[`, rows where the condition evaluates -to `NA` are dropped.

    -

    Most data operations are done on groups defined by variables. -`group_by()` takes an existing tbl and converts it into a grouped tbl -where operations are performed "by group". `ungroup()` removes grouping.

    -

    `summarise()` creates a new data frame. It will have one (or more) rows for -each combination of grouping variables; if there are no grouping variables, -the output will have a single row summarising all observations in the input. -It will contain one column for each grouping variable and one column -for each of the summary statistics that you have specified.

    -

    `summarise()` and `summarize()` are synonyms.

    -

    `mutate()` adds new variables and preserves existing ones; -`transmute()` adds new variables and drops existing ones. -New variables overwrite existing variables of the same name. -Variables can be removed by setting their value to `NULL`.

    -

    Rename individual variables using `new_name = old_name` syntax.

    -

    `rowwise()` is used for the results of [do()] when you -create list-variables. It is also useful to support arbitrary -complex operations that need to be applied to each row.

    -

    `slice()` lets you index rows by their (integer) locations. It allows you -to select, remove, and duplicate rows. It is accompanied by a number of -helpers for common use cases:

    -

    Select (and optionally rename) variables in a data frame, using a concise -mini-language that makes it easy to refer to variables based on their name -(e.g. `a:f` selects all columns from `a` on the left to `f` on the -right). You can also use predicate functions like is.numeric to select -variables based on their properties.

    -

    Sample n rows from a table

    -

    `count()` lets you quickly count the unique values of one or more variables: -`df -`df -`count()` is paired with `tally()`, a lower-level helper that is equivalent -to `df -switching the summary from `n=n()` to `n=sum(wt)`.

    -

    `add_count()` are `add_tally()` are equivalents to `count()` and `tally()` -but use `mutate()` instead of `summarise()` so that they add a new column -with group-wise counts.

    -

    `pull()` is similar to `$`. It's mostly useful because it looks a little -nicer in pipes, it also works with remote data frames, and it can optionally -name the output.

    -
    - - -
    -

    Arguments

    -
    .by_group
    -

    If TRUE, will sort first by grouping variable. Applies to grouped data frames only.

    - - -
    .keep_all
    -

    If TRUE, keep all variables in .data. If a combination of ... is not distinct, this keeps the first row of values. (See dplyr)

    - - -
    .preserve
    -

    when `FALSE` (the default), the grouping structure -is recalculated based on the resulting data, otherwise it is kept as is.

    - - -
    .add
    -

    When `FALSE`, the default, `group_by()` will - override existing groups. To add to the existing groups, use - `.add = TRUE`.

    -

    This argument was previously called `add`, but that prevented - creating a new grouping variable called `add`, and conflicts with - our naming conventions.

    - - -
    .data
    -

    Input data frame.

    - - -
    y
    -

    tbls to join. (See dplyr)

    - - -
    by
    -

    A character vector of variables to join by. (See dplyr)

    - - -
    copy
    -

    If x and y are not from the same data source, and copy is TRUE, then y will be copied into the same src as x. (See dplyr)

    - - -
    suffix
    -

    If there are non-joined duplicate variables in x and y, these suffixes will be added to the output to disambiguate them. Should be a character vector of length 2. (See dplyr)

    - - -
    weight_by
    -

    <[`data-masking`][dplyr_data_masking]> Sampling weights. -This must evaluate to a vector of non-negative numbers the same length as -the input. Weights are automatically standardised to sum to 1.

    - - -
    tbl
    -

    A data.frame.

    - - -
    size
    -

    <[`tidy-select`][dplyr_select]> -For `sample_n()`, the number of rows to select. -For `sample_frac()`, the fraction of rows to select. -If `tbl` is grouped, `size` applies to each group.

    - - -
    replace
    -

    Sample with or without replacement?

    - - -
    weight
    -

    <[`tidy-select`][dplyr_select]> Sampling weights. -This must evaluate to a vector of non-negative numbers the same length as -the input. Weights are automatically standardised to sum to 1.

    - - -
    .env
    -

    DEPRECATED.

    - - -
    x
    -

    A data frame, data frame extension (e.g. a tibble), or a -lazy data frame (e.g. from dbplyr or dtplyr).

    - - -
    wt
    -

    <[`data-masking`][dplyr_data_masking]> Frequency weights. - Can be `NULL` or a variable:

    -

    * If `NULL` (the default), counts the number of rows in each group. - * If a variable, computes `sum(wt)` for each group.

    - - -
    sort
    -

    If `TRUE`, will show the largest groups at the top.

    - - -
    .drop
    -

    For `count()`: if `FALSE` will include counts for empty groups -(i.e. for levels of factors that don't exist in the data). Deprecated in -`add_count()` since it didn't actually affect the output.

    - - -
    name
    -

    An optional parameter that specifies the column to be used -as names for a named vector. Specified in a similar manner as var.

    - - -
    ...
    -

    For use by methods.

    - -
    -
    -

    Value

    - - -

    An object of the same type as `.data`.

    - - -

    * All rows appear in the output, but (usually) in a different place. -* Columns are not modified. -* Groups are not modified. -* Data frame attributes are preserved.

    - - -

    A Seurat object

    - - -

    An object of the same type as `.data`.

    - - -

    * Rows are a subset of the input, but appear in the same order. -* Columns are not modified. -* The number of groups may be reduced (if `.preserve` is not `TRUE`). -* Data frame attributes are preserved.

    - - -

    A grouped data frame, unless the combination of `...` and `add` - yields a non empty set of grouping columns, a regular (ungrouped) data frame - otherwise.

    - - -

    A tibble

    - - -

    An object of the same type as `.data`.

    - - -

    For `mutate()`:

    - - -

    * Rows are not affected. -* Existing columns will be preserved unless explicitly modified. -* New columns will be added to the right of existing columns. -* Columns given value `NULL` will be removed -* Groups will be recomputed if a grouping variable is mutated. -* Data frame attributes are preserved.

    - - -

    For `transmute()`:

    - - -

    * Rows are not affected. -* Apart from grouping variables, existing columns will be remove unless - explicitly kept. -* Column order matches order of expressions. -* Groups will be recomputed if a grouping variable is mutated. -* Data frame attributes are preserved.

    - - -

    An object of the same type as `.data`. -* Rows are not affected. -* Column names are changed; column order is preserved -* Data frame attributes are preserved. -* Groups are updated to reflect new names.

    - - -

    A `tbl`

    - - -

    A `tbl`

    - - -

    A Seurat object

    - - -

    A Seurat object

    - - -

    A Seurat object

    - - -

    A Seurat object

    - - -

    An object of the same type as `.data`. The output has the following -properties:

    - - -

    * Each row may appear 0, 1, or many times in the output. -* Columns are not modified. -* Groups are not modified. -* Data frame attributes are preserved.

    - - -

    An object of the same type as `.data`. The output has the following -properties:

    - - -

    * Rows are not affected. -* Output columns are a subset of input columns, potentially with a different - order. Columns will be renamed if `new_name = old_name` form is used. -* Data frame attributes are preserved. -* Groups are maintained; you can't select off grouping variables.

    - - -

    A Seurat object

    - - -

    An object of the same type as `.data`. `count()` and `add_count()` -group transiently, so the output has the same groups as the input.

    - - -

    A vector the same size as `.data`.

    -
    -
    -

    Details

    -

    ## Locales -The sort order for character vectors will depend on the collating sequence -of the locale in use: see locales().

    -

    ## Missing values -Unlike base sorting with `sort()`, `NA` are: -* always sorted to the end for local data, even when wrapped with `desc()`. -* treated differently for remote data, depending on the backend.

    -

    dplyr is not yet smart enough to optimise filtering optimisation -on grouped datasets that don't need grouped calculations. For this reason, -filtering is often considerably faster on ungroup()ed data.

    -

    Slice does not work with relational databases because they have no -intrinsic notion of row order. If you want to perform the equivalent -operation, use [filter()] and [row_number()].

    -
    -
    -

    Methods

    - - -

    This function is a **generic**, which means that packages can provide -implementations (methods) for other classes. See the documentation of -individual methods for extra arguments and differences in behaviour.

    - -

    These function are **generic**s, which means that packages can provide -implementations (methods) for other classes. See the documentation of -individual methods for extra arguments and differences in behaviour.

    -

    Methods available in currently loaded packages:

    - -

    These function are **generic**s, which means that packages can provide -implementations (methods) for other classes. See the documentation of -individual methods for extra arguments and differences in behaviour.

    -

    Methods available in currently loaded packages:

    - -

    This function is a **generic**, which means that packages can provide -implementations (methods) for other classes. See the documentation of -individual methods for extra arguments and differences in behaviour.

    -

    The following methods are currently available in loaded packages:

    -
    -
    -

    Grouped tibbles

    - - - -

    Because mutating expressions are computed within groups, they may -yield different results on grouped tibbles. This will be the case -as soon as an aggregating, lagging, or ranking function is -involved. Compare this ungrouped mutate:

    -

    With the grouped equivalent:

    -

    The former normalises `mass` by the global average whereas the -latter normalises by the averages within gender levels.

    -
    - -
    -

    Examples

    -
    `%>%` = magrittr::`%>%`
    -pbmc_small %>%  arrange(nFeature_RNA)
    -#> # A Seurat-tibble abstraction: 80 × 15
    -#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 CATG… SeuratPro…         51           26 0               A             g2    
    -#>  2 GGCA… SeuratPro…        172           29 0               A             g1    
    -#>  3 AGTC… SeuratPro…        157           29 0               A             g1    
    -#>  4 GACG… SeuratPro…        202           30 0               A             g2    
    -#>  5 GGAA… SeuratPro…        150           30 0               A             g2    
    -#>  6 AGGT… SeuratPro…         62           31 0               A             g2    
    -#>  7 CTTC… SeuratPro…         41           32 0               A             g2    
    -#>  8 GTAA… SeuratPro…         67           33 0               A             g2    
    -#>  9 GTCA… SeuratPro…        210           33 0               A             g2    
    -#> 10 TGGT… SeuratPro…         64           36 0               A             g1    
    -#> # ℹ 70 more rows
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  distinct(groups)
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> # A tibble: 2 × 1
    -#>   groups
    -#>   <chr> 
    -#> 1 g2    
    -#> 2 g1    
    -
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  filter(groups == "g1")
    -#> # A Seurat-tibble abstraction: 44 × 15
    -#> # Features=230 | Cells=44 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  2 TCTG… SeuratPro…         70           48 0               A             g1    
    -#>  3 TGGT… SeuratPro…         64           36 0               A             g1    
    -#>  4 GCAG… SeuratPro…         72           45 0               A             g1    
    -#>  5 GATA… SeuratPro…         52           36 0               A             g1    
    -#>  6 AATG… SeuratPro…        100           41 0               A             g1    
    -#>  7 AGAG… SeuratPro…        191           61 0               A             g1    
    -#>  8 CTAA… SeuratPro…        168           44 0               A             g1    
    -#>  9 TTGG… SeuratPro…        135           45 0               A             g1    
    -#> 10 CATC… SeuratPro…         79           43 0               A             g1    
    -#> # ℹ 34 more rows
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Learn more in ?dplyr_eval
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  group_by(groups)
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> # A tibble: 80 × 29
    -#> # Groups:   groups [2]
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  2 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  3 GAAC… SeuratPro…         87           50 1               B             g2    
    -#>  4 TGAC… SeuratPro…        127           56 0               A             g2    
    -#>  5 AGTC… SeuratPro…        173           53 0               A             g2    
    -#>  6 TCTG… SeuratPro…         70           48 0               A             g1    
    -#>  7 TGGT… SeuratPro…         64           36 0               A             g1    
    -#>  8 GCAG… SeuratPro…         72           45 0               A             g1    
    -#>  9 GATA… SeuratPro…         52           36 0               A             g1    
    -#> 10 AATG… SeuratPro…        100           41 0               A             g1    
    -#> # ℹ 70 more rows
    -#> # ℹ 22 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, PC_6 <dbl>, PC_7 <dbl>, PC_8 <dbl>, PC_9 <dbl>,
    -#> #   PC_10 <dbl>, PC_11 <dbl>, PC_12 <dbl>, PC_13 <dbl>, PC_14 <dbl>,
    -#> #   PC_15 <dbl>, PC_16 <dbl>, PC_17 <dbl>, PC_18 <dbl>, PC_19 <dbl>,
    -#> #   tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  summarise(mean(nCount_RNA))
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> # A tibble: 1 × 1
    -#>   `mean(nCount_RNA)`
    -#>                <dbl>
    -#> 1               245.
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  mutate(nFeature_RNA = 1)
    -#> # A Seurat-tibble abstraction: 80 × 15
    -#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <dbl> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70            1 0               A             g2    
    -#>  2 CATG… SeuratPro…         85            1 0               A             g1    
    -#>  3 GAAC… SeuratPro…         87            1 1               B             g2    
    -#>  4 TGAC… SeuratPro…        127            1 0               A             g2    
    -#>  5 AGTC… SeuratPro…        173            1 0               A             g2    
    -#>  6 TCTG… SeuratPro…         70            1 0               A             g1    
    -#>  7 TGGT… SeuratPro…         64            1 0               A             g1    
    -#>  8 GCAG… SeuratPro…         72            1 0               A             g1    
    -#>  9 GATA… SeuratPro…         52            1 0               A             g1    
    -#> 10 AATG… SeuratPro…        100            1 0               A             g1    
    -#> # ℹ 70 more rows
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  rename(s_score = nFeature_RNA)
    -#> # A Seurat-tibble abstraction: 80 × 15
    -#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    -#>    .cell      orig.ident nCount_RNA s_score RNA_snn_res.0.8 letter.idents groups
    -#>    <chr>      <fct>           <dbl>   <int> <fct>           <fct>         <chr> 
    -#>  1 ATGCCAGAA… SeuratPro…         70      47 0               A             g2    
    -#>  2 CATGGCCTG… SeuratPro…         85      52 0               A             g1    
    -#>  3 GAACCTGAT… SeuratPro…         87      50 1               B             g2    
    -#>  4 TGACTGGAT… SeuratPro…        127      56 0               A             g2    
    -#>  5 AGTCAGACT… SeuratPro…        173      53 0               A             g2    
    -#>  6 TCTGATACA… SeuratPro…         70      48 0               A             g1    
    -#>  7 TGGTATCTA… SeuratPro…         64      36 0               A             g1    
    -#>  8 GCAGCTCTG… SeuratPro…         72      45 0               A             g1    
    -#>  9 GATATAACA… SeuratPro…         52      36 0               A             g1    
    -#> 10 AATGTTGAC… SeuratPro…        100      41 0               A             g1    
    -#> # ℹ 70 more rows
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>% left_join(pbmc_small %>% distinct(groups) %>% mutate(new_column = 1:2))
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> Joining with `by = join_by(groups)`
    -#> # A Seurat-tibble abstraction: 80 × 16
    -#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  2 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  3 GAAC… SeuratPro…         87           50 1               B             g2    
    -#>  4 TGAC… SeuratPro…        127           56 0               A             g2    
    -#>  5 AGTC… SeuratPro…        173           53 0               A             g2    
    -#>  6 TCTG… SeuratPro…         70           48 0               A             g1    
    -#>  7 TGGT… SeuratPro…         64           36 0               A             g1    
    -#>  8 GCAG… SeuratPro…         72           45 0               A             g1    
    -#>  9 GATA… SeuratPro…         52           36 0               A             g1    
    -#> 10 AATG… SeuratPro…        100           41 0               A             g1    
    -#> # ℹ 70 more rows
    -#> # ℹ 9 more variables: RNA_snn_res.1 <fct>, new_column <int>, PC_1 <dbl>,
    -#> #   PC_2 <dbl>, PC_3 <dbl>, PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -
    -data("pbmc_small")
    -pbmc_small %>%
    -  inner_join(
    -    pbmc_small %>% distinct(groups) %>% mutate(new_column = 1:2) %>% slice(1))
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> Joining with `by = join_by(groups)`
    -#> # A Seurat-tibble abstraction: 36 × 16
    -#> # Features=230 | Cells=36 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  2 GAAC… SeuratPro…         87           50 1               B             g2    
    -#>  3 TGAC… SeuratPro…        127           56 0               A             g2    
    -#>  4 AGTC… SeuratPro…        173           53 0               A             g2    
    -#>  5 AGGT… SeuratPro…         62           31 0               A             g2    
    -#>  6 GGGT… SeuratPro…        101           41 0               A             g2    
    -#>  7 CATG… SeuratPro…         51           26 0               A             g2    
    -#>  8 TACG… SeuratPro…         99           45 0               A             g2    
    -#>  9 GTAA… SeuratPro…         67           33 0               A             g2    
    -#> 10 TACA… SeuratPro…        109           41 0               A             g2    
    -#> # ℹ 26 more rows
    -#> # ℹ 9 more variables: RNA_snn_res.1 <fct>, new_column <int>, PC_1 <dbl>,
    -#> #   PC_2 <dbl>, PC_3 <dbl>, PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -
    -data("pbmc_small")
    -pbmc_small %>% right_join(pbmc_small %>% distinct(groups) %>% mutate(new_column = 1:2) %>% slice(1))
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> Joining with `by = join_by(groups)`
    -#> # A Seurat-tibble abstraction: 36 × 16
    -#> # Features=230 | Cells=36 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  2 GAAC… SeuratPro…         87           50 1               B             g2    
    -#>  3 TGAC… SeuratPro…        127           56 0               A             g2    
    -#>  4 AGTC… SeuratPro…        173           53 0               A             g2    
    -#>  5 AGGT… SeuratPro…         62           31 0               A             g2    
    -#>  6 GGGT… SeuratPro…        101           41 0               A             g2    
    -#>  7 CATG… SeuratPro…         51           26 0               A             g2    
    -#>  8 TACG… SeuratPro…         99           45 0               A             g2    
    -#>  9 GTAA… SeuratPro…         67           33 0               A             g2    
    -#> 10 TACA… SeuratPro…        109           41 0               A             g2    
    -#> # ℹ 26 more rows
    -#> # ℹ 9 more variables: RNA_snn_res.1 <fct>, new_column <int>, PC_1 <dbl>,
    -#> #   PC_2 <dbl>, PC_3 <dbl>, PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>% full_join(tibble::tibble(groups = "g1", other=1:4))
    -#> Joining with `by = join_by(groups)`
    -#> tidyseurat says: This operation lead to duplicated cell names. A data frame is returned for independent data analysis.
    -#> # A tibble: 212 × 30
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  2 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  3 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  4 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  5 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  6 GAAC… SeuratPro…         87           50 1               B             g2    
    -#>  7 TGAC… SeuratPro…        127           56 0               A             g2    
    -#>  8 AGTC… SeuratPro…        173           53 0               A             g2    
    -#>  9 TCTG… SeuratPro…         70           48 0               A             g1    
    -#> 10 TCTG… SeuratPro…         70           48 0               A             g1    
    -#> # ℹ 202 more rows
    -#> # ℹ 23 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, PC_6 <dbl>, PC_7 <dbl>, PC_8 <dbl>, PC_9 <dbl>,
    -#> #   PC_10 <dbl>, PC_11 <dbl>, PC_12 <dbl>, PC_13 <dbl>, PC_14 <dbl>,
    -#> #   PC_15 <dbl>, PC_16 <dbl>, PC_17 <dbl>, PC_18 <dbl>, PC_19 <dbl>,
    -#> #   tSNE_1 <dbl>, tSNE_2 <dbl>, other <int>
    -
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  slice(1)
    -#> # A Seurat-tibble abstraction: 1 × 15
    -#> # Features=230 | Cells=1 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 ATGCC… SeuratPro…         70           47 0               A             g2    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Slice group-wise using .by
    -pbmc_small |> slice(1:2, .by = groups)
    -#> # A Seurat-tibble abstraction: 4 × 15
    -#> # Features=230 | Cells=4 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 ATGCC… SeuratPro…         70           47 0               A             g2    
    -#> 2 GAACC… SeuratPro…         87           50 1               B             g2    
    -#> 3 CATGG… SeuratPro…         85           52 0               A             g1    
    -#> 4 TCTGA… SeuratPro…         70           48 0               A             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# slice_sample() allows you to random select with or without replacement
    -pbmc_small |> slice_sample(n = 5)
    -#> # A Seurat-tibble abstraction: 5 × 15
    -#> # Features=230 | Cells=5 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 GATAG… SeuratPro…        328           72 1               B             g1    
    -#> 2 GGCAT… SeuratPro…        126           53 0               A             g1    
    -#> 3 ATGCC… SeuratPro…         70           47 0               A             g2    
    -#> 4 AGATA… SeuratPro…        187           61 0               A             g2    
    -#> 5 TACAA… SeuratPro…        108           44 0               A             g2    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# if using replacement, and duplicate cells are returned, a tibble will be
    -# returned because duplicate cells cannot exist in Seurat objects
    -pbmc_small |> slice_sample(n = 1, replace = TRUE) # returns Seurat
    -#> # A Seurat-tibble abstraction: 1 × 15
    -#> # Features=230 | Cells=1 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 GATAG… SeuratPro…        328           72 1               B             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -pbmc_small |> slice_sample(n = 100, replace = TRUE) # returns tibble
    -#> tidyseurat says: When sampling with replacement a data frame is returned for independent data analysis.
    -#> # A tibble: 100 × 29
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  2 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  3 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  4 CATG… SeuratPro…         85           52 0               A             g1    
    -#>  5 TCTG… SeuratPro…         70           48 0               A             g1    
    -#>  6 TGGT… SeuratPro…         64           36 0               A             g1    
    -#>  7 AATG… SeuratPro…        100           41 0               A             g1    
    -#>  8 GGGT… SeuratPro…        101           41 0               A             g2    
    -#>  9 GGGT… SeuratPro…        101           41 0               A             g2    
    -#> 10 CATG… SeuratPro…         51           26 0               A             g2    
    -#> # ℹ 90 more rows
    -#> # ℹ 22 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, PC_6 <dbl>, PC_7 <dbl>, PC_8 <dbl>, PC_9 <dbl>,
    -#> #   PC_10 <dbl>, PC_11 <dbl>, PC_12 <dbl>, PC_13 <dbl>, PC_14 <dbl>,
    -#> #   PC_15 <dbl>, PC_16 <dbl>, PC_17 <dbl>, PC_18 <dbl>, PC_19 <dbl>,
    -#> #   tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# weight by a variable
    -pbmc_small |> slice_sample(n = 5, weight_by = nCount_RNA)
    -#> # A Seurat-tibble abstraction: 5 × 15
    -#> # Features=230 | Cells=5 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 CTGCC… SeuratPro…        146           47 0               A             g1    
    -#> 2 ACCAG… SeuratPro…        417           75 0               A             g1    
    -#> 3 AAGCG… SeuratPro…        443           77 1               B             g1    
    -#> 4 GGCAT… SeuratPro…        126           53 0               A             g1    
    -#> 5 ACTCG… SeuratPro…        231           49 1               B             g2    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# sample by group
    -pbmc_small |> slice_sample(n = 5, by = groups)
    -#> # A Seurat-tibble abstraction: 10 × 15
    -#> # Features=230 | Cells=10 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 AGTC… SeuratPro…        173           53 0               A             g2    
    -#>  2 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  3 GTCA… SeuratPro…        210           33 0               A             g2    
    -#>  4 TTGC… SeuratPro…        104           40 0               A             g2    
    -#>  5 GCGC… SeuratPro…        213           48 1               B             g2    
    -#>  6 CATC… SeuratPro…        353           80 1               B             g1    
    -#>  7 TACT… SeuratPro…        156           48 0               A             g1    
    -#>  8 ATAC… SeuratPro…        612           69 1               B             g1    
    -#>  9 GGCA… SeuratPro…        126           53 0               A             g1    
    -#> 10 TTAC… SeuratPro…        228           39 0               A             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# sample using proportions
    -pbmc_small |> slice_sample(prop = 0.10)
    -#> # A Seurat-tibble abstraction: 8 × 15
    -#> # Features=230 | Cells=8 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 GATAG… SeuratPro…        328           72 1               B             g1    
    -#> 2 GGCAT… SeuratPro…        126           53 0               A             g1    
    -#> 3 ATGCC… SeuratPro…         70           47 0               A             g2    
    -#> 4 AGATA… SeuratPro…        187           61 0               A             g2    
    -#> 5 TACAA… SeuratPro…        108           44 0               A             g2    
    -#> 6 CATGA… SeuratPro…         51           26 0               A             g2    
    -#> 7 GCACT… SeuratPro…        292           71 1               B             g2    
    -#> 8 CGTAG… SeuratPro…        371           75 1               B             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -
    -# First rows based on existing order
    -pbmc_small |> slice_head(n = 5)
    -#> # A Seurat-tibble abstraction: 5 × 15
    -#> # Features=230 | Cells=5 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 ATGCC… SeuratPro…         70           47 0               A             g2    
    -#> 2 CATGG… SeuratPro…         85           52 0               A             g1    
    -#> 3 GAACC… SeuratPro…         87           50 1               B             g2    
    -#> 4 TGACT… SeuratPro…        127           56 0               A             g2    
    -#> 5 AGTCA… SeuratPro…        173           53 0               A             g2    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Last rows based on existing order
    -pbmc_small |> slice_tail(n = 5)
    -#> # A Seurat-tibble abstraction: 5 × 15
    -#> # Features=230 | Cells=5 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 GAGTT… SeuratPro…        527           47 0               A             g1    
    -#> 2 GACGC… SeuratPro…        202           30 0               A             g2    
    -#> 3 AGTCT… SeuratPro…        157           29 0               A             g1    
    -#> 4 GGAAC… SeuratPro…        150           30 0               A             g2    
    -#> 5 CTTGA… SeuratPro…        233           76 1               B             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Rows with minimum and maximum values of a metadata variable
    -pbmc_small |> slice_min(nFeature_RNA, n = 5)
    -#> # A Seurat-tibble abstraction: 5 × 15
    -#> # Features=230 | Cells=5 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 CATGA… SeuratPro…         51           26 0               A             g2    
    -#> 2 GGCAT… SeuratPro…        172           29 0               A             g1    
    -#> 3 AGTCT… SeuratPro…        157           29 0               A             g1    
    -#> 4 GACGC… SeuratPro…        202           30 0               A             g2    
    -#> 5 GGAAC… SeuratPro…        150           30 0               A             g2    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# slice_min() and slice_max() may return more rows than requested
    -# in the presence of ties.
    -pbmc_small |>  slice_min(nFeature_RNA, n = 2)
    -#> # A Seurat-tibble abstraction: 3 × 15
    -#> # Features=230 | Cells=3 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 CATGA… SeuratPro…         51           26 0               A             g2    
    -#> 2 GGCAT… SeuratPro…        172           29 0               A             g1    
    -#> 3 AGTCT… SeuratPro…        157           29 0               A             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Use with_ties = FALSE to return exactly n matches
    -pbmc_small |> slice_min(nFeature_RNA, n = 2, with_ties = FALSE)
    -#> # A Seurat-tibble abstraction: 2 × 15
    -#> # Features=230 | Cells=2 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 CATGA… SeuratPro…         51           26 0               A             g2    
    -#> 2 GGCAT… SeuratPro…        172           29 0               A             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Or use additional variables to break the tie:
    -pbmc_small |> slice_min(tibble::tibble(nFeature_RNA, nCount_RNA), n = 2)
    -#> # A Seurat-tibble abstraction: 2 × 15
    -#> # Features=230 | Cells=2 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 CATGA… SeuratPro…         51           26 0               A             g2    
    -#> 2 AGTCT… SeuratPro…        157           29 0               A             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -# Use by for group-wise operations
    -pbmc_small |> slice_min(nFeature_RNA, n = 5, by = groups)
    -#> # A Seurat-tibble abstraction: 10 × 15
    -#> # Features=230 | Cells=10 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 CATG… SeuratPro…         51           26 0               A             g2    
    -#>  2 GACG… SeuratPro…        202           30 0               A             g2    
    -#>  3 GGAA… SeuratPro…        150           30 0               A             g2    
    -#>  4 AGGT… SeuratPro…         62           31 0               A             g2    
    -#>  5 CTTC… SeuratPro…         41           32 0               A             g2    
    -#>  6 GGCA… SeuratPro…        172           29 0               A             g1    
    -#>  7 AGTC… SeuratPro…        157           29 0               A             g1    
    -#>  8 TGGT… SeuratPro…         64           36 0               A             g1    
    -#>  9 GATA… SeuratPro…         52           36 0               A             g1    
    -#> 10 TTAC… SeuratPro…        228           39 0               A             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -
    -# Rows with minimum and maximum values of a metadata variable
    -pbmc_small |> slice_max(nFeature_RNA, n = 5)
    -#> # A Seurat-tibble abstraction: 5 × 15
    -#> # Features=230 | Cells=5 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 GACAT… SeuratPro…        872           96 1               B             g1    
    -#> 2 ACGTG… SeuratPro…        709           94 1               B             g2    
    -#> 3 TTGAG… SeuratPro…        787           88 0               A             g1    
    -#> 4 TTTAG… SeuratPro…        462           86 1               B             g1    
    -#> 5 ATTGT… SeuratPro…        745           84 1               B             g2    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  select(.cell, orig.ident )
    -#> # A Seurat-tibble abstraction: 80 × 9
    -#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    -#>    .cell          orig.ident     PC_1   PC_2   PC_3  PC_4   PC_5  tSNE_1  tSNE_2
    -#>    <chr>          <fct>         <dbl>  <dbl>  <dbl> <dbl>  <dbl>   <dbl>   <dbl>
    -#>  1 ATGCCAGAACGACT SeuratProj… -0.774  -0.900 -0.249 0.559  0.465   0.868  -8.10 
    -#>  2 CATGGCCTGTGCAT SeuratProj… -0.0260 -0.347  0.665 0.418  0.585  -7.39   -8.77 
    -#>  3 GAACCTGATGAACC SeuratProj… -0.457   0.180  1.32  2.01  -0.482 -28.2     0.241
    -#>  4 TGACTGGATTCTCA SeuratProj… -0.812  -1.38  -1.00  0.139 -1.60   16.3   -11.2  
    -#>  5 AGTCAGACTGCACA SeuratProj… -0.774  -0.900 -0.249 0.559  0.465   1.91  -11.2  
    -#>  6 TCTGATACACGTGT SeuratProj… -0.774  -0.900 -0.249 0.559  0.465   3.15   -9.94 
    -#>  7 TGGTATCTAAACAG SeuratProj… -0.460  -1.19  -0.312 0.716 -1.65   17.9    -9.90 
    -#>  8 GCAGCTCTGTTTCT SeuratProj… -0.900  -0.388  0.693 0.404  0.536  -6.49   -8.39 
    -#>  9 GATATAACACGCAT SeuratProj… -0.774  -0.900 -0.249 0.559  0.465   1.33   -9.68 
    -#> 10 AATGTTGACAGTCA SeuratProj… -0.488  -1.16  -0.306 0.702 -1.47   17.0    -9.43 
    -#> # ℹ 70 more rows
    -
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  sample_n(50)
    -#> # A Seurat-tibble abstraction: 50 × 15
    -#> # Features=230 | Cells=50 | Active assay=RNA | Assays=RNA
    -#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#>  1 GATA… SeuratPro…        328           72 1               B             g1    
    -#>  2 GGCA… SeuratPro…        126           53 0               A             g1    
    -#>  3 ATGC… SeuratPro…         70           47 0               A             g2    
    -#>  4 AGAT… SeuratPro…        187           61 0               A             g2    
    -#>  5 TACA… SeuratPro…        108           44 0               A             g2    
    -#>  6 CATG… SeuratPro…         51           26 0               A             g2    
    -#>  7 GCAC… SeuratPro…        292           71 1               B             g2    
    -#>  8 CGTA… SeuratPro…        371           75 1               B             g1    
    -#>  9 TTAC… SeuratPro…        298           65 1               B             g1    
    -#> 10 ATAA… SeuratPro…         99           42 1               B             g2    
    -#> # ℹ 40 more rows
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -pbmc_small %>%  sample_frac(0.1)
    -#> # A Seurat-tibble abstraction: 8 × 15
    -#> # Features=230 | Cells=8 | Active assay=RNA | Assays=RNA
    -#>   .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    -#>   <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    -#> 1 GATAG… SeuratPro…        328           72 1               B             g1    
    -#> 2 GGCAT… SeuratPro…        126           53 0               A             g1    
    -#> 3 ATGCC… SeuratPro…         70           47 0               A             g2    
    -#> 4 AGATA… SeuratPro…        187           61 0               A             g2    
    -#> 5 TACAA… SeuratPro…        108           44 0               A             g2    
    -#> 6 CATGA… SeuratPro…         51           26 0               A             g2    
    -#> 7 GCACT… SeuratPro…        292           71 1               B             g2    
    -#> 8 CGTAG… SeuratPro…        371           75 1               B             g1    
    -#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    -#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    -
    -
    -
    -`%>%` <- magrittr::`%>%`
    -pbmc_small %>%
    -
    -    count(groups)
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#> # A tibble: 2 × 2
    -#>   groups     n
    -#>   <chr>  <int>
    -#> 1 g1        44
    -#> 2 g2        36
    -
    -`%>%` = magrittr::`%>%`
    -data("pbmc_small")
    -pbmc_small %>%  pull(groups)
    -#> tidyseurat says: A data frame is returned for independent data analysis.
    -#>  [1] "g2" "g1" "g2" "g2" "g2" "g1" "g1" "g1" "g1" "g1" "g2" "g1" "g2" "g2" "g2"
    -#> [16] "g1" "g2" "g1" "g1" "g2" "g1" "g1" "g2" "g2" "g1" "g2" "g2" "g2" "g2" "g1"
    -#> [31] "g1" "g1" "g1" "g2" "g1" "g1" "g2" "g1" "g1" "g2" "g1" "g2" "g2" "g2" "g1"
    -#> [46] "g2" "g1" "g2" "g1" "g2" "g1" "g2" "g2" "g2" "g1" "g1" "g1" "g1" "g2" "g1"
    -#> [61] "g1" "g1" "g1" "g1" "g1" "g2" "g2" "g1" "g1" "g1" "g2" "g1" "g2" "g2" "g1"
    -#> [76] "g1" "g2" "g1" "g2" "g1"
    -
    -
    -
    -
    - -
    - - -
    - -
    -

    Site built with pkgdown 2.0.7.

    -
    - -
    - - - - - - - - diff --git a/reference/extract.html b/reference/extract.html new file mode 100644 index 0000000..7c371dd --- /dev/null +++ b/reference/extract.html @@ -0,0 +1,193 @@ + +Extract a character column into multiple columns using regular +expression groups — extract • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    [Superseded]

    +

    extract() has been superseded in favour of separate_wider_regex() +because it has a more polished API and better handling of problems. +Superseded functions will not go away, but will only receive critical bug +fixes.

    +

    Given a regular expression with capturing groups, extract() turns +each group into a new column. If the groups don't match, or the input +is NA, the output will be NA.

    +
    + +
    +
    # S3 method for Seurat
    +extract(
    +  data,
    +  col,
    +  into,
    +  regex = "([[:alnum:]]+)",
    +  remove = TRUE,
    +  convert = FALSE,
    +  ...
    +)
    +
    + +
    +

    Arguments

    +
    data
    +

    A data frame.

    + + +
    col
    +

    <tidy-select> Column to expand.

    + + +
    into
    +

    Names of new variables to create as character vector. +Use NA to omit the variable in the output.

    + + +
    regex
    +

    A string representing a regular expression used to extract the +desired values. There should be one group (defined by ()) for each +element of into.

    + + +
    remove
    +

    If TRUE, remove input column from output data frame.

    + + +
    convert
    +

    If TRUE, will run type.convert() with +as.is = TRUE on new columns. This is useful if the component +columns are integer, numeric or logical.

    +

    NB: this will cause string "NA"s to be converted to NAs.

    + + +
    ...
    +

    Additional arguments passed on to methods.

    + +
    +
    +

    Value

    + + +

    `tidyseurat`

    +
    +
    +

    See also

    +

    separate() to split up by a separator.

    +
    + +
    +

    Examples

    +
    data(pbmc_small)
    +pbmc_small |>
    +  extract(groups, 
    +    into="g", 
    +    regex="g([0-9])", 
    +    convert=TRUE)
    +#> # A Seurat-tibble abstraction: 80 × 15
    +#> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
    +#>    .cell  orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents     g
    +#>    <chr>  <fct>           <dbl>        <int> <fct>           <fct>         <int>
    +#>  1 ATGCC… SeuratPro…         70           47 0               A                 2
    +#>  2 CATGG… SeuratPro…         85           52 0               A                 1
    +#>  3 GAACC… SeuratPro…         87           50 1               B                 2
    +#>  4 TGACT… SeuratPro…        127           56 0               A                 2
    +#>  5 AGTCA… SeuratPro…        173           53 0               A                 2
    +#>  6 TCTGA… SeuratPro…         70           48 0               A                 1
    +#>  7 TGGTA… SeuratPro…         64           36 0               A                 1
    +#>  8 GCAGC… SeuratPro…         72           45 0               A                 1
    +#>  9 GATAT… SeuratPro…         52           36 0               A                 1
    +#> 10 AATGT… SeuratPro…        100           41 0               A                 1
    +#> # ℹ 70 more rows
    +#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    +#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/filter.html b/reference/filter.html new file mode 100644 index 0000000..c17a068 --- /dev/null +++ b/reference/filter.html @@ -0,0 +1,222 @@ + +Keep rows that match a condition — filter • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    The filter() function is used to subset a data frame, +retaining all rows that satisfy your conditions. +To be retained, the row must produce a value of TRUE for all conditions. +Note that when a condition evaluates to NA +the row will be dropped, unlike base subsetting with [.

    +
    + +
    +
    # S3 method for Seurat
    +filter(.data, ..., .preserve = FALSE)
    +
    + +
    +

    Arguments

    +
    .data
    +

    A data frame, data frame extension (e.g. a tibble), or a +lazy data frame (e.g. from dbplyr or dtplyr). See Methods, below, for +more details.

    + + +
    ...
    +

    <data-masking> Expressions that +return a logical value, and are defined in terms of the variables in +.data. If multiple expressions are included, they are combined with the +& operator. Only rows for which all conditions evaluate to TRUE are +kept.

    + + +
    .preserve
    +

    Relevant when the .data input is grouped. +If .preserve = FALSE (the default), the grouping structure +is recalculated based on the resulting data, otherwise the grouping is kept as is.

    + +
    +
    +

    Value

    + + +

    An object of the same type as .data. The output has the following properties:

    • Rows are a subset of the input, but appear in the same order.

    • +
    • Columns are not modified.

    • +
    • The number of groups may be reduced (if .preserve is not TRUE).

    • +
    • Data frame attributes are preserved.

    • +
    +
    +

    Details

    +

    The filter() function is used to subset the rows of +.data, applying the expressions in ... to the column values to determine which +rows should be retained. It can be applied to both grouped and ungrouped data (see group_by() and +ungroup()). However, dplyr is not yet smart enough to optimise the filtering +operation on grouped datasets that do not need grouped calculations. For this +reason, filtering is often considerably faster on ungrouped data.

    +
    +
    +

    Useful filter functions

    + + + + +

    There are many functions and operators that are useful when constructing the +expressions used to filter the data:

    +
    +

    Grouped tibbles

    + + + + +

    Because filtering expressions are computed within groups, they may +yield different results on grouped tibbles. This will be the case +as soon as an aggregating, lagging, or ranking function is +involved. Compare this ungrouped filtering:

    +

    starwars %>% filter(mass > mean(mass, na.rm = TRUE))

    +

    With the grouped equivalent:

    +

    starwars %>% group_by(gender) %>% filter(mass > mean(mass, na.rm = TRUE))

    +

    In the ungrouped version, filter() compares the value of mass in each row to +the global average (taken over the whole data set), keeping only the rows with +mass greater than this global average. In contrast, the grouped version calculates +the average mass separately for each gender group, and keeps rows with mass greater +than the relevant within-gender average.

    +
    +
    +

    Methods

    + + + +

    This function is a generic, which means that packages can provide +implementations (methods) for other classes. See the documentation of +individual methods for extra arguments and differences in behaviour.

    +

    The following methods are currently available in loaded packages: +dplyr (data.frame, ts), plotly (plotly), tidyseurat (Seurat) +.

    +
    +
    +

    See also

    +

    Other single table verbs: +arrange(), +mutate(), +reframe(), +rename(), +select(), +slice(), +summarise()

    +
    + +
    +

    Examples

    +
    data("pbmc_small")
    +pbmc_small |>  filter(groups == "g1")
    +#> # A Seurat-tibble abstraction: 44 × 15
    +#> # Features=230 | Cells=44 | Active assay=RNA | Assays=RNA
    +#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    +#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    +#>  1 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  2 TCTG… SeuratPro…         70           48 0               A             g1    
    +#>  3 TGGT… SeuratPro…         64           36 0               A             g1    
    +#>  4 GCAG… SeuratPro…         72           45 0               A             g1    
    +#>  5 GATA… SeuratPro…         52           36 0               A             g1    
    +#>  6 AATG… SeuratPro…        100           41 0               A             g1    
    +#>  7 AGAG… SeuratPro…        191           61 0               A             g1    
    +#>  8 CTAA… SeuratPro…        168           44 0               A             g1    
    +#>  9 TTGG… SeuratPro…        135           45 0               A             g1    
    +#> 10 CATC… SeuratPro…         79           43 0               A             g1    
    +#> # ℹ 34 more rows
    +#> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    +#> #   PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl>
    +
    +# Learn more in ?dplyr_eval
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/print.html b/reference/formatting.html similarity index 53% rename from reference/print.html rename to reference/formatting.html index aefcbb1..8eb3b1d 100644 --- a/reference/print.html +++ b/reference/formatting.html @@ -1,14 +1,24 @@ -Printing tibbles — print • tidyseuratPrinting tibbles — formatting • tidyseurat @@ -64,20 +74,27 @@
    -

    `r lifecycle::badge("maturing")`

    -

    One of the main features of the `tbl_df` class is the printing:

    -

    * Tibbles only print as many rows and columns as fit on one screen, - supplemented by a summary of the remaining rows and columns. -* Tibble reveals the type of each column, which keeps the user informed about - whether a variable is, e.g., `<chr>` or `<fct>` (character versus factor).

    -

    Printing can be tweaked for a one-off call by calling `print()` explicitly -and setting arguments like `n` and `width`. More persistent control is -available by setting the options described below.

    -

    Only the first 5 reduced dimensions are displayed, while all of them are queriable (e.g. ggplot). All dimensions are returned/displayed if as_tibble is used.

    +

    One of the main features of the tbl_df class is the printing:

    • Tibbles only print as many rows and columns as fit on one screen, +supplemented by a summary of the remaining rows and columns.

    • +
    • Tibble reveals the type of each column, which keeps the user informed about +whether a variable is, e.g., <chr> or <fct> (character versus factor). +See vignette("types") for an overview of common +type abbreviations.

    • +

    Printing can be tweaked for a one-off call by calling print() explicitly +and setting arguments like n and width. More persistent control is +available by setting the options described in pillar::pillar_options. +See also vignette("digits") for a comparison to base options, +and vignette("numbers") that showcases num() and char() +for creating columns with custom formatting options.

    +

    As of tibble 3.1.0, printing is handled entirely by the pillar package. +If you implement a package that extends tibble, +the printed output can be customized in various ways. +See vignette("extending", package = "pillar") for details, +and pillar::pillar_options for options that control the display in the console.

    @@ -92,21 +109,19 @@

    Arguments

    ...
    -

    Other arguments passed on to individual methods.

    +

    Passed on to tbl_format_setup().

    n
    -

    Number of rows to show. If `NULL`, the default, will print all rows -if less than option `tibble.print_max`. Otherwise, will print -`tibble.print_min` rows.

    +

    Number of rows to show. If NULL, the default, will print all rows +if less than the print_max option. +Otherwise, will print as many rows as specified by the +print_min option.

    width
    -

    Width of text output to generate. This defaults to `NULL`, which -means use `getOption("tibble.width")` or (if also `NULL`) -`getOption("width")`; the latter displays only the columns that fit on one -screen. You can also set `options(tibble.width = Inf)` to override this -default and always print all columns.

    +

    Width of text output to generate. This defaults to NULL, which +means use the width option.

    n_extra
    @@ -119,31 +134,14 @@

    Arguments

    Value

    -

    Nothing

    -
    -
    -

    Package options

    - - - -

    The following options are used by the tibble and pillar packages -to format and print `tbl_df` objects. -Used by the formatting workhorse `trunc_mat()` and, therefore, -indirectly, by `print.tbl()`.

    -

    * `tibble.print_max`: Row number threshold: Maximum number of rows printed. - Set to `Inf` to always print all rows. Default: 20. -* `tibble.print_min`: Number of rows printed if row number threshold is - exceeded. Default: 10. -* `tibble.width`: Output width. Default: `NULL` (use `width` option). -* `tibble.max_extra_cols`: Number of extra columns printed in reduced form. - Default: 100.

    +

    Prints a message to the console describing + the contents of the `tidyseurat`.

    Examples

    -
    library(dplyr)
    -data("pbmc_small")
    -pbmc_small  %>% print()
    +    
    data(pbmc_small)
    +print(pbmc_small)
     #> # A Seurat-tibble abstraction: 80 × 15
     #> # Features=230 | Cells=80 | Active assay=RNA | Assays=RNA
     #>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    @@ -161,6 +159,7 @@ 

    Examples

    #> # ℹ 70 more rows #> # ℹ 8 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>, #> # PC_4 <dbl>, PC_5 <dbl>, tSNE_1 <dbl>, tSNE_2 <dbl> +
    diff --git a/reference/full_join.html b/reference/full_join.html new file mode 100644 index 0000000..9e1afb2 --- /dev/null +++ b/reference/full_join.html @@ -0,0 +1,297 @@ + +Mutating joins — full_join • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    Mutating joins add columns from y to x, matching observations based on +the keys. There are four mutating joins: the inner join, and the three outer +joins.

    +

    Inner join

    + + +

    An inner_join() only keeps observations from x that have a matching key +in y.

    +

    The most important property of an inner join is that unmatched rows in either +input are not included in the result. This means that generally inner joins +are not appropriate in most analyses, because it is too easy to lose +observations.

    +
    + +
    +

    Outer joins

    + + +

    The three outer joins keep observations that appear in at least one of the +data frames:

    • A left_join() keeps all observations in x.

    • +
    • A right_join() keeps all observations in y.

    • +
    • A full_join() keeps all observations in x and y.

    • +
    + +
    + +
    +
    # S3 method for Seurat
    +full_join(x, y, by = NULL, copy = FALSE, suffix = c(".x", ".y"), ...)
    +
    + +
    +

    Arguments

    +
    x, y
    +

    A pair of data frames, data frame extensions (e.g. a tibble), or +lazy data frames (e.g. from dbplyr or dtplyr). See Methods, below, for +more details.

    + + +
    by
    +

    A join specification created with join_by(), or a character +vector of variables to join by.

    +

    If NULL, the default, *_join() will perform a natural join, using all +variables in common across x and y. A message lists the variables so +that you can check they're correct; suppress the message by supplying by +explicitly.

    +

    To join on different variables between x and y, use a join_by() +specification. For example, join_by(a == b) will match x$a to y$b.

    +

    To join by multiple variables, use a join_by() specification with +multiple expressions. For example, join_by(a == b, c == d) will match +x$a to y$b and x$c to y$d. If the column names are the same between +x and y, you can shorten this by listing only the variable names, like +join_by(a, c).

    +

    join_by() can also be used to perform inequality, rolling, and overlap +joins. See the documentation at ?join_by for details on +these types of joins.

    +

    For simple equality joins, you can alternatively specify a character vector +of variable names to join by. For example, by = c("a", "b") joins x$a +to y$a and x$b to y$b. If variable names differ between x and y, +use a named character vector like by = c("x_a" = "y_a", "x_b" = "y_b").

    +

    To perform a cross-join, generating all combinations of x and y, see +cross_join().

    + + +
    copy
    +

    If x and y are not from the same data source, +and copy is TRUE, then y will be copied into the +same src as x. This allows you to join tables across srcs, but +it is a potentially expensive operation so you must opt into it.

    + + +
    suffix
    +

    If there are non-joined duplicate variables in x and +y, these suffixes will be added to the output to disambiguate them. +Should be a character vector of length 2.

    + + +
    ...
    +

    Other parameters passed onto methods.

    + +
    +
    +

    Value

    + + +

    An object of the same type as x (including the same groups). The order of +the rows and columns of x is preserved as much as possible. The output has +the following properties:

    • The rows are affect by the join type.

      • inner_join() returns matched x rows.

      • +
      • left_join() returns all x rows.

      • +
      • right_join() returns matched of x rows, followed by unmatched y rows.

      • +
      • full_join() returns all x rows, followed by unmatched y rows.

      • +
    • +
    • Output columns include all columns from x and all non-key columns from +y. If keep = TRUE, the key columns from y are included as well.

    • +
    • If non-key columns in x and y have the same name, suffixes are added +to disambiguate. If keep = TRUE and key columns in x and y have +the same name, suffixes are added to disambiguate these as well.

    • +
    • If keep = FALSE, output columns included in by are coerced to their +common type between x and y.

    • +
    +
    +

    Many-to-many relationships

    + + + + +

    By default, dplyr guards against many-to-many relationships in equality joins +by throwing a warning. These occur when both of the following are true:

    • A row in x matches multiple rows in y.

    • +
    • A row in y matches multiple rows in x.

    • +

    This is typically surprising, as most joins involve a relationship of +one-to-one, one-to-many, or many-to-one, and is often the result of an +improperly specified join. Many-to-many relationships are particularly +problematic because they can result in a Cartesian explosion of the number of +rows returned from the join.

    +

    If a many-to-many relationship is expected, silence this warning by +explicitly setting relationship = "many-to-many".

    +

    In production code, it is best to preemptively set relationship to whatever +relationship you expect to exist between the keys of x and y, as this +forces an error to occur immediately if the data doesn't align with your +expectations.

    +

    Inequality joins typically result in many-to-many relationships by nature, so +they don't warn on them by default, but you should still take extra care when +specifying an inequality join, because they also have the capability to +return a large number of rows.

    +

    Rolling joins don't warn on many-to-many relationships either, but many +rolling joins follow a many-to-one relationship, so it is often useful to +set relationship = "many-to-one" to enforce this.

    +

    Note that in SQL, most database providers won't let you specify a +many-to-many relationship between two tables, instead requiring that you +create a third junction table that results in two one-to-many relationships +instead.

    +
    +
    +

    Methods

    + + + +

    These functions are generics, which means that packages can provide +implementations (methods) for other classes. See the documentation of +individual methods for extra arguments and differences in behaviour.

    +

    Methods available in currently loaded packages:

    +
    +

    See also

    +

    Other joins: +cross_join(), +filter-joins, +nest_join()

    +
    + +
    +

    Examples

    +
    data(pbmc_small)
    +tt <- pbmc_small
    +tt |> full_join(tibble::tibble(groups="g1", other=1:4))
    +#> Joining with `by = join_by(groups)`
    +#> tidyseurat says: This operation lead to duplicated cell names. A data frame is returned for independent data analysis.
    +#> # A tibble: 212 × 30
    +#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    +#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    +#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    +#>  2 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  3 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  4 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  5 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  6 GAAC… SeuratPro…         87           50 1               B             g2    
    +#>  7 TGAC… SeuratPro…        127           56 0               A             g2    
    +#>  8 AGTC… SeuratPro…        173           53 0               A             g2    
    +#>  9 TCTG… SeuratPro…         70           48 0               A             g1    
    +#> 10 TCTG… SeuratPro…         70           48 0               A             g1    
    +#> # ℹ 202 more rows
    +#> # ℹ 23 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    +#> #   PC_4 <dbl>, PC_5 <dbl>, PC_6 <dbl>, PC_7 <dbl>, PC_8 <dbl>, PC_9 <dbl>,
    +#> #   PC_10 <dbl>, PC_11 <dbl>, PC_12 <dbl>, PC_13 <dbl>, PC_14 <dbl>,
    +#> #   PC_15 <dbl>, PC_16 <dbl>, PC_17 <dbl>, PC_18 <dbl>, PC_19 <dbl>,
    +#> #   tSNE_1 <dbl>, tSNE_2 <dbl>, other <int>
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/ggplot-1.png b/reference/ggplot-1.png new file mode 100644 index 0000000000000000000000000000000000000000..80dc62823d2435e49c9c7ba94399abf14227a39a GIT binary patch literal 22326 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 literal 0 HcmV?d00001 diff --git a/reference/ggplot.html b/reference/ggplot.html new file mode 100644 index 0000000..8b73c7b --- /dev/null +++ b/reference/ggplot.html @@ -0,0 +1,164 @@ + +Create a new ggplot from a tidyseurat — ggplot • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    ggplot() initializes a ggplot object. It can be used to +declare the input data frame for a graphic and to specify the +set of plot aesthetics intended to be common throughout all +subsequent layers unless specifically overridden.

    +
    + +
    +
    # S3 method for Seurat
    +ggplot(data = NULL, mapping = aes(), ..., environment = parent.frame())
    +
    + +
    +

    Arguments

    +
    data
    +

    Default dataset to use for plot. If not already a data.frame, +will be converted to one by fortify(). If not specified, +must be supplied in each layer added to the plot.

    + + +
    mapping
    +

    Default list of aesthetic mappings to use for plot. +If not specified, must be supplied in each layer added to the plot.

    + + +
    ...
    +

    Other arguments passed on to methods. Not currently used.

    + + +
    environment
    +

    [Deprecated] Used prior to tidy +evaluation.

    + +
    +
    +

    Value

    + + +

    `ggplot`

    +
    +
    +

    Details

    +

    ggplot() is used to construct the initial plot object, +and is almost always followed by a plus sign (+) to add +components to the plot.

    +

    There are three common patterns used to invoke ggplot():

    • ggplot(data = df, mapping = aes(x, y, other aesthetics))

    • +
    • ggplot(data = df)

    • +
    • ggplot()

    • +

    The first pattern is recommended if all layers use the same +data and the same set of aesthetics, although this method +can also be used when adding a layer using data from another +data frame.

    +

    The second pattern specifies the default data frame to use +for the plot, but no aesthetics are defined up front. This +is useful when one data frame is used predominantly for the +plot, but the aesthetics vary from one layer to another.

    +

    The third pattern initializes a skeleton ggplot object, which +is fleshed out as layers are added. This is useful when +multiple data frames are used to produce different layers, as +is often the case in complex graphics.

    +

    The data = and mapping = specifications in the arguments are optional +(and are often omitted in practice), so long as the data and the mapping +values are passed into the function in the right order. In the examples +below, however, they are left in place for clarity.

    +
    + +
    +

    Examples

    +
    library(ggplot2)
    +data(pbmc_small)
    +pbmc_small |> 
    +  ggplot(aes(groups, nCount_RNA)) +
    +  geom_boxplot()
    +
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/ggplot2-methods.html b/reference/ggplot2-methods.html deleted file mode 100644 index 3e26c13..0000000 --- a/reference/ggplot2-methods.html +++ /dev/null @@ -1,149 +0,0 @@ - -Create a new ggplot from a tidyseurat object — ggplot • tidyseurat - - -
    -
    - - - -
    -
    - - -
    -

    `ggplot()` initializes a ggplot object. It can be used to -declare the input data frame for a graphic and to specify the -set of plot aesthetics intended to be common throughout all -subsequent layers unless specifically overridden.

    -
    - - -
    -

    Arguments

    -
    .data
    -

    Default dataset to use for plot. If not already a data.frame, -will be converted to one by [fortify()]. If not specified, -must be supplied in each layer added to the plot.

    - - -
    mapping
    -

    Default list of aesthetic mappings to use for plot. -If not specified, must be supplied in each layer added to the plot.

    - - -
    ...
    -

    Other arguments passed on to methods. Not currently used.

    - - -
    environment
    -

    DEPRECATED. Used prior to tidy evaluation.

    - -
    -
    -

    Value

    - - -

    A ggplot

    -
    -
    -

    Details

    -

    `ggplot()` is used to construct the initial plot object, -and is almost always followed by `+` to add component to the -plot. There are three common ways to invoke `ggplot()`:

    - -

    The first method is recommended if all layers use the same -data and the same set of aesthetics, although this method -can also be used to add a layer using data from another -data frame. See the first example below. The second -method specifies the default data frame to use for the plot, -but no aesthetics are defined up front. This is useful when -one data frame is used predominantly as layers are added, -but the aesthetics may vary from one layer to another. The -third method initializes a skeleton `ggplot` object which -is fleshed out as layers are added. This method is useful when -multiple data frames are used to produce different layers, as -is often the case in complex graphics.

    -
    - -
    -

    Examples

    -
    # Generate some sample data, then compute mean and standard deviation
    -# in each group
    -
    -
    -
    -
    - -
    - - -
    - -
    -

    Site built with pkgdown 2.0.7.

    -
    - -
    - - - - - - - - diff --git a/reference/glimpse.html b/reference/glimpse.html new file mode 100644 index 0000000..ccab4ee --- /dev/null +++ b/reference/glimpse.html @@ -0,0 +1,183 @@ + +Get a glimpse of your data — glimpse • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    glimpse() is like a transposed version of print(): +columns run down the page, and data runs across. +This makes it possible to see every column in a data frame. +It's a little like str() applied to a data frame +but it tries to show you as much data as possible. +(And it always shows the underlying data, even when applied +to a remote data source.)

    +

    See format_glimpse() for details on the formatting.

    +
    + +
    +
    # S3 method for tidyseurat
    +glimpse(x, width = NULL, ...)
    +
    + +
    +

    Arguments

    +
    x
    +

    An object to glimpse at.

    + + +
    width
    +

    Width of output: defaults to the setting of the +width option (if finite) +or the width of the console.

    + + +
    ...
    +

    Unused, for extensibility.

    + +
    +
    +

    Value

    + + +

    x original x is (invisibly) returned, allowing glimpse() to be +used within a data pipe line.

    +
    +
    +

    S3 methods

    + + + +

    glimpse is an S3 generic with a customised method for tbls and +data.frames, and a default method that calls str().

    +
    + +
    +

    Examples

    +
    data(pbmc_small)
    +pbmc_small |> glimpse()
    +#> Formal class 'Seurat' [package "SeuratObject"] with 13 slots
    +#>   ..@ assays      :List of 1
    +#>   .. ..$ RNA:Formal class 'Assay' [package "SeuratObject"] with 8 slots
    +#>   ..@ meta.data   :'data.frame':	80 obs. of  7 variables:
    +#>   .. ..$ orig.ident     : Factor w/ 1 level "SeuratProject": 1 1 1 1 1 1 1 1 1 1 ...
    +#>   .. ..$ nCount_RNA     : num [1:80] 70 85 87 127 173 70 64 72 52 100 ...
    +#>   .. ..$ nFeature_RNA   : int [1:80] 47 52 50 56 53 48 36 45 36 41 ...
    +#>   .. ..$ RNA_snn_res.0.8: Factor w/ 2 levels "0","1": 1 1 2 1 1 1 1 1 1 1 ...
    +#>   .. ..$ letter.idents  : Factor w/ 2 levels "A","B": 1 1 2 1 1 1 1 1 1 1 ...
    +#>   .. ..$ groups         : chr [1:80] "g2" "g1" "g2" "g2" ...
    +#>   .. ..$ RNA_snn_res.1  : Factor w/ 3 levels "0","1","2": 1 1 1 1 1 1 1 1 1 1 ...
    +#>   ..@ active.assay: chr "RNA"
    +#>   ..@ active.ident: Factor w/ 3 levels "0","1","2": 1 1 1 1 1 1 1 1 1 1 ...
    +#>   .. ..- attr(*, "names")= chr [1:80] "ATGCCAGAACGACT" "CATGGCCTGTGCAT" "GAACCTGATGAACC" "TGACTGGATTCTCA" ...
    +#>   ..@ graphs      :List of 1
    +#>   .. ..$ RNA_snn:Formal class 'Graph' [package "SeuratObject"] with 7 slots
    +#>   ..@ neighbors   : list()
    +#>   ..@ reductions  :List of 2
    +#>   .. ..$ pca :Formal class 'DimReduc' [package "SeuratObject"] with 9 slots
    +#>   .. ..$ tsne:Formal class 'DimReduc' [package "SeuratObject"] with 9 slots
    +#>   ..@ images      : list()
    +#>   ..@ project.name: chr "SeuratProject"
    +#>   ..@ misc        : list()
    +#>   ..@ version     :Classes 'package_version', 'numeric_version'  hidden list of 1
    +#>   .. ..$ : int [1:3] 4 0 0
    +#>   ..@ commands    :List of 10
    +#>   .. ..$ NormalizeData.RNA       :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ ScaleData.RNA           :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ RunPCA.RNA              :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ BuildSNN.RNA.pca        :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ FindClusters            :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ RunTSNE.pca             :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ JackStraw.RNA.pca       :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ ScoreJackStraw.pca      :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ ProjectDim.RNA.pca      :Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   .. ..$ FindVariableFeatures.RNA:Formal class 'SeuratCommand' [package "SeuratObject"] with 5 slots
    +#>   ..@ tools       : list()
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/group_by.html b/reference/group_by.html new file mode 100644 index 0000000..9a522bd --- /dev/null +++ b/reference/group_by.html @@ -0,0 +1,220 @@ + +Group by one or more variables — group_by • tidyseurat + + +
    +
    + + + +
    +
    + + +
    +

    Most data operations are done on groups defined by variables. +group_by() takes an existing tbl and converts it into a grouped tbl +where operations are performed "by group". ungroup() removes grouping.

    +
    + +
    +
    # S3 method for Seurat
    +group_by(.data, ..., .add = FALSE, .drop = group_by_drop_default(.data))
    +
    + +
    +

    Arguments

    +
    .data
    +

    A data frame, data frame extension (e.g. a tibble), or a +lazy data frame (e.g. from dbplyr or dtplyr). See Methods, below, for +more details.

    + + +
    ...
    +

    In group_by(), variables or computations to group by. +Computations are always done on the ungrouped data frame. +To perform computations on the grouped data, you need to use +a separate mutate() step before the group_by(). +Computations are not allowed in nest_by(). +In ungroup(), variables to remove from the grouping.

    + + +
    .add
    +

    When FALSE, the default, group_by() will +override existing groups. To add to the existing groups, use +.add = TRUE.

    +

    This argument was previously called add, but that prevented +creating a new grouping variable called add, and conflicts with +our naming conventions.

    + + +
    .drop
    +

    Drop groups formed by factor levels that don't appear in the +data? The default is TRUE except when .data has been previously +grouped with .drop = FALSE. See group_by_drop_default() for details.

    + +
    +
    +

    Value

    + + +

    A grouped data frame with class grouped_df, +unless the combination of ... and add yields a empty set of +grouping columns, in which case a tibble will be returned.

    +
    +
    +

    Methods

    + + + +

    These function are generics, which means that packages can provide +implementations (methods) for other classes. See the documentation of +individual methods for extra arguments and differences in behaviour.

    +

    Methods available in currently loaded packages:

    • group_by(): dplyr (data.frame), plotly (plotly), tidyseurat (Seurat) +.

    • +
    • ungroup(): dplyr (data.frame, grouped_df, rowwise_df), plotly (plotly) +.

    • +
    +
    +

    Ordering

    + + + +

    Currently, group_by() internally orders the groups in ascending order. This +results in ordered output from functions that aggregate groups, such as +summarise().

    +

    When used as grouping columns, character vectors are ordered in the C locale +for performance and reproducibility across R sessions. If the resulting +ordering of your grouped operation matters and is dependent on the locale, +you should follow up the grouped operation with an explicit call to +arrange() and set the .locale argument. For example:

    +

    data %>%
    +  group_by(chr) %>%
    +  summarise(avg = mean(x)) %>%
    +  arrange(chr, .locale = "en")

    +

    This is often useful as a preliminary step before generating content intended +for humans, such as an HTML table.

    +

    Legacy behavior

    + + +

    Prior to dplyr 1.1.0, character vector grouping columns were ordered in the +system locale. If you need to temporarily revert to this behavior, you can +set the global option dplyr.legacy_locale to TRUE, but this should be +used sparingly and you should expect this option to be removed in a future +version of dplyr. It is better to update existing code to explicitly call +arrange(.locale = ) instead. Note that setting dplyr.legacy_locale will +also force calls to arrange() to use the system locale.

    +
    + + +
    +
    +

    See also

    +

    Other grouping functions: +group_map(), +group_nest(), +group_split(), +group_trim()

    +
    + +
    +

    Examples

    +
    data("pbmc_small")
    +pbmc_small |>  group_by(groups)
    +#> tidyseurat says: A data frame is returned for independent data analysis.
    +#> # A tibble: 80 × 29
    +#> # Groups:   groups [2]
    +#>    .cell orig.ident nCount_RNA nFeature_RNA RNA_snn_res.0.8 letter.idents groups
    +#>    <chr> <fct>           <dbl>        <int> <fct>           <fct>         <chr> 
    +#>  1 ATGC… SeuratPro…         70           47 0               A             g2    
    +#>  2 CATG… SeuratPro…         85           52 0               A             g1    
    +#>  3 GAAC… SeuratPro…         87           50 1               B             g2    
    +#>  4 TGAC… SeuratPro…        127           56 0               A             g2    
    +#>  5 AGTC… SeuratPro…        173           53 0               A             g2    
    +#>  6 TCTG… SeuratPro…         70           48 0               A             g1    
    +#>  7 TGGT… SeuratPro…         64           36 0               A             g1    
    +#>  8 GCAG… SeuratPro…         72           45 0               A             g1    
    +#>  9 GATA… SeuratPro…         52           36 0               A             g1    
    +#> 10 AATG… SeuratPro…        100           41 0               A             g1    
    +#> # ℹ 70 more rows
    +#> # ℹ 22 more variables: RNA_snn_res.1 <fct>, PC_1 <dbl>, PC_2 <dbl>, PC_3 <dbl>,
    +#> #   PC_4 <dbl>, PC_5 <dbl>, PC_6 <dbl>, PC_7 <dbl>, PC_8 <dbl>, PC_9 <dbl>,
    +#> #   PC_10 <dbl>, PC_11 <dbl>, PC_12 <dbl>, PC_13 <dbl>, PC_14 <dbl>,
    +#> #   PC_15 <dbl>, PC_16 <dbl>, PC_17 <dbl>, PC_18 <dbl>, PC_19 <dbl>,
    +#> #   tSNE_1 <dbl>, tSNE_2 <dbl>
    +
    +
    +
    +
    + +
    + + +
    + +
    +

    Site built with pkgdown 2.0.7.

    +
    + +
    + + + + + + + + diff --git a/reference/index.html b/reference/index.html index 8d2c032..dbafbb1 100644 --- a/reference/index.html +++ b/reference/index.html @@ -65,65 +65,152 @@

    All functions

    Aggregate cells

    -

    bind_rows

    +

    arrange(<Seurat>)

    -

    Efficiently bind multiple data frames by row and column

    +

    Order rows using column values

    + +

    as_tibble(<Seurat>)

    + +

    Coerce lists, matrices, and more to data frames

    + +

    bind_rows(<Seurat>) bind_cols(<Seurat>)

    + +

    #' Efficiently bind multiple data frames by row and column

    cell_type_df

    -

    Example data set 2

    +

    Cell types of 80 PBMC single cells

    + +

    count(<Seurat>) add_count(<Seurat>)

    + +

    Count the observations in each group

    + +

    distinct(<Seurat>)

    + +

    Keep distinct/unique rows

    + +

    extract(<Seurat>)

    + +

    Extract a character column into multiple columns using regular +expression groups

    + +

    filter(<Seurat>)

    + +

    Keep rows that match a condition

    + +

    print(<Seurat>)

    + +

    Printing tibbles

    + +

    full_join(<Seurat>)

    + +

    Mutating joins

    + +

    ggplot(<Seurat>)

    + +

    Create a new ggplot from a tidyseurat

    + +

    glimpse(<tidyseurat>)

    + +

    Get a glimpse of your data

    + +

    group_by(<Seurat>)

    + +

    Group by one or more variables

    -

    ggplot

    +

    inner_join(<Seurat>)

    -

    Create a new ggplot from a tidyseurat object

    +

    Mutating joins

    join_features(<Seurat>)

    -

    Extract and join information for features.

    +

    join_features

    join_transcripts()

    (DEPRECATED) Extract and join information for transcripts.

    + +

    left_join(<Seurat>)

    + +

    Mutating joins

    + +

    mutate(<Seurat>)

    + +

    Create, modify, and delete columns

    + +

    nest(<Seurat>)

    + +

    Nest rows into a list-column of data frames

    pbmc_small_nested_interactions

    -

    Example data set 2

    +

    Intercellular ligand-receptor interactions for +38 ligands from a single cell RNA-seq cluster.

    -

    pivot_longer

    +

    pivot_longer(<Seurat>)

    Pivot data from wide to long

    -

    plot_ly()

    +

    plot_ly()

    Initiate a plotly visualization

    -

    print(<Seurat>)

    +

    pull(<Seurat>)

    -

    Printing tibbles

    +

    Extract a single column

    + +

    rename(<Seurat>)

    + +

    Rename columns

    return_arguments_of()

    returns variables from an expression

    -

    tbl_format_header

    +

    right_join(<Seurat>)

    -

    Format the header of a tibble

    +

    Mutating joins

    -

    as_tibble glimpse

    +

    rowwise(<Seurat>)

    -

    Coerce lists, matrices, and more to data frames

    +

    Group input by rows

    + +

    sample_n(<Seurat>) sample_frac(<Seurat>)

    + +

    Sample n rows from a table

    + +

    select(<Seurat>)

    + +

    Keep or drop columns using their names and types

    + +

    separate(<Seurat>)

    + +

    Separate a character column into multiple columns with a regular +expression or numeric locations

    + +

    slice(<Seurat>) slice_sample(<Seurat>) slice_head(<Seurat>) slice_tail(<Seurat>) slice_min(<Seurat>) slice_max(<Seurat>)

    + +

    Subset rows using their positions

    + +

    summarise(<Seurat>) summarize(<Seurat>)

    + +

    Summarise each group down to one row

    + +

    tbl_format_header(<tidySeurat>)

    + +

    Format the header of a tibble

    tidy()

    -

    tidy for seurat

    +

    tidy for `Seurat`

    -

    unnest nest extract unite separate

    +

    unite(<Seurat>)

    -

    unnest

    +

    Unite multiple columns into one by pasting strings together

    -

    unnest_seurat()

    +

    unnest(<tidyseurat_nested>) unnest_seurat()

    -

    unnest_seurat

    +

    Unnest a list-column of data frames into rows and columns

    Preliminary plots
     pbmc_small %>%
    -  tidyseurat::ggplot(aes(nFeature_RNA, fill = groups)) +
    +  tidyseurat::ggplot(aes(nFeature_RNA, fill = groups)) +
       geom_histogram() +
       my_theme

    Here we plot total features per cell.

     pbmc_small %>%
    -  tidyseurat::ggplot(aes(groups, nCount_RNA, fill = groups)) +
    +  tidyseurat::ggplot(aes(groups, nCount_RNA, fill = groups)) +
       geom_boxplot(outlier.shape = NA) +
       geom_jitter(width = 0.1) +
       my_theme
    @@ -279,7 +279,7 @@