├── .Rbuildignore ├── .github ├── .gitignore └── workflows │ └── pkgdown.yaml ├── DESCRIPTION ├── NAMESPACE ├── NEWS.md ├── R ├── RcppExports.R ├── aggregateNonCountSignal.R ├── aggregateToPseudoBulk.R ├── aggregateVar.R ├── buildClusterTreeFromPB.R ├── cellCounts.R ├── cellTypeSpecificity.R ├── colsum2.R ├── colsum_fast.R ├── compositePosteriorTest.R ├── computeLogCPM.R ├── da_to_sparseMatrix.R ├── diffVar.R ├── dreamlet.R ├── dreamletCompareClusters.R ├── dreamletProcessedData.R ├── dropRedundantTerms.R ├── fitVarPart.R ├── mash.R ├── meta_analysis.R ├── misc.R ├── outlier.R ├── plotBeeswarm.R ├── plotCellComposition.R ├── plotForest.R ├── plotGeneHeatmap.R ├── plotHeatmap.R ├── plotPCA.R ├── plotPercentBars.R ├── plotProjection.R ├── plotVarPart.R ├── plotViolin.R ├── plotVolcano.R ├── plotVoom.R ├── processAssays.R ├── removeConstantTerms.R ├── stackAssays.R ├── vpDF.R └── zenith_gsa.R ├── README.md ├── TODO ├── _pkgdown.yml ├── docs ├── 404.html ├── apple-touch-icon-120x120.png ├── apple-touch-icon-152x152.png ├── apple-touch-icon-180x180.png ├── apple-touch-icon-60x60.png ├── apple-touch-icon-76x76.png ├── apple-touch-icon.png ├── articles │ ├── cell_covs.html │ ├── cell_covs_files │ │ └── figure-html │ │ │ └── processAssays-1.png │ ├── dreamlet.html │ ├── dreamlet_files │ │ └── figure-html │ │ │ ├── boxplot-1.png │ │ │ ├── cellTypeSpecificity-1.png │ │ │ ├── dreamlet.contrasts-1.png │ │ │ ├── forrest-1.png │ │ │ ├── heatmap-1.png │ │ │ ├── heatmap2-1.png │ │ │ ├── plotGeneHeatmap-1.png │ │ │ ├── plotPercentBars-1.png │ │ │ ├── plotPercentBars-2.png │ │ │ ├── plotVolcano-1.png │ │ │ ├── voom.plots-1.png │ │ │ ├── vp.barplt-1.png │ │ │ └── vp.violin-1.png │ ├── errors.html │ ├── figure │ │ ├── forest-1.png │ │ ├── volcano-1.png │ │ └── zenith-1.png │ ├── h5ad_on_disk.html │ ├── index.html │ ├── mashr.html │ └── non_lin_eff.html ├── authors.html ├── deps │ ├── bootstrap-5.2.2 │ │ ├── bootstrap.bundle.min.js │ │ ├── bootstrap.bundle.min.js.map │ │ ├── bootstrap.min.css │ │ ├── font.css │ │ └── fonts │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff │ │ │ ├── 1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff │ │ │ ├── 4iCs6KVjbNBYlgo6ew.woff │ │ │ ├── 4iCs6KVjbNBYlgoKfw7w.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvTtA.woff │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjsGyL.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_TOQ.woff │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff │ │ │ ├── JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmEU9vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5fBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmSU5vAA.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlfBBc-.woff │ │ │ ├── KFOlCnqEu92Fr1MmWUlvAA.woff │ │ │ ├── KFOmCnqEu92Fr1Me5g.woff │ │ │ ├── KFOmCnqEu92Fr1Mu4mxM.woff │ │ │ ├── QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff │ │ │ ├── S6u8w4BMUTPHjxsAXC-s.woff │ │ │ ├── S6u8w4BMUTPHjxswWA.woff │ │ │ ├── S6u9w4BMUTPHh6UVSwiPHw.woff │ │ │ ├── S6u9w4BMUTPHh6UVeww.woff │ │ │ ├── S6u9w4BMUTPHh7USSwiPHw.woff │ │ │ ├── S6u9w4BMUTPHh7USeww.woff │ │ │ ├── S6uyw4BMUTPHjx4wWA.woff │ │ │ ├── S6uyw4BMUTPHvxo.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff │ │ │ ├── UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff │ │ │ ├── XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff │ │ │ ├── memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff │ │ │ ├── memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff │ │ │ ├── pe03MImSLYBIv1o4X1M8cc9iB_5p.woff │ │ │ ├── pe0qMImSLYBIv1o4X1M8cfe5.woff │ │ │ └── q5uGsou0JOdh94bfvQlr.woff │ ├── bootstrap-5.3.1 │ │ ├── bootstrap.bundle.min.js │ │ ├── bootstrap.bundle.min.js.map │ │ ├── bootstrap.min.css │ │ ├── font.css │ │ └── fonts │ │ │ ├── 07d40e985ad7c747025dabb9f22142c4.woff2 │ │ │ ├── 1Ptug8zYS_SKggPNyC0ITw.woff2 │ │ │ ├── 1Ptug8zYS_SKggPNyCAIT5lu.woff2 │ │ │ ├── 1Ptug8zYS_SKggPNyCIIT5lu.woff2 │ │ │ ├── 1Ptug8zYS_SKggPNyCMIT5lu.woff2 │ │ │ ├── 1Ptug8zYS_SKggPNyCkIT5lu.woff2 │ │ │ ├── 1f5e011d6aae0d98fc0518e1a303e99a.woff2 │ │ │ ├── 4iCs6KVjbNBYlgoKcQ72j00.woff2 │ │ │ ├── 4iCs6KVjbNBYlgoKcg72j00.woff2 │ │ │ ├── 4iCs6KVjbNBYlgoKcw72j00.woff2 │ │ │ ├── 4iCs6KVjbNBYlgoKew72j00.woff2 │ │ │ ├── 4iCs6KVjbNBYlgoKfA72j00.woff2 │ │ │ ├── 4iCs6KVjbNBYlgoKfw72.woff2 │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjs2yNL4U.woff2 │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjsGyN.woff2 │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjtGyNL4U.woff2 │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjvGyNL4U.woff2 │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjvWyNL4U.woff2 │ │ │ ├── 4iCv6KVjbNBYlgoCxCvjvmyNL4U.woff2 │ │ │ ├── 626330658504e338ee86aec8e957426b.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7jsDJT9g.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7ksDJT9g.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDI.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7osDJT9g.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7psDJT9g.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7qsDJT9g.woff2 │ │ │ ├── 6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7rsDJT9g.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lqDY.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qNK7lqDY.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lqDY.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lqDY.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qO67lqDY.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2 │ │ │ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qPK7lqDY.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwkxduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlBduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmxduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwkxduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlBduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmBduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmhduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmxduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwkxduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlBduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmBduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmRduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmhduz8A.woff2 │ │ │ ├── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmxduz8A.woff2 │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvWNReuQ.woff2 │ │ │ ├── CSR54z1Qlv-GDxkbKVQ_dFsvWNpeudwk.woff2 │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_fO4KTet_.woff2 │ │ │ ├── CSR64z1Qlv-GDxkbKVQ_fOAKTQ.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvQlMIXxw.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvUlMI.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvXlMIXxw.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvYlMIXxw.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvZlMIXxw.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvalMIXxw.woff2 │ │ │ ├── HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvblMIXxw.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlM-vWjMY.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlMOvWjMY.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlMevWjMY.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlMuvWjMY.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlOevWjMY.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlPevW.woff2 │ │ │ ├── HI_SiYsKILxRpg3hIP6sJ7fM7PqlPuvWjMY.woff2 │ │ │ ├── JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2 │ │ │ ├── JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2 │ │ │ ├── JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2 │ │ │ ├── JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2 │ │ │ ├── JTUSjIg1_i6t8kCHKm459Wlhyw.woff2 │ │ │ ├── QGYpz_kZZAGCONcK2A4bGOj8mNhN.woff2 │ │ │ ├── S6u8w4BMUTPHjxsAUi-qJCY.woff2 │ │ │ ├── S6u8w4BMUTPHjxsAXC-q.woff2 │ │ │ ├── S6u9w4BMUTPHh6UVSwaPGR_p.woff2 │ │ │ ├── S6u9w4BMUTPHh6UVSwiPGQ.woff2 │ │ │ ├── S6u9w4BMUTPHh7USSwaPGR_p.woff2 │ │ │ ├── S6u9w4BMUTPHh7USSwiPGQ.woff2 │ │ │ ├── S6uyw4BMUTPHjx4wXg.woff2 │ │ │ ├── S6uyw4BMUTPHjxAwXjeu.woff2 │ │ │ ├── XRXV3I6Li01BKofIMeaBXso.woff2 │ │ │ ├── XRXV3I6Li01BKofINeaB.woff2 │ │ │ ├── XRXV3I6Li01BKofIO-aBXso.woff2 │ │ │ ├── XRXV3I6Li01BKofIOOaBXso.woff2 │ │ │ ├── XRXV3I6Li01BKofIOuaBXso.woff2 │ │ │ ├── c2f002b3a87d3f9bfeebb23d32cfd9f8.woff2 │ │ │ ├── ee91700cdbf7ce16c054c2bb8946c736.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqW106F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWt06F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtE6F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtU6F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtk6F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWu06F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6F.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuk6F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWvU6F15M.woff2 │ │ │ ├── memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWxU6F15M.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS2mu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSCmu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSGmu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSKmu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSOmu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSumu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSymu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTUGmu1aB.woff2 │ │ │ ├── memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTVOmu1aB.woff2 │ │ │ ├── q5uGsou0JOdh94bfuQltOxU.woff2 │ │ │ └── q5uGsou0JOdh94bfvQlt.woff2 │ ├── bootstrap-toc-1.0.1 │ │ └── bootstrap-toc.min.js │ ├── clipboard.js-2.0.11 │ │ └── clipboard.min.js │ ├── data-deps.txt │ ├── font-awesome-6.4.2 │ │ ├── css │ │ │ ├── all.css │ │ │ ├── all.min.css │ │ │ ├── v4-shims.css │ │ │ └── v4-shims.min.css │ │ └── webfonts │ │ │ ├── fa-brands-400.ttf │ │ │ ├── fa-brands-400.woff2 │ │ │ ├── fa-regular-400.ttf │ │ │ ├── fa-regular-400.woff2 │ │ │ ├── fa-solid-900.ttf │ │ │ ├── fa-solid-900.woff2 │ │ │ ├── fa-v4compatibility.ttf │ │ │ └── fa-v4compatibility.woff2 │ ├── headroom-0.11.0 │ │ ├── headroom.min.js │ │ └── jQuery.headroom.min.js │ ├── jquery-3.6.0 │ │ ├── jquery-3.6.0.js │ │ ├── jquery-3.6.0.min.js │ │ └── jquery-3.6.0.min.map │ └── search-1.0.0 │ │ ├── autocomplete.jquery.min.js │ │ ├── fuse.min.js │ │ └── mark.min.js ├── favicon-16x16.png ├── favicon-32x32.png ├── index.html ├── katex-auto.js ├── lightswitch.js ├── link.svg ├── logo.svg ├── news │ └── index.html ├── pkgdown.js ├── pkgdown.yml ├── reference │ ├── Rplot001.png │ ├── Rplot002.png │ ├── Rplot003.png │ ├── [,dreamletProcessedData,ANY,ANY,ANY-method.html │ ├── [,dreamletProcessedData,dreamletProcessedData-method.html │ ├── [,dreamletResult,dreamletResult-method.html │ ├── aggregateNonCountSignal.html │ ├── aggregateToPseudoBulk.html │ ├── aggregateVar.html │ ├── as.dreamletResult.html │ ├── assay,dreamletProcessedData,ANY-method.html │ ├── assay,dreamletProcessedData,dreamletProcessedData-method.html │ ├── assay,dreamletResult,dreamletResult-method.html │ ├── assay,vpDF,ANY-method.html │ ├── assay,vpDF,vpDF-method.html │ ├── assay-methods.html │ ├── assayNames,dreamletProcessedData,dreamletProcessedData-method.html │ ├── assayNames,dreamletProcessedData-method.html │ ├── assayNames,dreamletResult,dreamletResult-method.html │ ├── assayNames,vpDF,vpDF-method.html │ ├── assayNames,vpDF-method.html │ ├── assayNames-methods.html │ ├── buildClusterTreeFromPB-1.png │ ├── buildClusterTreeFromPB.html │ ├── cellCounts.html │ ├── cellSpecificityValues-class.html │ ├── cellTypeSpecificity-1.png │ ├── cellTypeSpecificity-2.png │ ├── cellTypeSpecificity-3.png │ ├── cellTypeSpecificity.html │ ├── checkFormula.html │ ├── coefNames,dreamletResult-method.html │ ├── coefNames-methods.html │ ├── colData-dreamletProcessedData-method.html │ ├── colData-set-dreamletProcessedData-ANY-method.html │ ├── compositePosteriorTest.html │ ├── computeCellCounts.html │ ├── computeLogCPM.html │ ├── computeNormCounts.html │ ├── details,dreamletProcessedData-method.html │ ├── details,dreamletResult-method.html │ ├── details,vpDF-method.html │ ├── details-methods.html │ ├── diffVar,dreamletResult,dreamletResult-method.html │ ├── diffVar-method-1.png │ ├── diffVar-method.html │ ├── diffVar-methods-1.png │ ├── diffVar-methods.html │ ├── dreamlet,dreamletProcessedData-method.html │ ├── dreamlet.html │ ├── dreamletCompareClusters-1.png │ ├── dreamletCompareClusters-2.png │ ├── dreamletCompareClusters-3.png │ ├── dreamletCompareClusters.html │ ├── dreamletProcessedData-class.html │ ├── dreamletResult-class.html │ ├── dreamlet_mash_result-class.html │ ├── dropRedundantTerms.html │ ├── equalFormulas.html │ ├── extract-methods.html │ ├── extractData,dreamletProcessedData,character-method.html │ ├── extractData,dreamletProcessedData-method.html │ ├── extractData-methods-1.png │ ├── extractData-methods.html │ ├── figures │ │ ├── diagram.png │ │ ├── logo.png │ │ └── logo.svg │ ├── fitVarPart,dreamletProcessedData-method.html │ ├── fitVarPart-1.png │ ├── fitVarPart-2.png │ ├── fitVarPart.html │ ├── getExprGeneNames.html │ ├── getTreat,dreamletResult,dreamletResult-method.html │ ├── getTreat-methods.html │ ├── index.html │ ├── meta_analysis.html │ ├── metadata,dreamletProcessedData,dreamletProcessedData-method.html │ ├── metadata-dreamletProcessedData-method.html │ ├── outlier.html │ ├── outlierByAssay.html │ ├── pbWeights.html │ ├── plotBeeswarm-1.png │ ├── plotBeeswarm.html │ ├── plotCellComposition,SingleCellExperiment-method.html │ ├── plotCellComposition,data.frame-method.html │ ├── plotCellComposition,matrix-method.html │ ├── plotCellComposition-1.png │ ├── plotCellComposition-2.png │ ├── plotCellComposition.html │ ├── plotForest,dreamletResult-method.html │ ├── plotForest,dreamlet_mash_result-method.html │ ├── plotForest-methods-1.png │ ├── plotForest-methods.html │ ├── plotGeneHeatmap,dreamletResult,dreamletResult-method.html │ ├── plotGeneHeatmap,dreamletResult-method.html │ ├── plotGeneHeatmap-methods-1.png │ ├── plotGeneHeatmap-methods.html │ ├── plotHeatmap,cellSpecificityValues,cellSpecificityValues-method.html │ ├── plotHeatmap,cellSpecificityValues-method.html │ ├── plotHeatmap,data.frame,data.frame-method.html │ ├── plotHeatmap,data.frame-method.html │ ├── plotHeatmap,matrix,matrix-method.html │ ├── plotHeatmap,matrix-method.html │ ├── plotHeatmap-methods-1.png │ ├── plotHeatmap-methods.html │ ├── plotPCA,list-method.html │ ├── plotPCA-1.png │ ├── plotPCA-2.png │ ├── plotPCA.html │ ├── plotPercentBars,cellSpecificityValues,cellSpecificityValues-method.html │ ├── plotPercentBars,cellSpecificityValues-method.html │ ├── plotPercentBars,vpDF,vpDF-method.html │ ├── plotPercentBars-methods-1.png │ ├── plotPercentBars-methods.html │ ├── plotProjection-1.png │ ├── plotProjection.html │ ├── plotVarPart,DataFrame,DataFrame-method.html │ ├── plotVarPart-methods-1.png │ ├── plotVarPart-methods.html │ ├── plotViolin,cellSpecificityValues,cellSpecificityValues-method.html │ ├── plotViolin,cellSpecificityValues-method.html │ ├── plotViolin-methods-1.png │ ├── plotViolin-methods.html │ ├── plotVolcano,MArrayLM,MArrayLM-method.html │ ├── plotVolcano,MArrayLM-method.html │ ├── plotVolcano,dreamlet_mash_result,dreamlet_mash_result-method.html │ ├── plotVolcano,dreamlet_mash_result-method.html │ ├── plotVolcano,list,list-method.html │ ├── plotVolcano,list-method.html │ ├── plotVolcano-methods-1.png │ ├── plotVolcano-methods-2.png │ ├── plotVolcano-methods.html │ ├── plotVoom,EList-method.html │ ├── plotVoom,dreamletProcessedData,dreamletProcessedData-method.html │ ├── plotVoom,dreamletProcessedData-method.html │ ├── plotVoom,list,list-method.html │ ├── plotVoom-methods-1.png │ ├── plotVoom-methods-2.png │ ├── plotVoom-methods.html │ ├── print,dreamletProcessedData,dreamletProcessedData-method.html │ ├── print,dreamletProcessedData-method.html │ ├── print,dreamletResult,dreamletResult-method.html │ ├── print-methods.html │ ├── processAssays.html │ ├── processOneAssay.html │ ├── removeConstantTerms.html │ ├── residuals,dreamletResult,dreamletResult-method.html │ ├── residuals-methods.html │ ├── run_mash-1.png │ ├── run_mash-2.png │ ├── run_mash.html │ ├── seeErrors,dreamletProcessedData-method.html │ ├── seeErrors,dreamletResult-method.html │ ├── seeErrors,vpDF-method.html │ ├── seeErrors-methods.html │ ├── show,dreamletProcessedData,dreamletProcessedData-method.html │ ├── show,dreamletProcessedData-method.html │ ├── show,dreamletResult,dreamletResult-method.html │ ├── show-methods.html │ ├── sortCols-method-1.png │ ├── sortCols-method.html │ ├── stackAssays-1.png │ ├── stackAssays-2.png │ ├── stackAssays.html │ ├── tabToMatrix.html │ ├── topTable,dreamletResult,dreamletResult-method.html │ ├── topTable-methods.html │ ├── vpDF-class.html │ ├── zenith_gsa,dreamletResult,GeneSetCollection,ANY-method.html │ ├── zenith_gsa,dreamlet_mash_result,GeneSetCollection,ANY-method.html │ ├── zenith_gsa,dreamlet_mash_result,GeneSetCollection-method.html │ ├── zenith_gsa-methods-1.png │ └── zenith_gsa-methods.html ├── search.json └── sitemap.xml ├── inst ├── CITATION ├── REFERENCES.bib └── unitTests │ ├── test_cellCounts.R │ ├── test_computeLogCPM.R │ ├── test_pbWeights.R │ ├── test_processOneAssay.R │ ├── test_pseudobulk.R │ └── test_rowWeightedVarsMatrix.R ├── man ├── aggregateNonCountSignal.Rd ├── aggregateToPseudoBulk.Rd ├── aggregateVar.Rd ├── as.dreamletResult.Rd ├── assay-methods.Rd ├── assayNames-methods.Rd ├── buildClusterTreeFromPB.Rd ├── cellCounts.Rd ├── cellSpecificityValues-class.Rd ├── cellTypeSpecificity.Rd ├── checkFormula.Rd ├── coefNames-methods.Rd ├── colData-dreamletProcessedData-method.Rd ├── colData-set-dreamletProcessedData-ANY-method.Rd ├── compositePosteriorTest.Rd ├── computeCellCounts.Rd ├── computeLogCPM.Rd ├── computeNormCounts.Rd ├── details-methods.Rd ├── diffVar-methods.Rd ├── dreamlet.Rd ├── dreamletCompareClusters.Rd ├── dreamletProcessedData-class.Rd ├── dreamletResult-class.Rd ├── dreamlet_mash_result-class.Rd ├── dropRedundantTerms.Rd ├── equalFormulas.Rd ├── extract-methods.Rd ├── extractData-methods.Rd ├── figures │ ├── diagram.png │ ├── logo.png │ └── logo.svg ├── fitVarPart.Rd ├── getTreat-methods.Rd ├── meta_analysis.Rd ├── metadata-dreamletProcessedData-method.Rd ├── outlier.Rd ├── outlierByAssay.Rd ├── plotBeeswarm.Rd ├── plotCellComposition.Rd ├── plotForest-methods.Rd ├── plotGeneHeatmap-methods.Rd ├── plotHeatmap-methods.Rd ├── plotPCA.Rd ├── plotPercentBars-methods.Rd ├── plotProjection.Rd ├── plotVarPart-methods.Rd ├── plotViolin-methods.Rd ├── plotVolcano-methods.Rd ├── plotVoom-methods.Rd ├── print-methods.Rd ├── processAssays.Rd ├── processOneAssay.Rd ├── removeConstantTerms.Rd ├── residuals-methods.Rd ├── run_mash.Rd ├── seeErrors-methods.Rd ├── show-methods.Rd ├── sortCols-method.Rd ├── stackAssays.Rd ├── tabToMatrix.Rd ├── topTable-methods.Rd ├── vpDF-class.Rd └── zenith_gsa-methods.Rd ├── src ├── Makevars ├── Makevars.win ├── RcppExports.cpp └── colsum_beachmat.cpp ├── tests └── runTests.R └── vignettes ├── .DS_Store ├── cell_covs.Rmd ├── cell_covs.html ├── dreamlet.Rmd ├── dreamlet.html ├── errors.Rmd ├── errors.html ├── figure ├── forest-1.png ├── volcano-1.png └── zenith-1.png ├── h5ad_on_disk.Rmd ├── h5ad_on_disk.html ├── mashr.Rmd ├── non_lin_eff.Rmd ├── old_txt.txt └── run_vigs.txt /.Rbuildignore: -------------------------------------------------------------------------------- 1 | ^\.github$ 2 | docs 3 | _cache$ -------------------------------------------------------------------------------- /.github/.gitignore: -------------------------------------------------------------------------------- 1 | *.html 2 | -------------------------------------------------------------------------------- /.github/workflows/pkgdown.yaml: -------------------------------------------------------------------------------- 1 | # on: 2 | # push: 3 | # branches: 4 | # - main 5 | # - master 6 | 7 | # name: pkgdown 8 | 9 | # jobs: 10 | # pkgdown: 11 | # runs-on: macOS-latest 12 | # env: 13 | # GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} 14 | # steps: 15 | # - uses: actions/checkout@v2 16 | 17 | # - uses: r-lib/actions/setup-r@v1 18 | 19 | # - uses: r-lib/actions/setup-pandoc@v1 20 | 21 | # - name: Query dependencies 22 | # run: | 23 | # install.packages('remotes') 24 | # saveRDS(remotes::dev_package_deps(dependencies = TRUE), ".github/depends.Rds", version = 2) 25 | # writeLines(sprintf("R-%i.%i", getRversion()$major, getRversion()$minor), ".github/R-version") 26 | # shell: Rscript {0} 27 | 28 | # - name: Restore R package cache 29 | # uses: actions/cache@v2 30 | # with: 31 | # path: ${{ env.R_LIBS_USER }} 32 | # key: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1-${{ hashFiles('.github/depends.Rds') }} 33 | # restore-keys: ${{ runner.os }}-${{ hashFiles('.github/R-version') }}-1- 34 | 35 | # - name: Install dependencies 36 | # run: | 37 | # remotes::install_deps(dependencies = TRUE) 38 | # install.packages("pkgdown", type = "binary") 39 | # shell: Rscript {0} 40 | 41 | # - name: Install package 42 | # run: R CMD INSTALL . 43 | 44 | # - name: Deploy package 45 | # run: | 46 | # git config --local user.email "actions@github.com" 47 | # git config --local user.name "GitHub Actions" 48 | # Rscript -e 'pkgdown::deploy_to_branch(new_process = FALSE)' 49 | -------------------------------------------------------------------------------- /R/RcppExports.R: -------------------------------------------------------------------------------- 1 | # Generated by using Rcpp::compileAttributes() -> do not edit by hand 2 | # Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393 3 | 4 | colsum_beachmat_matrix <- function(mat, groupHsh, grpUnq) { 5 | .Call('_dreamlet_colsum_beachmat_matrix', PACKAGE = 'dreamlet', mat, groupHsh, grpUnq) 6 | } 7 | 8 | colsum_beachmat_sparseMatrix <- function(mat, groupHsh, grpUnq) { 9 | .Call('_dreamlet_colsum_beachmat_sparseMatrix', PACKAGE = 'dreamlet', mat, groupHsh, grpUnq) 10 | } 11 | 12 | -------------------------------------------------------------------------------- /R/buildClusterTreeFromPB.R: -------------------------------------------------------------------------------- 1 | # Gabriel Hoffman 2 | # Nov 30, 2022 3 | 4 | #' Hierarchical clustering on cell types from pseudobulk 5 | #' 6 | #' Perform hierarchical clustering on cell types from pseudobulk by aggregating read counts from each cell type. 7 | #' 8 | #' @param pb \code{SingleCellObject} storing pseudobulk for each cell type in in \code{assay()} field 9 | #' @param method clustering method for \code{hclust()} 10 | #' @param dist.method distance metric 11 | #' @param assays which assays to include 12 | #' 13 | #' @return hierarchical clustering object of class \code{hclust} 14 | #' @examples 15 | #' library(muscat) 16 | #' library(SingleCellExperiment) 17 | #' 18 | #' data(example_sce) 19 | #' 20 | #' # create pseudobulk for each sample and cell cluster 21 | #' pb <- aggregateToPseudoBulk(example_sce, 22 | #' assay = "counts", 23 | #' cluster_id = "cluster_id", 24 | #' sample_id = "sample_id", 25 | #' verbose = FALSE 26 | #' ) 27 | #' 28 | #' # Hierarchical clustering of cell types 29 | #' hcl <- buildClusterTreeFromPB(pb) 30 | #' 31 | #' plot(hcl) 32 | #' 33 | #' @importFrom SingleCellExperiment reducedDim colData 34 | #' @importFrom edgeR filterByExpr DGEList calcNormFactors cpm 35 | #' @importFrom stats dist hclust 36 | #' @importFrom MatrixGenerics rowSums2 37 | #' @export 38 | buildClusterTreeFromPB <- function(pb, method = c("complete", "ward.D", "single", "average", "mcquitty", "median", "centroid", "ward.D2"), dist.method = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"), assays = assayNames(pb)) { 39 | method <- match.arg(method) 40 | dist.method <- match.arg(dist.method) 41 | 42 | # Combine counts for each cell cluster into a single point 43 | geneCounts <- lapply(assays, function(CT) { 44 | rowSums2(assay(pb, CT)) 45 | }) 46 | names(geneCounts) <- assays 47 | geneCounts <- do.call(cbind, geneCounts) 48 | 49 | # compute log2 CPM for genes with sufficient expression 50 | keep <- filterByExpr(geneCounts, group = rep(1, ncol(geneCounts))) 51 | dge <- DGEList(geneCounts[keep, , drop = FALSE]) 52 | dge <- calcNormFactors(dge) 53 | geneExpr <- edgeR::cpm(dge, log = TRUE) 54 | 55 | # evaluate distance between pairs of cell clusters 56 | d <- dist(t(geneExpr), method = dist.method) 57 | 58 | hclust(d, method = method) 59 | } 60 | -------------------------------------------------------------------------------- /R/colsum_fast.R: -------------------------------------------------------------------------------- 1 | # Gabriel Hoffman 2 | # Jan 10, 2021 3 | 4 | create_idxlist <- function(fct) { 5 | fct <- droplevels(fct) 6 | 7 | res <- lapply(levels(fct), function(key) { 8 | which(fct == key) 9 | }) 10 | names(res) <- levels(fct) 11 | res 12 | } 13 | 14 | # patched: https://github.com/GabrielHoffman/dreamlet/pull/23/commits/c453ac98ebc0329279b4dd3ae26a674df0e9b1f2 15 | #' @importFrom methods as 16 | #' @importFrom S4Arrays read_block 17 | #' @importClassesFrom SparseArray SparseArray 18 | .read_matrix_block <- function(...) { 19 | block <- read_block(..., as.sparse = NA) 20 | if (is(block, "SparseArray")) { 21 | block <- as(block, "CsparseMatrix") 22 | } 23 | block 24 | } 25 | -------------------------------------------------------------------------------- /R/da_to_sparseMatrix.R: -------------------------------------------------------------------------------- 1 | # Gabriel Hoffman 2 | # Jan 18, 2022 3 | 4 | 5 | # Convert DelayedMatrix to sparseMatrix 6 | # as(x, "sparseMatrix") 7 | # da_to_sparseMatrix = function(x, verbose=FALSE){ 8 | 9 | # grid = colAutoGrid(x) 10 | 11 | # res = lapply( seq(1,ncol(grid)), function(j, x, grid){ 12 | # if(verbose) cat("\r", j, " / ", ncol(grid), ' ') 13 | # viewport <- grid[[1L, as.integer(j)]] 14 | 15 | # .read_matrix_block(x, viewport) 16 | # }, x=x, grid=grid) 17 | 18 | # cat("\n") 19 | # spMat <- cbind_list_of_sparseMatrix(res, verbose) 20 | # rownames(spMat) = rownames(x) 21 | # colnames(spMat) = colnames(x) 22 | 23 | # spMat 24 | # } 25 | -------------------------------------------------------------------------------- /R/plotBeeswarm.R: -------------------------------------------------------------------------------- 1 | #' Beeswarm plot of effect sizes for each assay 2 | #' 3 | #' Beeswarm plot of effect sizes for each assay, colored by sign and FDR 4 | #' 5 | #' @param res.dl \code{dreamletResult} object from \code{dreamlet()} 6 | #' @param coef coefficient name fed to \code{topTable()} 7 | #' @param fdr.range range for coloring FDR 8 | #' @param assays which assays to plot 9 | #' 10 | #' @return \code{ggplot2} of logFC by assay 11 | #' 12 | #' @examples 13 | #' library(muscat) 14 | #' library(SingleCellExperiment) 15 | #' 16 | #' data(example_sce) 17 | #' 18 | #' # create pseudobulk for each sample and cell cluster 19 | #' pb <- aggregateToPseudoBulk(example_sce, 20 | #' assay = "counts", 21 | #' cluster_id = "cluster_id", 22 | #' sample_id = "sample_id", 23 | #' verbose = FALSE 24 | #' ) 25 | #' 26 | #' # voom-style normalization 27 | #' res.proc <- processAssays(pb, ~group_id) 28 | #' 29 | #' # Differential expression analysis within each assay, 30 | #' # evaluated on the voom normalized data 31 | #' res.dl <- dreamlet(res.proc, ~group_id) 32 | #' 33 | #' # Beeswarm plot of effect sizes for each assay, 34 | #' # colored by sign and FDR 35 | #' plotBeeswarm(res.dl, "group_idstim") 36 | #' 37 | #' @export 38 | #' @import ggplot2 39 | #' @importFrom dplyr arrange mutate tibble 40 | #' @importFrom ggbeeswarm geom_quasirandom 41 | plotBeeswarm <- function(res.dl, coef, fdr.range = 4, assays = assayNames(res.dl)) { 42 | stopifnot(is(res.dl, "dreamletResult")) 43 | 44 | adj.P.Val <- logFC <- score <- assay <- NULL 45 | 46 | # get results 47 | tab <- topTable(res.dl, coef = coef, number = Inf) %>% 48 | as_tibble() %>% 49 | mutate(score = -log10(adj.P.Val) * sign(logFC)) %>% 50 | mutate(score = pmax(-fdr.range, pmin(fdr.range, score))) %>% 51 | filter(assay %in% assays) %>% 52 | mutate(assay = factor(assay, levels = assays)) 53 | 54 | # make plot 55 | tab %>% 56 | arrange(abs(score)) %>% 57 | ggplot(aes(assay, logFC, color = score)) + 58 | geom_quasirandom(method = "maxout", size = 1) + 59 | scale_color_gradient2(low = "blue", mid = "grey", high = "red", name = bquote(-log[10] ~ FDR ~ sign(logFC))) + 60 | theme_classic() + 61 | geom_hline(yintercept = 0, color = "black", linetype = "dashed") + 62 | theme(legend.position = "bottom", aspect.ratio = 1) + 63 | coord_flip() 64 | } 65 | -------------------------------------------------------------------------------- /_pkgdown.yml: -------------------------------------------------------------------------------- 1 | 2 | 3 | url: http://DiseaseNeurogenomics.github.io/dreamlet 4 | 5 | authors: 6 | "Gabriel Hoffman": 7 | href: http://gabrielhoffman.github.io 8 | 9 | template: 10 | bootstrap: 5 11 | bootswatch: flatly 12 | 13 | params: 14 | docsearch: 15 | api_key: dedcc260e9d3743bc634e728855cdbaf 16 | index_name: dreamlet 17 | 18 | search: 19 | exclude: ['news/index.html'] 20 | 21 | 22 | articles: 23 | - title: mashr 24 | navbar: ~ 25 | contents: mashr 26 | 27 | - title: cell_covs 28 | navbar: ~ 29 | contents: cell_covs 30 | 31 | - title: non_lin_eff 32 | navbar: ~ 33 | contents: non_lin_eff 34 | 35 | - title: h5ad_on_disk 36 | navbar: ~ 37 | contents: h5ad_on_disk 38 | 39 | - title: errors 40 | navbar: ~ 41 | contents: errors 42 | -------------------------------------------------------------------------------- /docs/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /docs/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /docs/apple-touch-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/apple-touch-icon-180x180.png -------------------------------------------------------------------------------- /docs/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /docs/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /docs/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/apple-touch-icon.png -------------------------------------------------------------------------------- /docs/articles/cell_covs_files/figure-html/processAssays-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/cell_covs_files/figure-html/processAssays-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/boxplot-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/boxplot-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/cellTypeSpecificity-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/cellTypeSpecificity-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/dreamlet.contrasts-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/dreamlet.contrasts-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/forrest-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/forrest-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/heatmap-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/heatmap-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/heatmap2-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/heatmap2-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/plotGeneHeatmap-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/plotGeneHeatmap-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/plotPercentBars-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/plotPercentBars-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/plotPercentBars-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/plotPercentBars-2.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/plotVolcano-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/plotVolcano-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/voom.plots-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/voom.plots-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/vp.barplt-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/vp.barplt-1.png -------------------------------------------------------------------------------- /docs/articles/dreamlet_files/figure-html/vp.violin-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/dreamlet_files/figure-html/vp.violin-1.png -------------------------------------------------------------------------------- /docs/articles/figure/forest-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/figure/forest-1.png -------------------------------------------------------------------------------- /docs/articles/figure/volcano-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/figure/volcano-1.png -------------------------------------------------------------------------------- /docs/articles/figure/zenith-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/articles/figure/zenith-1.png -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/font.css: -------------------------------------------------------------------------------- 1 | @font-face { 2 | font-family: 'Lato'; 3 | font-style: italic; 4 | font-weight: 400; 5 | font-display: swap; 6 | src: url(fonts/S6u8w4BMUTPHjxswWA.woff) format('woff'); 7 | } 8 | @font-face { 9 | font-family: 'Lato'; 10 | font-style: normal; 11 | font-weight: 400; 12 | font-display: swap; 13 | src: url(fonts/S6uyw4BMUTPHvxo.woff) format('woff'); 14 | } 15 | @font-face { 16 | font-family: 'Lato'; 17 | font-style: normal; 18 | font-weight: 700; 19 | font-display: swap; 20 | src: url(fonts/S6u9w4BMUTPHh6UVeww.woff) format('woff'); 21 | } 22 | -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVs9pbCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/1Ptxg8zYS_SKggPN4iEgvnHyvveLxVvaorCIPrc.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgo6ew.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgo6ew.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgoKfw7w.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/4iCs6KVjbNBYlgoKfw7w.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvTtA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/4iCv6KVjbNBYlgoCxCvjsGyL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPa7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3aPA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7j.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zAkw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNRevw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvaNA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_TOQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKSw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w9.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmEU9vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5fBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmSU5vAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlfBBc-.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOlCnqEu92Fr1MmWUlvAA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Me5g.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Me5g.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Mu4mxM.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/KFOmCnqEu92Fr1Mu4mxM.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhL.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxsAXC-s.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxsAXC-s.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxswWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6u8w4BMUTPHjxswWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh6UVeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USSwiPHw.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USSwiPHw.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USeww.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6u9w4BMUTPHh7USeww.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHjx4wWA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHjx4wWA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHvxo.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/S6uyw4BMUTPHvxo.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuFuYMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuI6fMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/UcCO3FwrK3iLTeHuS_fvQtMwCp50KnMw2boKoduKmMEVuLyfMZs.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDFwmRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDGUmRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/XRXI3I6Li01BKofiOc5wtlZ2di8HDLshRTA.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk5hkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjWVAexg.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0RkyFjaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1x4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsg-1y4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsiH0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVQ.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0C4k.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/pe03MImSLYBIv1o4X1M8cc9iB_5p.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/pe03MImSLYBIv1o4X1M8cc9iB_5p.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/pe0qMImSLYBIv1o4X1M8cfe5.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/pe0qMImSLYBIv1o4X1M8cfe5.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.2.2/fonts/q5uGsou0JOdh94bfvQlr.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.2.2/fonts/q5uGsou0JOdh94bfvQlr.woff -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/07d40e985ad7c747025dabb9f22142c4.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/07d40e985ad7c747025dabb9f22142c4.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyC0ITw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyC0ITw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCAIT5lu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCAIT5lu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCIIT5lu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCIIT5lu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCMIT5lu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCMIT5lu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCkIT5lu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/1Ptug8zYS_SKggPNyCkIT5lu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/1f5e011d6aae0d98fc0518e1a303e99a.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/1f5e011d6aae0d98fc0518e1a303e99a.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKcQ72j00.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKcQ72j00.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKcg72j00.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKcg72j00.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKcw72j00.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKcw72j00.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKew72j00.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKew72j00.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKfA72j00.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKfA72j00.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKfw72.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCs6KVjbNBYlgoKfw72.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjs2yNL4U.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjs2yNL4U.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjsGyN.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjsGyN.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjtGyNL4U.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjtGyNL4U.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjvGyNL4U.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjvGyNL4U.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjvWyNL4U.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjvWyNL4U.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjvmyNL4U.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/4iCv6KVjbNBYlgoCxCvjvmyNL4U.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/626330658504e338ee86aec8e957426b.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/626330658504e338ee86aec8e957426b.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7jsDJT9g.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7jsDJT9g.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7ksDJT9g.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7ksDJT9g.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDI.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7nsDI.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7osDJT9g.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7osDJT9g.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7psDJT9g.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7psDJT9g.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7qsDJT9g.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7qsDJT9g.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7rsDJT9g.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK1dSBYKcSV-LCoeQqfX1RYOo3qPZ7rsDJT9g.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lqDY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qN67lqDY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNK7lqDY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNK7lqDY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lqDY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lqDY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lqDY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNq7lqDY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qO67lqDY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qO67lqDY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qPK7lqDY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qPK7lqDY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwkxduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwkxduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlBduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlBduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwlxdu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmBduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmRduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmxduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmxduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwkxduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwkxduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlBduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlBduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmBduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmBduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmRduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmhduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmhduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmxduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmxduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwkxduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwkxduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlBduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlBduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmBduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmBduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmRduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmRduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmhduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmhduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmxduz8A.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwmxduz8A.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNReuQ.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNReuQ.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNpeudwk.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/CSR54z1Qlv-GDxkbKVQ_dFsvWNpeudwk.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_fO4KTet_.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_fO4KTet_.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKTQ.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/CSR64z1Qlv-GDxkbKVQ_fOAKTQ.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvQlMIXxw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvQlMIXxw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvUlMI.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvUlMI.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvXlMIXxw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvXlMIXxw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvYlMIXxw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvYlMIXxw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvZlMIXxw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvZlMIXxw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvalMIXxw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvalMIXxw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvblMIXxw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_QiYsKILxRpg3hIP6sJ7fM7PqlONvblMIXxw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlM-vWjMY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlM-vWjMY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlMOvWjMY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlMOvWjMY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlMevWjMY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlMevWjMY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlMuvWjMY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlMuvWjMY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlOevWjMY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlOevWjMY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlPevW.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlPevW.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlPuvWjMY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/HI_SiYsKILxRpg3hIP6sJ7fM7PqlPuvWjMY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459Wdhyzbi.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/JTUSjIg1_i6t8kCHKm459Wlhyw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhN.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/QGYpz_kZZAGCONcK2A4bGOj8mNhN.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxsAUi-qJCY.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxsAUi-qJCY.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxsAXC-q.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6u8w4BMUTPHjxsAXC-q.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVSwaPGR_p.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVSwaPGR_p.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVSwiPGQ.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh6UVSwiPGQ.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USSwaPGR_p.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USSwaPGR_p.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USSwiPGQ.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6u9w4BMUTPHh7USSwiPGQ.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHjx4wXg.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHjx4wXg.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHjxAwXjeu.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/S6uyw4BMUTPHjxAwXjeu.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIMeaBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIMeaBXso.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofINeaB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofINeaB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIO-aBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIO-aBXso.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIOOaBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIOOaBXso.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIOuaBXso.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/XRXV3I6Li01BKofIOuaBXso.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/c2f002b3a87d3f9bfeebb23d32cfd9f8.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/c2f002b3a87d3f9bfeebb23d32cfd9f8.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/ee91700cdbf7ce16c054c2bb8946c736.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/ee91700cdbf7ce16c054c2bb8946c736.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqW106F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqW106F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWt06F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWt06F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtE6F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtE6F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtU6F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtU6F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtk6F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWtk6F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWu06F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWu06F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6F.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuU6F.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuk6F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWuk6F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWvU6F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWvU6F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWxU6F15M.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memtYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWqWxU6F15M.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS2mu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS2mu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSCmu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSCmu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSGmu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSGmu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSKmu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSKmu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSOmu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSOmu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSumu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSumu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSymu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTSymu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTUGmu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTUGmu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTVOmu1aB.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTVOmu1aB.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/q5uGsou0JOdh94bfuQltOxU.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/q5uGsou0JOdh94bfuQltOxU.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-5.3.1/fonts/q5uGsou0JOdh94bfvQlt.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/bootstrap-5.3.1/fonts/q5uGsou0JOdh94bfvQlt.woff2 -------------------------------------------------------------------------------- /docs/deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap Table of Contents v1.0.1 (http://afeld.github.io/bootstrap-toc/) 3 | * Copyright 2015 Aidan Feldman 4 | * Licensed under MIT (https://github.com/afeld/bootstrap-toc/blob/gh-pages/LICENSE.md) */ 5 | !function(a){"use strict";window.Toc={helpers:{findOrFilter:function(e,t){var n=e.find(t);return e.filter(t).add(n).filter(":not([data-toc-skip])")},generateUniqueIdBase:function(e){return a(e).text().trim().replace(/\'/gi,"").replace(/[& +$,:;=?@"#{}|^~[`%!'<>\]\.\/\(\)\*\\\n\t\b\v]/g,"-").replace(/-{2,}/g,"-").substring(0,64).replace(/^-+|-+$/gm,"").toLowerCase()||e.tagName.toLowerCase()},generateUniqueId:function(e){for(var t=this.generateUniqueIdBase(e),n=0;;n++){var r=t;if(0')},createChildNavList:function(e){var t=this.createNavList();return e.append(t),t},generateNavEl:function(e,t){var n=a('');n.attr("href","#"+e),n.text(t);var r=a("
  • ");return r.append(n),r},generateNavItem:function(e){var t=this.generateAnchor(e),n=a(e),r=n.data("toc-text")||n.text();return this.generateNavEl(t,r)},getTopLevel:function(e){for(var t=1;t<=6;t++){if(1 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.ttf -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-brands-400.woff2 -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.ttf -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-regular-400.woff2 -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.ttf -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-solid-900.woff2 -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.ttf -------------------------------------------------------------------------------- /docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/deps/font-awesome-6.4.2/webfonts/fa-v4compatibility.woff2 -------------------------------------------------------------------------------- /docs/deps/headroom-0.11.0/jQuery.headroom.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * headroom.js v0.9.4 - Give your page some headroom. Hide your header until you need it 3 | * Copyright (c) 2017 Nick Williams - http://wicky.nillia.ms/headroom.js 4 | * License: MIT 5 | */ 6 | 7 | !function(a){a&&(a.fn.headroom=function(b){return this.each(function(){var c=a(this),d=c.data("headroom"),e="object"==typeof b&&b;e=a.extend(!0,{},Headroom.options,e),d||(d=new Headroom(this,e),d.init(),c.data("headroom",d)),"string"==typeof b&&(d[b](),"destroy"===b&&c.removeData("headroom"))})},a("[data-headroom]").each(function(){var b=a(this);b.headroom(b.data())}))}(window.Zepto||window.jQuery); -------------------------------------------------------------------------------- /docs/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/favicon-16x16.png -------------------------------------------------------------------------------- /docs/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/favicon-32x32.png -------------------------------------------------------------------------------- /docs/katex-auto.js: -------------------------------------------------------------------------------- 1 | // https://github.com/jgm/pandoc/blob/29fa97ab96b8e2d62d48326e1b949a71dc41f47a/src/Text/Pandoc/Writers/HTML.hs#L332-L345 2 | document.addEventListener("DOMContentLoaded", function () { 3 | var mathElements = document.getElementsByClassName("math"); 4 | var macros = []; 5 | for (var i = 0; i < mathElements.length; i++) { 6 | var texText = mathElements[i].firstChild; 7 | if (mathElements[i].tagName == "SPAN") { 8 | katex.render(texText.data, mathElements[i], { 9 | displayMode: mathElements[i].classList.contains("display"), 10 | throwOnError: false, 11 | macros: macros, 12 | fleqn: false 13 | }); 14 | }}}); 15 | -------------------------------------------------------------------------------- /docs/link.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 5 | 8 | 12 | 13 | -------------------------------------------------------------------------------- /docs/pkgdown.yml: -------------------------------------------------------------------------------- 1 | pandoc: 3.6.3 2 | pkgdown: 2.0.9 3 | pkgdown_sha: ~ 4 | articles: 5 | cell_covs: cell_covs.html 6 | dreamlet: dreamlet.html 7 | errors: errors.html 8 | h5ad_on_disk: h5ad_on_disk.html 9 | mashr: mashr.html 10 | non_lin_eff: non_lin_eff.html 11 | last_built: 2025-04-24T19:34Z 12 | urls: 13 | reference: http://DiseaseNeurogenomics.github.io/dreamlet/reference 14 | article: http://DiseaseNeurogenomics.github.io/dreamlet/articles 15 | 16 | -------------------------------------------------------------------------------- /docs/reference/Rplot001.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/Rplot001.png -------------------------------------------------------------------------------- /docs/reference/Rplot002.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/Rplot002.png -------------------------------------------------------------------------------- /docs/reference/Rplot003.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/Rplot003.png -------------------------------------------------------------------------------- /docs/reference/[,dreamletProcessedData,ANY,ANY,ANY-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/[,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/[,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assay,dreamletProcessedData,ANY-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assay,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assay,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assay,vpDF,ANY-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assay,vpDF,vpDF-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assayNames,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assayNames,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assayNames,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assayNames,vpDF,vpDF-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/assayNames,vpDF-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/buildClusterTreeFromPB-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/buildClusterTreeFromPB-1.png -------------------------------------------------------------------------------- /docs/reference/cellTypeSpecificity-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/cellTypeSpecificity-1.png -------------------------------------------------------------------------------- /docs/reference/cellTypeSpecificity-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/cellTypeSpecificity-2.png -------------------------------------------------------------------------------- /docs/reference/cellTypeSpecificity-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/cellTypeSpecificity-3.png -------------------------------------------------------------------------------- /docs/reference/coefNames,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/details,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/details,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/details,vpDF-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/diffVar,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/diffVar-method-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/diffVar-method-1.png -------------------------------------------------------------------------------- /docs/reference/diffVar-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/diffVar-methods-1.png -------------------------------------------------------------------------------- /docs/reference/dreamlet,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/dreamletCompareClusters-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/dreamletCompareClusters-1.png -------------------------------------------------------------------------------- /docs/reference/dreamletCompareClusters-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/dreamletCompareClusters-2.png -------------------------------------------------------------------------------- /docs/reference/dreamletCompareClusters-3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/dreamletCompareClusters-3.png -------------------------------------------------------------------------------- /docs/reference/extractData,dreamletProcessedData,character-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/extractData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/extractData-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/extractData-methods-1.png -------------------------------------------------------------------------------- /docs/reference/figures/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/figures/diagram.png -------------------------------------------------------------------------------- /docs/reference/figures/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/figures/logo.png -------------------------------------------------------------------------------- /docs/reference/fitVarPart,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/fitVarPart-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/fitVarPart-1.png -------------------------------------------------------------------------------- /docs/reference/fitVarPart-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/fitVarPart-2.png -------------------------------------------------------------------------------- /docs/reference/getTreat,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/metadata,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotBeeswarm-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotBeeswarm-1.png -------------------------------------------------------------------------------- /docs/reference/plotCellComposition,SingleCellExperiment-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotCellComposition,data.frame-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotCellComposition,matrix-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotCellComposition-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotCellComposition-1.png -------------------------------------------------------------------------------- /docs/reference/plotCellComposition-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotCellComposition-2.png -------------------------------------------------------------------------------- /docs/reference/plotForest,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotForest,dreamlet_mash_result-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotForest-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotForest-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotGeneHeatmap,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotGeneHeatmap,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotGeneHeatmap-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotGeneHeatmap-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotHeatmap,cellSpecificityValues,cellSpecificityValues-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotHeatmap,cellSpecificityValues-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotHeatmap,data.frame,data.frame-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotHeatmap,data.frame-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotHeatmap,matrix,matrix-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotHeatmap,matrix-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotHeatmap-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotHeatmap-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotPCA,list-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotPCA-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotPCA-1.png -------------------------------------------------------------------------------- /docs/reference/plotPCA-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotPCA-2.png -------------------------------------------------------------------------------- /docs/reference/plotPercentBars,cellSpecificityValues,cellSpecificityValues-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotPercentBars,cellSpecificityValues-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotPercentBars,vpDF,vpDF-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotPercentBars-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotPercentBars-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotProjection-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotProjection-1.png -------------------------------------------------------------------------------- /docs/reference/plotVarPart,DataFrame,DataFrame-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVarPart-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotVarPart-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotViolin,cellSpecificityValues,cellSpecificityValues-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotViolin,cellSpecificityValues-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotViolin-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotViolin-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotVolcano,MArrayLM,MArrayLM-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVolcano,MArrayLM-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVolcano,dreamlet_mash_result,dreamlet_mash_result-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVolcano,dreamlet_mash_result-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVolcano,list,list-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVolcano,list-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVolcano-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotVolcano-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotVolcano-methods-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotVolcano-methods-2.png -------------------------------------------------------------------------------- /docs/reference/plotVoom,EList-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVoom,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVoom,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVoom,list,list-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/plotVoom-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotVoom-methods-1.png -------------------------------------------------------------------------------- /docs/reference/plotVoom-methods-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/plotVoom-methods-2.png -------------------------------------------------------------------------------- /docs/reference/print,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/print,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/print,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/residuals,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/run_mash-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/run_mash-1.png -------------------------------------------------------------------------------- /docs/reference/run_mash-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/run_mash-2.png -------------------------------------------------------------------------------- /docs/reference/seeErrors,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/seeErrors,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/seeErrors,vpDF-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/show,dreamletProcessedData,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/show,dreamletProcessedData-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/show,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/sortCols-method-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/sortCols-method-1.png -------------------------------------------------------------------------------- /docs/reference/stackAssays-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/stackAssays-1.png -------------------------------------------------------------------------------- /docs/reference/stackAssays-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/stackAssays-2.png -------------------------------------------------------------------------------- /docs/reference/topTable,dreamletResult,dreamletResult-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/zenith_gsa,dreamletResult,GeneSetCollection,ANY-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/zenith_gsa,dreamlet_mash_result,GeneSetCollection,ANY-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/zenith_gsa,dreamlet_mash_result,GeneSetCollection-method.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /docs/reference/zenith_gsa-methods-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/docs/reference/zenith_gsa-methods-1.png -------------------------------------------------------------------------------- /inst/CITATION: -------------------------------------------------------------------------------- 1 | 2 | 3 | citEntry(entry="article", 4 | title = "Efficient differential expression analysis of large-scale single cell transcriptomics data using dreamlet", 5 | author = personList( as.person("Gabriel E. Hoffman"), as.person("et al.")), 6 | year = 2023, 7 | journal = "bioRxiv", 8 | doi = "10.1101/2023.03.17.533005", 9 | volume = "", 10 | issue = "", 11 | pages = "", 12 | textVersion = 13 | paste("Hoffman GE, et al. (2023) Efficient differential expression analysis of large-scale single cell transcriptomics data using dreamlet. bioRxiv doi:10.1101/2023.03.17.533005")) 14 | 15 | -------------------------------------------------------------------------------- /inst/REFERENCES.bib: -------------------------------------------------------------------------------- 1 | @article{urbut2019flexible, 2 | title={Flexible statistical methods for estimating and testing effects in genomic studies with multiple conditions}, 3 | author={Urbut, Sarah M and Wang, Gao and Carbonetto, Peter and Stephens, Matthew}, 4 | journal={Nature genetics}, 5 | volume={51}, 6 | number={1}, 7 | pages={187--195}, 8 | year={2019}, 9 | url={https://doi.org/10.1038/s41588-018-0268-8}, 10 | publisher={Nature Publishing Group} 11 | } 12 | 13 | @article{oliva2020impact, 14 | title={The impact of sex on gene expression across human tissues}, 15 | author={Oliva, Meritxell and Munoz-Aguirre, Manuel and Kim-Hellmuth, Sarah and Wucher, Valentin and Gewirtz, Ariel DH and Cotter, Daniel J and Parsana, Princy and Kasela, Silva and Balliu, Brunilda and Vinuela, Ana and others}, 16 | journal={Science}, 17 | volume={369}, 18 | number={6509}, 19 | pages={eaba3066}, 20 | year={2020}, 21 | url={https://doi.org/10.1126/science.aba3066}, 22 | publisher={American Association for the Advancement of Science} 23 | } 24 | 25 | @article{wu2012camera, 26 | title={Camera: a competitive gene set test accounting for inter-gene correlation}, 27 | author={Wu, Di and Smyth, Gordon K}, 28 | journal={Nucleic acids research}, 29 | volume={40}, 30 | number={17}, 31 | pages={e133--e133}, 32 | year={2012}, 33 | publisher={Oxford University Press} 34 | } 35 | 36 | @article{ritchie2015limma, 37 | title={limma powers differential expression analyses for RNA-sequencing and microarray studies}, 38 | author={Ritchie, Matthew E and Phipson, Belinda and Wu, DI and Hu, Yifang and Law, Charity W and Shi, Wei and Smyth, Gordon K}, 39 | journal={Nucleic acids research}, 40 | volume={43}, 41 | number={7}, 42 | pages={e47--e47}, 43 | year={2015}, 44 | publisher={Oxford Academic} 45 | } 46 | 47 | @article{crowell2020muscat, 48 | title={Muscat detects subpopulation-specific state transitions from multi-sample multi-condition single-cell transcriptomics data}, 49 | author={Crowell, Helena L and Soneson, Charlotte and Germain, Pierre-Luc and Calini, Daniela and Collin, Ludovic and Raposo, Catarina and Malhotra, Dheeraj and Robinson, Mark D}, 50 | journal={Nature Communications}, 51 | volume={11}, 52 | number={1}, 53 | pages={6077}, 54 | year={2020}, 55 | publisher={Nature Publishing Group} 56 | } -------------------------------------------------------------------------------- /inst/unitTests/test_cellCounts.R: -------------------------------------------------------------------------------- 1 | 2 | test_cellCounts = function(){ 3 | 4 | data(example_sce) 5 | 6 | # create pseudobulk for each sample and cell cluster 7 | pb <- aggregateToPseudoBulk(example_sce, 8 | assay = "counts", 9 | cluster_id = 'cluster_id', 10 | sample_id = 'sample_id', 11 | verbose=FALSE) 12 | 13 | counts1 = cellCounts(pb) 14 | 15 | counts2 = computeCellCounts(example_sce, 'cluster_id', 'sample_id') 16 | 17 | checkEquals(counts1, counts2) 18 | } -------------------------------------------------------------------------------- /inst/unitTests/test_computeLogCPM.R: -------------------------------------------------------------------------------- 1 | 2 | test_computeNormCounts = function(){ 3 | 4 | data(example_sce) 5 | 6 | # compute CPM using edgeR 7 | dge = DGEList(counts(example_sce)) 8 | dge = calcNormFactors(dge, "none") 9 | 10 | value = max(abs(cpm(dge, log=FALSE) - computeNormCounts(example_sce) )) 11 | 12 | checkEqualsNumeric(value, 0) 13 | } 14 | 15 | 16 | 17 | test_computeLogCPM = function(){ 18 | 19 | data(example_sce) 20 | 21 | # compute CPM using edgeR 22 | dge = DGEList(counts(example_sce)) 23 | dge = calcNormFactors(dge, "none") 24 | 25 | prior.count = 1 26 | value = max(abs(cpm(dge, log=TRUE, prior.count=prior.count) - computeLogCPM(example_sce, prior.count=prior.count, scaledByLib=TRUE) )) 27 | 28 | checkEqualsNumeric(value, 0, tol=1e-2) 29 | } 30 | 31 | 32 | -------------------------------------------------------------------------------- /inst/unitTests/test_pbWeights.R: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | # test_pbWeights = function(){ 7 | 8 | # library(muscat) 9 | # library(dreamlet) 10 | 11 | # data(example_sce) 12 | 13 | # # create pseudobulk for each sample and cell cluster 14 | # pb <- aggregateToPseudoBulk(example_sce, 15 | # assay = "counts", 16 | # sample_id = "sample_id", 17 | # cluster_id = "cluster_id", 18 | # verbose = FALSE 19 | # ) 20 | 21 | # # cell count weights 22 | # #################### 23 | # weightsList <- pbWeights(example_sce, 24 | # sample_id = "sample_id", 25 | # cluster_id = "cluster_id") 26 | 27 | # # use externallly comptuted cell weights 28 | # res.proc1 <- processAssays(pb, ~ group_id, weightsList = weightsList) 29 | 30 | # # use internally comptuted cell weights 31 | # res.proc2 <- processAssays(pb, ~ group_id) 32 | 33 | # for( i in seq(length(weightsList)) ){ 34 | # weightsList[[i]][] = 1 35 | # } 36 | # res.proc3 <- processAssays(pb, ~ group_id, weightsList = weightsList) 37 | 38 | # # These should be identical, since weights of 1 are used 39 | # checkIdentical(res.proc3, res.proc2) 40 | 41 | # # delta weights 42 | # ############### 43 | # weightsList <- pbWeights(example_sce, 44 | # sample_id = "sample_id", 45 | # cluster_id = "cluster_id", 46 | # method = "delta") 47 | 48 | # # use externallly comptuted cell weights 49 | # res.proc1 <- processAssays(pb, ~ group_id, weightsList = weightsList) 50 | 51 | # # use internally comptuted cell weights 52 | # res.proc2 <- processAssays(pb, ~ group_id) 53 | 54 | # # These should NOOOT be identical 55 | # res = any(assay(res.proc1, 1)$weights == assay(res.proc2, 1)$weights) 56 | 57 | # checkIdentical(res, FALSE) 58 | # } -------------------------------------------------------------------------------- /inst/unitTests/test_rowWeightedVarsMatrix.R: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | # test_rowWeightedVarsMatrix = function(){ 5 | 6 | # set.seed(1) 7 | # n = 100 8 | # p = 200 9 | # X = matrix(rnorm(n*p), n, p) 10 | # W = matrix(rgamma(n*p, 14, 1), n, p) 11 | 12 | # # adapted from modi::weighted.var()0 13 | # # placed here to avoid importing the whole package 14 | # wv = function(x, w){ 15 | # w <- w * length(w)/sum(w) 16 | # sum(w * (x - weighted.mean(x, w))^2)/(sum(w) - 1) 17 | # } 18 | 19 | # res1 <- sapply(seq(n), function(i) wv(X[i,], W[i,])) 20 | 21 | # res2 <- dreamlet:::rowWeightedVarsMatrix(X, W) 22 | 23 | # checkEqualsNumeric(res1, res2) 24 | # } 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /man/as.dreamletResult.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R 3 | \name{as.dreamletResult} 4 | \alias{as.dreamletResult} 5 | \title{Convert list of regression fits to \code{dreamletResult}} 6 | \usage{ 7 | as.dreamletResult(fitList, df_details = NULL) 8 | } 9 | \arguments{ 10 | \item{fitList}{list of regression fit with \code{dream()}} 11 | 12 | \item{df_details}{\code{data.frame} storing assay details} 13 | } 14 | \value{ 15 | object of class \code{dreamletResult} 16 | } 17 | \description{ 18 | Convert list of regression fits to \code{dreamletResult} for downstream analysis 19 | } 20 | \details{ 21 | Useful for combining multiple runs of \code{dreamletCompareClusters()} into a single \code{dreamletResult} for downstream analysis 22 | } 23 | \examples{ 24 | library(muscat) 25 | library(SingleCellExperiment) 26 | 27 | data(example_sce) 28 | 29 | # create pseudobulk for each sample and cell cluster 30 | pb <- aggregateToPseudoBulk(example_sce, 31 | assay = "counts", 32 | cluster_id = "cluster_id", 33 | sample_id = "sample_id", 34 | verbose = FALSE 35 | ) 36 | 37 | # first comparison 38 | ct.pairs <- c("B cells", "CD14+ Monocytes") 39 | fit <- dreamletCompareClusters(pb, ct.pairs, method = "fixed") 40 | 41 | # second comparison 42 | ct.pairs2 <- c("B cells", "CD8 T cells") 43 | fit2 <- dreamletCompareClusters(pb, ct.pairs2, method = "fixed") 44 | 45 | # Make a list storing each result with a meaningful name 46 | fitList <- list() 47 | 48 | id <- paste0("[", ct.pairs[1], "]_vs_[", ct.pairs[2], "]") 49 | fitList[[id]] <- fit 50 | 51 | id <- paste0("[", ct.pairs2[1], "]_vs_[", ct.pairs2[2], "]") 52 | fitList[[id]] <- fit2 53 | 54 | # create a dreamletResult form this list 55 | res.compare <- as.dreamletResult(fitList) 56 | res.compare 57 | 58 | } 59 | -------------------------------------------------------------------------------- /man/assay-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R, R/vpDF.R 3 | \name{assay,dreamletResult,ANY-method} 4 | \alias{assay,dreamletResult,ANY-method} 5 | \alias{assay,dreamletResult,dreamletResult-method} 6 | \alias{assay,dreamletProcessedData,ANY-method} 7 | \alias{assay,dreamletProcessedData,dreamletProcessedData-method} 8 | \alias{assay,vpDF,ANY-method} 9 | \alias{assay,vpDF,vpDF-method} 10 | \title{Get assay} 11 | \usage{ 12 | \S4method{assay}{dreamletResult,ANY}(x, i, withDimnames = TRUE, ...) 13 | 14 | \S4method{assay}{dreamletProcessedData,ANY}(x, i, withDimnames = TRUE, ...) 15 | 16 | \S4method{assay}{vpDF,ANY}(x, i, withDimnames = TRUE, ...) 17 | } 18 | \arguments{ 19 | \item{x}{vpDF object} 20 | 21 | \item{i}{number indicating index, or string indicating assay} 22 | 23 | \item{withDimnames}{not used} 24 | 25 | \item{...}{other arguments} 26 | } 27 | \value{ 28 | return ith assay 29 | } 30 | \description{ 31 | Get assay 32 | 33 | Get assay 34 | 35 | Get assays by name 36 | } 37 | -------------------------------------------------------------------------------- /man/assayNames-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R, R/vpDF.R 3 | \name{assayNames,dreamletResult-method} 4 | \alias{assayNames,dreamletResult-method} 5 | \alias{assayNames,dreamletResult,dreamletResult-method} 6 | \alias{assayNames,dreamletProcessedData-method} 7 | \alias{assayNames,dreamletProcessedData,dreamletProcessedData-method} 8 | \alias{assayNames,vpDF-method} 9 | \alias{assayNames,vpDF,vpDF-method} 10 | \title{Get assayNames} 11 | \usage{ 12 | \S4method{assayNames}{dreamletResult}(x, ...) 13 | 14 | \S4method{assayNames}{dreamletProcessedData}(x, ...) 15 | 16 | \S4method{assayNames}{vpDF}(x, ...) 17 | } 18 | \arguments{ 19 | \item{x}{vpDF object} 20 | 21 | \item{...}{additional arguments} 22 | } 23 | \value{ 24 | array of assay names 25 | } 26 | \description{ 27 | Get assayNames 28 | 29 | Get assayNames 30 | 31 | Get assayNames 32 | } 33 | -------------------------------------------------------------------------------- /man/buildClusterTreeFromPB.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/buildClusterTreeFromPB.R 3 | \name{buildClusterTreeFromPB} 4 | \alias{buildClusterTreeFromPB} 5 | \title{Hierarchical clustering on cell types from pseudobulk} 6 | \usage{ 7 | buildClusterTreeFromPB( 8 | pb, 9 | method = c("complete", "ward.D", "single", "average", "mcquitty", "median", "centroid", 10 | "ward.D2"), 11 | dist.method = c("euclidean", "maximum", "manhattan", "canberra", "binary", "minkowski"), 12 | assays = assayNames(pb) 13 | ) 14 | } 15 | \arguments{ 16 | \item{pb}{\code{SingleCellObject} storing pseudobulk for each cell type in in \code{assay()} field} 17 | 18 | \item{method}{clustering method for \code{hclust()}} 19 | 20 | \item{dist.method}{distance metric} 21 | 22 | \item{assays}{which assays to include} 23 | } 24 | \value{ 25 | hierarchical clustering object of class \code{hclust} 26 | } 27 | \description{ 28 | Perform hierarchical clustering on cell types from pseudobulk by aggregating read counts from each cell type. 29 | } 30 | \examples{ 31 | library(muscat) 32 | library(SingleCellExperiment) 33 | 34 | data(example_sce) 35 | 36 | # create pseudobulk for each sample and cell cluster 37 | pb <- aggregateToPseudoBulk(example_sce, 38 | assay = "counts", 39 | cluster_id = "cluster_id", 40 | sample_id = "sample_id", 41 | verbose = FALSE 42 | ) 43 | 44 | # Hierarchical clustering of cell types 45 | hcl <- buildClusterTreeFromPB(pb) 46 | 47 | plot(hcl) 48 | 49 | } 50 | -------------------------------------------------------------------------------- /man/cellCounts.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellCounts.R 3 | \name{cellCounts} 4 | \alias{cellCounts} 5 | \title{Extract cell counts} 6 | \usage{ 7 | cellCounts(x) 8 | } 9 | \arguments{ 10 | \item{x}{a \code{SingleCellExperiment}} 11 | } 12 | \value{ 13 | matrix of cell counts with samples as rows and cell types as columns 14 | } 15 | \description{ 16 | Extract matrix of cell counts from \code{SingleCellExperiment} 17 | } 18 | \examples{ 19 | library(muscat) 20 | library(SingleCellExperiment) 21 | 22 | data(example_sce) 23 | 24 | # create pseudobulk for each sample and cell cluster 25 | pb <- aggregateToPseudoBulk(example_sce, 26 | assay = "counts", 27 | cluster_id = "cluster_id", 28 | sample_id = "sample_id", 29 | verbose = FALSE 30 | ) 31 | 32 | # get matrix of cell counts for each sample 33 | cellCounts(pb) 34 | 35 | } 36 | \seealso{ 37 | \code{computeCellCounts()} 38 | } 39 | -------------------------------------------------------------------------------- /man/cellSpecificityValues-class.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellTypeSpecificity.R 3 | \docType{class} 4 | \name{cellSpecificityValues-class} 5 | \alias{cellSpecificityValues-class} 6 | \title{Class cellSpecificityValues} 7 | \value{ 8 | none 9 | } 10 | \description{ 11 | Class \code{cellSpecificityValues} cell type specificity values for each gene and cell type 12 | } 13 | -------------------------------------------------------------------------------- /man/cellTypeSpecificity.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellTypeSpecificity.R 3 | \name{cellTypeSpecificity} 4 | \alias{cellTypeSpecificity} 5 | \title{Get cell type specificity of gene expression} 6 | \usage{ 7 | cellTypeSpecificity(pb, ...) 8 | } 9 | \arguments{ 10 | \item{pb}{\code{SingleCellExperiment} of pseudobulk data where easy \code{assay} is a cell type.} 11 | 12 | \item{...}{other arguments passed to \code{edgeR::calcNormFactors()}} 13 | } 14 | \value{ 15 | matrix of the fraction of expression attributable to each cell type for each gene. 16 | } 17 | \description{ 18 | For each gene, compute fraction of overall expression attributable to each cell type 19 | } 20 | \details{ 21 | Sum counts for each cell type, and compute the fraction of counts-per-million attributable to each cell type for each gene 22 | } 23 | \examples{ 24 | library(muscat) 25 | library(SingleCellExperiment) 26 | 27 | data(example_sce) 28 | 29 | # create pseudobulk for each sample and cell cluster 30 | pb <- aggregateToPseudoBulk(example_sce, 31 | assay = "counts", 32 | cluster_id = "cluster_id", 33 | sample_id = "sample_id", 34 | verbose = FALSE 35 | ) 36 | 37 | # Compute cell type specificity of each gene 38 | df <- cellTypeSpecificity(pb) 39 | 40 | # Violin plot of specificity scores for each cell type 41 | # Dashed line indicates genes that are equally expressed 42 | # across all cell types. For K cell types, this is 1/K 43 | plotViolin(df) 44 | 45 | # Compute the maximum specificity score for each gene 46 | scoreMax <- apply(df, 1, max) 47 | head(scoreMax) 48 | 49 | # For each cell type, get most specific gene 50 | genes <- rownames(df)[apply(df, 2, which.max)] 51 | 52 | # Barplot of 5 genes 53 | plotPercentBars(df, genes = genes) 54 | 55 | # heatmap of 5 genes that are most cell type specific 56 | dreamlet::plotHeatmap(df, genes = genes) 57 | 58 | } 59 | -------------------------------------------------------------------------------- /man/checkFormula.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/misc.R 3 | \name{checkFormula} 4 | \alias{checkFormula} 5 | \title{Check variables in a formula} 6 | \usage{ 7 | checkFormula(formula, data) 8 | } 9 | \arguments{ 10 | \item{formula}{formula of variables to check} 11 | 12 | \item{data}{data.frame storing variables in the formula} 13 | } 14 | \value{ 15 | If formula is valid, return TRUE. Else throw error 16 | } 17 | \description{ 18 | Check that variables in formula are present in the data 19 | } 20 | \examples{ 21 | 22 | # Valid formula 23 | dreamlet:::checkFormula(~speed, cars) 24 | 25 | # Not valid formula 26 | # dreamlet:::checkFormula( ~ speed + a, cars) 27 | 28 | } 29 | -------------------------------------------------------------------------------- /man/coefNames-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R 3 | \name{coefNames} 4 | \alias{coefNames} 5 | \alias{coefNames,dreamletResult-method} 6 | \title{Get coefficient names} 7 | \usage{ 8 | coefNames(obj) 9 | 10 | \S4method{coefNames}{dreamletResult}(obj) 11 | } 12 | \arguments{ 13 | \item{obj}{A \code{dreamletResult} object} 14 | } 15 | \value{ 16 | array storing names of coefficients 17 | } 18 | \description{ 19 | Get coefficient names 20 | } 21 | \examples{ 22 | library(muscat) 23 | library(SingleCellExperiment) 24 | 25 | data(example_sce) 26 | 27 | # create pseudobulk for each sample and cell cluster 28 | pb <- aggregateToPseudoBulk(example_sce, 29 | assay = "counts", 30 | cluster_id = "cluster_id", 31 | sample_id = "sample_id", 32 | verbose = FALSE 33 | ) 34 | 35 | # voom-style normalization 36 | res.proc <- processAssays(pb, ~group_id) 37 | 38 | # Differential expression analysis within each assay, 39 | # evaluated on the voom normalized data 40 | res.dl <- dreamlet(res.proc, ~group_id) 41 | 42 | # show coefficients estimated for each cell type 43 | coefNames(res.dl) 44 | 45 | } 46 | -------------------------------------------------------------------------------- /man/colData-dreamletProcessedData-method.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamletProcessedData.R 3 | \name{colData,dreamletProcessedData-method} 4 | \alias{colData,dreamletProcessedData-method} 5 | \title{Extract colData from \code{dreamletProcessedData}} 6 | \usage{ 7 | \S4method{colData}{dreamletProcessedData}(x, ...) 8 | } 9 | \arguments{ 10 | \item{x}{A \code{dreamletProcessedData} object} 11 | 12 | \item{...}{other arguments} 13 | } 14 | \value{ 15 | object from \code{colData} field 16 | } 17 | \description{ 18 | Extract colData from \code{dreamletProcessedData} 19 | } 20 | -------------------------------------------------------------------------------- /man/colData-set-dreamletProcessedData-ANY-method.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamletProcessedData.R 3 | \name{colData<-,dreamletProcessedData,ANY-method} 4 | \alias{colData<-,dreamletProcessedData,ANY-method} 5 | \title{Set colData} 6 | \usage{ 7 | \S4method{colData}{dreamletProcessedData,ANY}(x, ...) <- value 8 | } 9 | \arguments{ 10 | \item{x}{\code{dreamletProcessedData} object} 11 | 12 | \item{...}{other arguments} 13 | 14 | \item{value}{\code{data.frame} or object that can be coerced to it} 15 | } 16 | \value{ 17 | none 18 | } 19 | \description{ 20 | Set colData of dreamletProcessedData, and check for same dimensions and rownames 21 | } 22 | -------------------------------------------------------------------------------- /man/computeCellCounts.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/cellCounts.R 3 | \name{computeCellCounts} 4 | \alias{computeCellCounts} 5 | \title{Get cell counts with metadata} 6 | \usage{ 7 | computeCellCounts(sce, annotation, sampleIDs) 8 | } 9 | \arguments{ 10 | \item{sce}{\code{SingleCellExperiment}} 11 | 12 | \item{annotation}{string indicating column in \code{colData(sce)} storing cell type annotations} 13 | 14 | \item{sampleIDs}{string indicating column in \code{colData(sce)} storing sample identifers} 15 | } 16 | \value{ 17 | \code{matrix} storing cell counts 18 | } 19 | \description{ 20 | Get cell counts with metadata for each sample 21 | } 22 | \examples{ 23 | library(muscat) 24 | library(SingleCellExperiment) 25 | 26 | data(example_sce) 27 | 28 | counts <- computeCellCounts(example_sce, "cluster_id", "sample_id") 29 | 30 | counts[1:4, 1:4] 31 | 32 | } 33 | -------------------------------------------------------------------------------- /man/computeLogCPM.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/computeLogCPM.R 3 | \name{computeLogCPM} 4 | \alias{computeLogCPM} 5 | \title{Compute log normalized counts} 6 | \usage{ 7 | computeLogCPM( 8 | sce, 9 | lib.size = colSums2(counts(sce)), 10 | prior.count = 2, 11 | scaledByLib = FALSE 12 | ) 13 | } 14 | \arguments{ 15 | \item{sce}{\code{SingleCellExperiment} with counts stored as \code{counts(sce)}} 16 | 17 | \item{lib.size}{library size for each cell} 18 | 19 | \item{prior.count}{average count to be added to each observation to avoid taking log of zero} 20 | 21 | \item{scaledByLib}{if \code{TRUE}, scale pseudocount by \code{lib.size}. Else do standard constant pseudocount addition} 22 | } 23 | \value{ 24 | matrix of log CPM values 25 | } 26 | \description{ 27 | Compute normalized counts as log2 counts per million 28 | } 29 | \details{ 30 | This function gives same result as \code{edgeR::cpm(counts(sce), log=TRUE)} 31 | } 32 | \examples{ 33 | library(muscat) 34 | library(SingleCellExperiment) 35 | 36 | data(example_sce) 37 | 38 | logcounts(example_sce) <- computeLogCPM(example_sce) 39 | } 40 | \seealso{ 41 | also \code{edgeR::cpm()} 42 | } 43 | -------------------------------------------------------------------------------- /man/computeNormCounts.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/computeLogCPM.R 3 | \name{computeNormCounts} 4 | \alias{computeNormCounts} 5 | \title{Compute normalized counts} 6 | \usage{ 7 | computeNormCounts(sce) 8 | } 9 | \arguments{ 10 | \item{sce}{\code{SingleCellExperiment} with counts stored as \code{counts(sce)}} 11 | } 12 | \value{ 13 | matrix of CPM values 14 | } 15 | \description{ 16 | Compute normalized counts as counts per million 17 | } 18 | \details{ 19 | This function gives same result as \code{edgeR::cpm(counts(sce), log=FALSE)} 20 | } 21 | \examples{ 22 | library(muscat) 23 | library(SingleCellExperiment) 24 | 25 | data(example_sce) 26 | 27 | normcounts(example_sce) <- computeNormCounts(example_sce) 28 | } 29 | \seealso{ 30 | also \code{edgeR::cpm()} 31 | } 32 | -------------------------------------------------------------------------------- /man/details-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamletProcessedData.R, R/vpDF.R 3 | \name{details} 4 | \alias{details} 5 | \alias{details,dreamletProcessedData-method} 6 | \alias{details,dreamletResult-method} 7 | \alias{details,vpDF-method} 8 | \title{Extract details from dreamletProcessedData} 9 | \usage{ 10 | details(object) 11 | 12 | \S4method{details}{dreamletProcessedData}(object) 13 | 14 | \S4method{details}{dreamletResult}(object) 15 | 16 | \S4method{details}{vpDF}(object) 17 | } 18 | \arguments{ 19 | \item{object}{A \code{dreamletProcessedData} object} 20 | } 21 | \value{ 22 | Extract detailed information from some classes 23 | } 24 | \description{ 25 | Extract details from \code{dreamletProcessedData} 26 | } 27 | \examples{ 28 | library(muscat) 29 | library(SingleCellExperiment) 30 | 31 | data(example_sce) 32 | 33 | # create pseudobulk for each sample and cell cluster 34 | pb <- aggregateToPseudoBulk(example_sce, 35 | assay = "counts", 36 | cluster_id = "cluster_id", 37 | sample_id = "sample_id", 38 | verbose = FALSE 39 | ) 40 | 41 | # voom-style normalization 42 | res.proc <- processAssays(pb, ~group_id) 43 | 44 | # For each cell type, number of samples retained, 45 | # and variables retained 46 | details(res.proc) 47 | 48 | } 49 | -------------------------------------------------------------------------------- /man/dreamletProcessedData-class.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R 3 | \docType{class} 4 | \name{dreamletProcessedData-class} 5 | \alias{dreamletProcessedData-class} 6 | \title{Class dreamletProcessedData} 7 | \value{ 8 | none 9 | 10 | none 11 | } 12 | \description{ 13 | Class \code{dreamletProcessedData} 14 | } 15 | -------------------------------------------------------------------------------- /man/dreamletResult-class.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/diffVar.R, R/dreamlet.R 3 | \docType{class} 4 | \name{dreamletResult-class} 5 | \alias{dreamletResult-class} 6 | \title{Class dreamletResult} 7 | \value{ 8 | none 9 | 10 | none 11 | } 12 | \description{ 13 | Class \code{dreamletResult} stores results produced by \code{dreamlet()} to give a standard interface for downstream analysis 14 | 15 | Class \code{dreamletResult} stores results produced by \code{dreamlet()} to give a standard interface for downstream analysis 16 | } 17 | -------------------------------------------------------------------------------- /man/dreamlet_mash_result-class.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/mash.R 3 | \docType{class} 4 | \name{dreamlet_mash_result-class} 5 | \alias{dreamlet_mash_result-class} 6 | \title{Class dreamlet_mash_result} 7 | \value{ 8 | \code{dreamlet_mash_result} class 9 | } 10 | \description{ 11 | Class \code{dreamlet_mash_result} 12 | } 13 | -------------------------------------------------------------------------------- /man/dropRedundantTerms.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dropRedundantTerms.R 3 | \name{dropRedundantTerms} 4 | \alias{dropRedundantTerms} 5 | \title{Drop redundant terms from the model} 6 | \usage{ 7 | dropRedundantTerms(formula, data, tol = 0.001) 8 | } 9 | \arguments{ 10 | \item{formula}{original formula} 11 | 12 | \item{data}{data.frame} 13 | 14 | \item{tol}{tolerance to test difference of correlation from 1 or -1} 15 | } 16 | \value{ 17 | a formula, possibly with terms omitted. 18 | } 19 | \description{ 20 | Detect co-linear fixed effects and drop the last one 21 | } 22 | \examples{ 23 | 24 | # Valid formula 25 | dropRedundantTerms(~ group + extra, sleep) 26 | 27 | } 28 | -------------------------------------------------------------------------------- /man/equalFormulas.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/misc.R 3 | \name{equalFormulas} 4 | \alias{equalFormulas} 5 | \title{Check if two formulas are equal} 6 | \usage{ 7 | equalFormulas(formula1, formula2) 8 | } 9 | \arguments{ 10 | \item{formula1}{first formula} 11 | 12 | \item{formula2}{second formula} 13 | } 14 | \value{ 15 | boolean value indciating of formulas are equivalent 16 | } 17 | \description{ 18 | Check if two formulas are equal by evaluating the formulas and extracting terms 19 | } 20 | \examples{ 21 | 22 | # These formulas are equivalent 23 | formula1 <- ~ Size + 1 24 | formula2 <- ~ 1 + Size 25 | 26 | dreamlet:::equalFormulas(formula1, formula2) 27 | 28 | } 29 | -------------------------------------------------------------------------------- /man/extract-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R 3 | \name{[,dreamletResult,ANY,ANY,ANY-method} 4 | \alias{[,dreamletResult,ANY,ANY,ANY-method} 5 | \alias{[,dreamletResult,dreamletResult-method} 6 | \alias{[,dreamletProcessedData,ANY,ANY,ANY-method} 7 | \alias{[,dreamletProcessedData,dreamletProcessedData-method} 8 | \title{Subset with brackets} 9 | \usage{ 10 | \S4method{[}{dreamletResult,ANY,ANY,ANY}(x, i) 11 | 12 | \S4method{[}{dreamletProcessedData,ANY,ANY,ANY}(x, i) 13 | } 14 | \arguments{ 15 | \item{x}{\code{dreamletProcessedData} object} 16 | 17 | \item{i}{indeces to extract} 18 | } 19 | \value{ 20 | entries stored at specified index 21 | } 22 | \description{ 23 | Subset with brackets 24 | 25 | Subset with brackets 26 | } 27 | -------------------------------------------------------------------------------- /man/extractData-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamletProcessedData.R 3 | \name{extractData} 4 | \alias{extractData} 5 | \alias{extractData,dreamletProcessedData,character-method} 6 | \alias{extractData,dreamletProcessedData-method} 7 | \title{Extract normalized expression and \code{colData}} 8 | \usage{ 9 | extractData(x, assay, cols = colnames(colData(x)), genes = rownames(x)) 10 | 11 | \S4method{extractData}{dreamletProcessedData,character}( 12 | x, 13 | assay, 14 | cols = colnames(colData(x)), 15 | genes = rownames(assay(x, assay)) 16 | ) 17 | } 18 | \arguments{ 19 | \item{x}{\code{dreamletProcessedData} object} 20 | 21 | \item{assay}{assay to extract} 22 | 23 | \item{cols}{columns in \code{colData(x)} to extract. defaults to all columns as \code{colnames(colData(x))}} 24 | 25 | \item{genes}{genes to extract from \code{assay(x, assay)$E}. defaults to all genes as \code{rownames(x)}} 26 | } 27 | \value{ 28 | \code{data.frame} or \code{DataFrame} of merged expression and colData 29 | } 30 | \description{ 31 | Extract normalized expression and \code{colData} 32 | 33 | Extract normalized (i.e. log2 CPM) expression and \code{colData} from \code{dreamletProcessedData} 34 | } 35 | \examples{ 36 | library(muscat) 37 | library(SingleCellExperiment) 38 | 39 | data(example_sce) 40 | 41 | # create pseudobulk for each sample and cell cluster 42 | pb <- aggregateToPseudoBulk(example_sce, 43 | assay = "counts", 44 | cluster_id = "cluster_id", 45 | sample_id = "sample_id", 46 | verbose = FALSE 47 | ) 48 | 49 | # voom-style normalization 50 | res.proc <- processAssays(pb, ~group_id) 51 | 52 | # Extract all: 53 | # Extract tibble of colData merged with expression. 54 | # variables and genes are stored as columns, samples as rows 55 | df_merge <- extractData(res.proc, "B cells") 56 | 57 | # first few columns 58 | df_merge[, 1:6] 59 | 60 | # Extract subset: 61 | df_merge <- extractData(res.proc, "B cells", cols = "group_id", genes = c("SSU72", "U2AF1")) 62 | 63 | df_merge 64 | 65 | # Boxplot of expression 66 | boxplot(SSU72 ~ group_id, df_merge) 67 | # 68 | } 69 | -------------------------------------------------------------------------------- /man/figures/diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/man/figures/diagram.png -------------------------------------------------------------------------------- /man/figures/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/man/figures/logo.png -------------------------------------------------------------------------------- /man/fitVarPart.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/fitVarPart.R 3 | \name{fitVarPart} 4 | \alias{fitVarPart} 5 | \alias{fitVarPart,dreamletProcessedData-method} 6 | \title{Variance Partition analysis for each assay} 7 | \usage{ 8 | fitVarPart( 9 | x, 10 | formula, 11 | data = colData(x), 12 | assays = assayNames(x), 13 | quiet = FALSE, 14 | BPPARAM = SerialParam(), 15 | ... 16 | ) 17 | 18 | \S4method{fitVarPart}{dreamletProcessedData}( 19 | x, 20 | formula, 21 | data = colData(x), 22 | assays = assayNames(x), 23 | quiet = FALSE, 24 | BPPARAM = SerialParam(), 25 | ... 26 | ) 27 | } 28 | \arguments{ 29 | \item{x}{SingleCellExperiment or dreamletProcessedData object} 30 | 31 | \item{formula}{regression formula for differential expression analysis} 32 | 33 | \item{data}{metadata used in regression formula} 34 | 35 | \item{assays}{array of assay names to include in analysis. Defaults to \code{assayNames(x)}} 36 | 37 | \item{quiet}{show messages} 38 | 39 | \item{BPPARAM}{parameters for parallel evaluation} 40 | 41 | \item{...}{other arguments passed to \code{dream}} 42 | } 43 | \value{ 44 | Object of class \code{vpDF} inheriting from \code{DataFrame} storing the variance fractions for each gene and cell type. 45 | } 46 | \description{ 47 | Perform Variance Partition analysis for each assay 48 | } 49 | \examples{ 50 | 51 | library(muscat) 52 | library(SingleCellExperiment) 53 | 54 | data(example_sce) 55 | 56 | # create pseudobulk for each sample and cell cluster 57 | pb <- aggregateToPseudoBulk(example_sce, 58 | assay = "counts", 59 | cluster_id = "cluster_id", 60 | sample_id = "sample_id", 61 | verbose = FALSE 62 | ) 63 | 64 | # voom-style normalization 65 | res.proc <- processAssays(pb, ~group_id) 66 | 67 | # variance partitioning analysis 68 | vp <- fitVarPart(res.proc, ~group_id) 69 | 70 | # Show variance fractions at the gene-level for each cell type 71 | genes <- vp$gene[2:4] 72 | plotPercentBars(vp[vp$gene \%in\% genes, ]) 73 | 74 | # Summarize variance fractions genome-wide for each cell type 75 | plotVarPart(vp) 76 | 77 | } 78 | -------------------------------------------------------------------------------- /man/getTreat-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R 3 | \name{getTreat,dreamletResult-method} 4 | \alias{getTreat,dreamletResult-method} 5 | \alias{getTreat,dreamletResult,dreamletResult-method} 6 | \title{Test if coefficient is different from a specified value} 7 | \usage{ 8 | \S4method{getTreat}{dreamletResult}(fit, lfc = log2(1.2), coef = NULL, number = 10, sort.by = "p") 9 | } 10 | \arguments{ 11 | \item{fit}{dreamletResult object} 12 | 13 | \item{lfc}{a minimum log2-fold-change below which changes not considered scientifically meaningful} 14 | 15 | \item{coef}{which coefficient to test} 16 | 17 | \item{number}{number of genes to return} 18 | 19 | \item{sort.by}{column to sort by} 20 | } 21 | \value{ 22 | \code{DataFrame} storing hypothesis test for each gene and cell type 23 | } 24 | \description{ 25 | Test if coefficient is different from a specified value 26 | } 27 | \examples{ 28 | library(muscat) 29 | library(SingleCellExperiment) 30 | 31 | data(example_sce) 32 | 33 | # create pseudobulk for each sample and cell cluster 34 | pb <- aggregateToPseudoBulk(example_sce, 35 | assay = "counts", 36 | cluster_id = "cluster_id", 37 | sample_id = "sample_id", 38 | verbose = FALSE 39 | ) 40 | 41 | # voom-style normalization 42 | res.proc <- processAssays(pb, ~group_id) 43 | 44 | # Differential expression analysis within each assay, 45 | # evaluated on the voom normalized data 46 | res.dl <- dreamlet(res.proc, ~group_id) 47 | 48 | # show coefficients estimated for each cell type 49 | coefNames(res.dl) 50 | 51 | # extract results using limma-style syntax 52 | # combines all cell types together 53 | # adj.P.Val gives study-wide FDR 54 | getTreat(res.dl, coef = "group_idstim", number = 3) 55 | 56 | } 57 | \seealso{ 58 | \code{limma::topTreat()}, \code{variancePartition::getTreat()} 59 | } 60 | -------------------------------------------------------------------------------- /man/meta_analysis.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/meta_analysis.R 3 | \name{meta_analysis} 4 | \alias{meta_analysis} 5 | \title{Meta-analysis across multiple studies} 6 | \usage{ 7 | meta_analysis( 8 | x, 9 | method = "FE", 10 | group = c("ID", "assay"), 11 | control = list(maxiter = 2000) 12 | ) 13 | } 14 | \arguments{ 15 | \item{x}{\code{data.frame} rbind'ing results across genes, cell types and datasets} 16 | 17 | \item{method}{meta-analysis method. Values are fed into \code{metafor::rma()}, except for \code{'RE2C'} which calls \code{remaCor::RE2C()}.} 18 | 19 | \item{group}{colums in \code{x} to group by. For results from \code{dreamlet::topTable()}, results are aggregrated by gene and cell type (i.e. \code{'ID'} and \code{'assay'}). If \code{x} is not from this function, this argument allows the function to group results properly} 20 | 21 | \item{control}{passed to \code{rma(..,control)}} 22 | } 23 | \description{ 24 | Meta-analysis across multiple studies 25 | } 26 | \details{ 27 | \describe{ 28 | \item{\code{'FE'}: }{fixed effects meta-analysis} 29 | \item{\code{'REML'}: }{random effects meta-analysis} 30 | \item{\code{'RE2C'}: }{joint testing of fixed and random effects} 31 | } 32 | } 33 | \examples{ 34 | library(dreamlet) 35 | library(muscat) 36 | 37 | data(example_sce) 38 | 39 | # create pseudobulk for each sample and cell cluster 40 | pb <- aggregateToPseudoBulk(example_sce, 41 | assay = "counts", 42 | cluster_id = "cluster_id", 43 | sample_id = "sample_id", 44 | verbose = FALSE 45 | ) 46 | 47 | # voom-style normalization 48 | # just 'CD14+ Monocytes' for speed 49 | res.proc <- processAssays(pb, ~group_id, assays = "CD14+ Monocytes") 50 | 51 | # dreamlet 52 | res.dl <- dreamlet(res.proc, ~group_id) 53 | 54 | tab1 <- topTable(res.dl, coef = "group_idstim", number = Inf) 55 | tab1$Dataset <- "1" 56 | 57 | # Results from a second cohort 58 | # Here, just a copy of the same results for simplicity 59 | tab2 <- tab1 60 | tab2$Dataset <- "2" 61 | 62 | # rbind 63 | tab_combined <- rbind(tab1, tab2) 64 | 65 | # Perform fixed effects meta-analysis 66 | res <- meta_analysis(tab_combined, method = "FE") 67 | 68 | res[1:3, ] 69 | } 70 | -------------------------------------------------------------------------------- /man/metadata-dreamletProcessedData-method.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamletProcessedData.R 3 | \name{metadata,dreamletProcessedData-method} 4 | \alias{metadata,dreamletProcessedData-method} 5 | \alias{metadata,dreamletProcessedData,dreamletProcessedData-method} 6 | \title{Extract metadata from \code{dreamletProcessedData}} 7 | \usage{ 8 | \S4method{metadata}{dreamletProcessedData}(x) 9 | } 10 | \arguments{ 11 | \item{x}{A dreamletProcessedData object} 12 | } 13 | \value{ 14 | object from \code{metadata} field 15 | } 16 | \description{ 17 | Extract metadata from \code{dreamletProcessedData} 18 | } 19 | -------------------------------------------------------------------------------- /man/outlier.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/outlier.R 3 | \name{outlier} 4 | \alias{outlier} 5 | \title{Multivariate outlier detection} 6 | \usage{ 7 | outlier(data, robust = FALSE, ...) 8 | } 9 | \arguments{ 10 | \item{data}{matrix of data} 11 | 12 | \item{robust}{use robust covariance method, defaults to \code{FALSE}} 13 | 14 | \item{...}{arguments passed to \code{MASS::cov.rob()}} 15 | } 16 | \value{ 17 | \code{data.frame} storing chisq and z-score for each entry indicating deviation from the mean. The z-score is computed by evaluating the p-value of chisq statistic and converting it into a z-score 18 | } 19 | \description{ 20 | Detect multivariante outliers using Mahalanobis distance using mean and covariance estimated either with standard or robust methods. 21 | } 22 | \details{ 23 | The distance follow a chisq distrubtion under the null with standard method for mean and covariance. It is approximate if the robust method is used. So use \code{qchisq(p = 0.999 , df = k)} to get cutoff to keep 99.9\% of samples under the null for data with \code{k=2} columns. 24 | } 25 | \examples{ 26 | data <- matrix(rnorm(200), 100, 2) 27 | 28 | res <- outlier(data) 29 | 30 | res[1:4,] 31 | } 32 | -------------------------------------------------------------------------------- /man/outlierByAssay.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/outlier.R 3 | \name{outlierByAssay} 4 | \alias{outlierByAssay} 5 | \title{Outlier analysis for each assay} 6 | \usage{ 7 | outlierByAssay(object, assays = names(object), nPC = 2, robust = FALSE, ...) 8 | } 9 | \arguments{ 10 | \item{object}{\code{dreamletProcessedData} from \code{processAssays()}} 11 | 12 | \item{assays}{assays / cell types to analyze} 13 | 14 | \item{nPC}{number of PCs to uses for outlier score with \code{outlier()}} 15 | 16 | \item{robust}{use robust covariance method, defaults to \code{FALSE}} 17 | 18 | \item{...}{arguments passed to \code{MASS::cov.rob()}} 19 | } 20 | \value{ 21 | \describe{ 22 | \item{\code{ID}:}{sample identifier} 23 | \item{\code{assay}:}{specify assay} 24 | \item{\code{PCs}:}{principal components} 25 | \item{\code{chisq}:}{mahalanobis distance that is distributed as chisq(k) k = nPC if the data is multivariate gaussian} 26 | \item{\code{z}:}{z-score corresponding to the chisq distance} 27 | } 28 | } 29 | \description{ 30 | Compute outlier score for each sample in each assay using \code{outlier()} run on the top principal components. Mahalanobis distance is used for outlier detect and multivariate normal assumption is used to compute p-values 31 | } 32 | \examples{ 33 | library(muscat) 34 | library(SingleCellExperiment) 35 | 36 | data(example_sce) 37 | 38 | # create pseudobulk for each sample and cell cluster 39 | pb <- aggregateToPseudoBulk(example_sce, 40 | assay = "counts", 41 | cluster_id = "cluster_id", 42 | sample_id = "sample_id", 43 | verbose = FALSE 44 | ) 45 | 46 | # voom-style normalization 47 | res.proc <- processAssays(pb, ~group_id) 48 | 49 | # Compute PCs and outlier scores 50 | outlierByAssay( res.proc, c("B cells", "CD14+ Monocytes")) 51 | } 52 | \seealso{ 53 | \code{outlier()} 54 | } 55 | -------------------------------------------------------------------------------- /man/plotBeeswarm.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotBeeswarm.R 3 | \name{plotBeeswarm} 4 | \alias{plotBeeswarm} 5 | \title{Beeswarm plot of effect sizes for each assay} 6 | \usage{ 7 | plotBeeswarm(res.dl, coef, fdr.range = 4, assays = assayNames(res.dl)) 8 | } 9 | \arguments{ 10 | \item{res.dl}{\code{dreamletResult} object from \code{dreamlet()}} 11 | 12 | \item{coef}{coefficient name fed to \code{topTable()}} 13 | 14 | \item{fdr.range}{range for coloring FDR} 15 | 16 | \item{assays}{which assays to plot} 17 | } 18 | \value{ 19 | \code{ggplot2} of logFC by assay 20 | } 21 | \description{ 22 | Beeswarm plot of effect sizes for each assay, colored by sign and FDR 23 | } 24 | \examples{ 25 | library(muscat) 26 | library(SingleCellExperiment) 27 | 28 | data(example_sce) 29 | 30 | # create pseudobulk for each sample and cell cluster 31 | pb <- aggregateToPseudoBulk(example_sce, 32 | assay = "counts", 33 | cluster_id = "cluster_id", 34 | sample_id = "sample_id", 35 | verbose = FALSE 36 | ) 37 | 38 | # voom-style normalization 39 | res.proc <- processAssays(pb, ~group_id) 40 | 41 | # Differential expression analysis within each assay, 42 | # evaluated on the voom normalized data 43 | res.dl <- dreamlet(res.proc, ~group_id) 44 | 45 | # Beeswarm plot of effect sizes for each assay, 46 | # colored by sign and FDR 47 | plotBeeswarm(res.dl, "group_idstim") 48 | 49 | } 50 | -------------------------------------------------------------------------------- /man/plotCellComposition.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotCellComposition.R 3 | \name{plotCellComposition} 4 | \alias{plotCellComposition} 5 | \alias{plotCellComposition,SingleCellExperiment-method} 6 | \alias{plotCellComposition,matrix-method} 7 | \alias{plotCellComposition,data.frame-method} 8 | \title{Bar plot of cell compositions} 9 | \usage{ 10 | plotCellComposition(obj, col, width = NULL) 11 | 12 | \S4method{plotCellComposition}{SingleCellExperiment}(obj, col, width = NULL) 13 | 14 | \S4method{plotCellComposition}{matrix}(obj, col, width = NULL) 15 | 16 | \S4method{plotCellComposition}{data.frame}(obj, col, width = NULL) 17 | } 18 | \arguments{ 19 | \item{obj}{matrix of [cells] x [samples] or \code{SingleCellExperiment} from \code{aggregateToPseudoBulk}} 20 | 21 | \item{col}{array of colors. If missing, use default colors. If \code{names(col)} is the same as \code{arrayNames(obj)}, then colors will be assigned by assay name#'} 22 | 23 | \item{width}{specify width of bars} 24 | } 25 | \value{ 26 | Barplot showing cell fractions 27 | } 28 | \description{ 29 | Bar plot of cell compositions 30 | } 31 | \examples{ 32 | 33 | library(muscat) 34 | library(SingleCellExperiment) 35 | 36 | data(example_sce) 37 | 38 | # create pseudobulk for each sample and cell cluster 39 | pb <- aggregateToPseudoBulk(example_sce, 40 | assay = "counts", 41 | cluster_id = "cluster_id", 42 | sample_id = "sample_id", 43 | verbose = FALSE 44 | ) 45 | 46 | # show cell composition bar plots 47 | plotCellComposition(pb) 48 | 49 | # extract cell counts 50 | df_cellCounts <- cellCounts(pb) 51 | 52 | # show cell composition bar plots 53 | plotCellComposition(df_cellCounts) 54 | 55 | } 56 | -------------------------------------------------------------------------------- /man/plotForest-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotForest.R 3 | \name{plotForest} 4 | \alias{plotForest} 5 | \alias{plotForest,dreamletResult-method} 6 | \alias{plotForest,dreamlet_mash_result-method} 7 | \title{Forest plot} 8 | \usage{ 9 | plotForest(x, gene, coef, ...) 10 | 11 | \S4method{plotForest}{dreamletResult}(x, gene, coef, assays = names(x), ylim = NULL) 12 | 13 | \S4method{plotForest}{dreamlet_mash_result}(x, gene, coef, assays = colnames(x$logFC.original), ylim = NULL) 14 | } 15 | \arguments{ 16 | \item{x}{result from \code{dreamlet}} 17 | 18 | \item{gene}{gene to show results for} 19 | 20 | \item{coef}{coefficient to test with \code{topTable}} 21 | 22 | \item{...}{other arguments} 23 | 24 | \item{assays}{array of assays to plot} 25 | 26 | \item{ylim}{limits for the y axis} 27 | } 28 | \value{ 29 | Plot showing effect sizes 30 | } 31 | \description{ 32 | Forest plot 33 | } 34 | \examples{ 35 | library(muscat) 36 | library(SingleCellExperiment) 37 | 38 | data(example_sce) 39 | 40 | # create pseudobulk for each sample and cell cluster 41 | pb <- aggregateToPseudoBulk(example_sce, 42 | assay = "counts", 43 | cluster_id = "cluster_id", 44 | sample_id = "sample_id", 45 | verbose = FALSE 46 | ) 47 | 48 | # voom-style normalization 49 | res.proc <- processAssays(pb, ~group_id) 50 | 51 | # Differential expression analysis within each assay, 52 | # evaluated on the voom normalized data 53 | res.dl <- dreamlet(res.proc, ~group_id) 54 | 55 | # show coefficients estimated for each cell type 56 | coefNames(res.dl) 57 | 58 | # Show estimated log fold change with in each cell type 59 | plotForest(res.dl, gene = "ISG20", coef = "group_idstim") 60 | 61 | } 62 | -------------------------------------------------------------------------------- /man/plotGeneHeatmap-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotGeneHeatmap.R 3 | \docType{methods} 4 | \name{plotGeneHeatmap} 5 | \alias{plotGeneHeatmap} 6 | \alias{plotGeneHeatmap,dreamletResult-method} 7 | \alias{plotGeneHeatmap,dreamletResult,dreamletResult-method} 8 | \title{Heatmap of genes and assays} 9 | \usage{ 10 | plotGeneHeatmap( 11 | x, 12 | coef, 13 | genes, 14 | assays = assayNames(x), 15 | zmax = NULL, 16 | transpose = FALSE 17 | ) 18 | 19 | \S4method{plotGeneHeatmap}{dreamletResult}( 20 | x, 21 | coef, 22 | genes, 23 | assays = assayNames(x), 24 | zmax = NULL, 25 | transpose = FALSE 26 | ) 27 | } 28 | \arguments{ 29 | \item{x}{A \code{dreamletResult} object} 30 | 31 | \item{coef}{column number or column name specifying which coefficient or contrast of the linear model is of interest.} 32 | 33 | \item{genes}{array of genes to include in plot} 34 | 35 | \item{assays}{array of assay names to include in analysis. Defaults to \code{assayNames(x)}} 36 | 37 | \item{zmax}{maximum z.std value} 38 | 39 | \item{transpose}{(default: FALSE) Use `coord_flip()` to flip axies} 40 | } 41 | \value{ 42 | Heatmap plot for specified genes and assays 43 | 44 | Heatmap plot for specified genes and assays 45 | } 46 | \description{ 47 | Heatmap of genes and assays 48 | } 49 | \examples{ 50 | library(muscat) 51 | library(SingleCellExperiment) 52 | 53 | data(example_sce) 54 | 55 | # create pseudobulk for each sample and cell cluster 56 | pb <- aggregateToPseudoBulk(example_sce, 57 | assay = "counts", 58 | cluster_id = "cluster_id", 59 | sample_id = "sample_id", 60 | verbose = FALSE 61 | ) 62 | 63 | # voom-style normalization 64 | res.proc <- processAssays(pb, ~group_id) 65 | 66 | # Differential expression analysis within each assay, 67 | # evaluated on the voom normalized data 68 | res.dl <- dreamlet(res.proc, ~group_id) 69 | 70 | # Heatmap for specified subset of genes 71 | plotGeneHeatmap(res.dl, coef = "group_idstim", genes = rownames(pb)[1:15]) 72 | 73 | } 74 | -------------------------------------------------------------------------------- /man/plotHeatmap-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotHeatmap.R 3 | \docType{methods} 4 | \name{plotHeatmap} 5 | \alias{plotHeatmap} 6 | \alias{plotHeatmap,cellSpecificityValues-method} 7 | \alias{plotHeatmap,cellSpecificityValues,cellSpecificityValues-method} 8 | \alias{plotHeatmap,data.frame-method} 9 | \alias{plotHeatmap,data.frame,data.frame-method} 10 | \alias{plotHeatmap,matrix-method} 11 | \alias{plotHeatmap,matrix,matrix-method} 12 | \title{Plot heatmap} 13 | \usage{ 14 | plotHeatmap( 15 | x, 16 | genes = rownames(x), 17 | color = "darkblue", 18 | assays = colnames(x), 19 | useFillScale = TRUE 20 | ) 21 | 22 | \S4method{plotHeatmap}{cellSpecificityValues}( 23 | x, 24 | genes = rownames(x), 25 | color = "darkblue", 26 | assays = colnames(x), 27 | useFillScale = TRUE 28 | ) 29 | 30 | \S4method{plotHeatmap}{data.frame}( 31 | x, 32 | genes = rownames(x), 33 | color = "darkblue", 34 | assays = colnames(x), 35 | useFillScale = TRUE 36 | ) 37 | 38 | \S4method{plotHeatmap}{matrix}( 39 | x, 40 | genes = rownames(x), 41 | color = "darkblue", 42 | assays = colnames(x), 43 | useFillScale = TRUE 44 | ) 45 | } 46 | \arguments{ 47 | \item{x}{fractions for each gene} 48 | 49 | \item{genes}{name of genes to plot} 50 | 51 | \item{color}{color of heatmap} 52 | 53 | \item{assays}{array of assays to plot} 54 | 55 | \item{useFillScale}{default TRUE. add scale_fill_gradient() to plot} 56 | } 57 | \value{ 58 | heatmap 59 | } 60 | \description{ 61 | Plot heatmap 62 | } 63 | \examples{ 64 | library(muscat) 65 | library(SingleCellExperiment) 66 | 67 | data(example_sce) 68 | 69 | # create pseudobulk for each sample and cell cluster 70 | pb <- aggregateToPseudoBulk(example_sce, 71 | assay = "counts", 72 | cluster_id = "cluster_id", 73 | sample_id = "sample_id", 74 | verbose = FALSE 75 | ) 76 | 77 | # Compute cell type specificity of each gene 78 | df <- cellTypeSpecificity(pb) 79 | 80 | # For each cell type, get most specific gene 81 | genes <- rownames(df)[apply(df, 2, which.max)] 82 | 83 | # heatmap of 5 genes that are most cell type specific 84 | dreamlet::plotHeatmap(df, genes = genes) 85 | } 86 | -------------------------------------------------------------------------------- /man/plotPCA.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotPCA.R 3 | \name{plotPCA} 4 | \alias{plotPCA} 5 | \alias{plotPCA,list-method} 6 | \title{Plot PCA of gene expression for an assay} 7 | \usage{ 8 | \S4method{plotPCA}{list}( 9 | object, 10 | assays = names(object), 11 | nPC = 2, 12 | robust = FALSE, 13 | ..., 14 | maxOutlierZ = 20, 15 | nrow = 2, 16 | size = 2, 17 | fdr.cutoff = 0.05 18 | ) 19 | } 20 | \arguments{ 21 | \item{object}{\code{dreamletProcessedData} from \code{processAssays()} or a \code{list} from \code{residuals()}} 22 | 23 | \item{assays}{assays / cell types to analyze} 24 | 25 | \item{nPC}{number of PCs to uses for outlier score with \code{outlier()}} 26 | 27 | \item{robust}{use robust covariance method, defaults to \code{FALSE}} 28 | 29 | \item{...}{arguments passed to \code{MASS::cov.rob()}} 30 | 31 | \item{maxOutlierZ}{cap outlier z-scores at this value for plotting to maintain consistent color scale} 32 | 33 | \item{nrow}{number of rows in plot} 34 | 35 | \item{size}{size passed to \code{geom_point()}} 36 | 37 | \item{fdr.cutoff}{FDR cutoff to determine outlier} 38 | } 39 | \description{ 40 | Compute PCA of gene expression for an assay, and plot samples coloring by outlier score 41 | } 42 | \examples{ 43 | library(muscat) 44 | library(SingleCellExperiment) 45 | 46 | data(example_sce) 47 | 48 | # create pseudobulk for each sample and cell cluster 49 | pb <- aggregateToPseudoBulk(example_sce, 50 | assay = "counts", 51 | cluster_id = "cluster_id", 52 | sample_id = "sample_id", 53 | verbose = FALSE 54 | ) 55 | 56 | # voom-style normalization 57 | res.proc <- processAssays(pb, ~group_id) 58 | 59 | # PCA to identify outliers 60 | # from normalized expression 61 | plotPCA( res.proc, c("B cells", "CD14+ Monocytes")) 62 | 63 | # Run on regression residuals 64 | #----------------------------- 65 | 66 | # Regression analysis 67 | fit = dreamlet(res.proc, ~ group_id) 68 | 69 | # Extract regression residuals 70 | residsObj = residuals(fit) 71 | 72 | # PCA on residuals 73 | plotPCA( residsObj, c("B cells", "CD14+ Monocytes")) 74 | } 75 | \seealso{ 76 | \code{outlierByAssay()} 77 | } 78 | -------------------------------------------------------------------------------- /man/plotPercentBars-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotPercentBars.R 3 | \name{plotPercentBars,vpDF-method} 4 | \alias{plotPercentBars,vpDF-method} 5 | \alias{plotPercentBars,vpDF,vpDF-method} 6 | \alias{plotPercentBars,cellSpecificityValues-method} 7 | \alias{plotPercentBars,cellSpecificityValues,cellSpecificityValues-method} 8 | \title{Bar plot of variance fractions} 9 | \usage{ 10 | \S4method{plotPercentBars}{vpDF}( 11 | x, 12 | col = c(ggColorHue(ncol(x) - 3), "grey85"), 13 | genes = unique(x$gene), 14 | width = NULL, 15 | ncol = 3, 16 | ... 17 | ) 18 | 19 | \S4method{plotPercentBars}{cellSpecificityValues}( 20 | x, 21 | col = ggColorHue(ncol(x)), 22 | genes = rownames(x), 23 | width = NULL, 24 | ... 25 | ) 26 | } 27 | \arguments{ 28 | \item{x}{\code{vpDF} object returned by \code{fitVarPart()}} 29 | 30 | \item{col}{color of bars for each variable} 31 | 32 | \item{genes}{name of genes to plot} 33 | 34 | \item{width}{specify width of bars} 35 | 36 | \item{ncol}{number of columns in the plot} 37 | 38 | \item{...}{other arguments} 39 | } 40 | \value{ 41 | Bar plot showing variance fractions for each gene 42 | } 43 | \description{ 44 | Bar plot of variance fractions for a subset of genes 45 | } 46 | \examples{ 47 | library(muscat) 48 | library(SingleCellExperiment) 49 | 50 | data(example_sce) 51 | 52 | # create pseudobulk for each sample and cell cluster 53 | pb <- aggregateToPseudoBulk(example_sce, 54 | assay = "counts", 55 | cluster_id = "cluster_id", 56 | sample_id = "sample_id", 57 | verbose = FALSE 58 | ) 59 | 60 | # voom-style normalization 61 | res.proc <- processAssays(pb, ~group_id) 62 | 63 | # variance partitioning analysis 64 | vp <- fitVarPart(res.proc, ~group_id) 65 | 66 | # Show variance fractions at the gene-level for each cell type 67 | plotPercentBars(vp, genes = vp$gene[2:4], ncol = 2) 68 | 69 | } 70 | -------------------------------------------------------------------------------- /man/plotProjection.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotProjection.R 3 | \name{plotProjection} 4 | \alias{plotProjection} 5 | \title{Plot 2D projection} 6 | \usage{ 7 | plotProjection( 8 | sce, 9 | type, 10 | annotation, 11 | pointsize = 0, 12 | pixels = c(512, 512), 13 | legend.position = "none", 14 | text = TRUE, 15 | order 16 | ) 17 | } 18 | \arguments{ 19 | \item{sce}{\code{SingleCellExperiment}} 20 | 21 | \item{type}{field in \code{reducedDims(sce)} to plot} 22 | 23 | \item{annotation}{column in \code{colData(sce)} to annotate each cell} 24 | 25 | \item{pointsize}{Radius of rasterized point. Use \code{0} for single pixels(fastest).} 26 | 27 | \item{pixels}{Vector with X and Y resolution of the raster, default \code{c(512,512)}} 28 | 29 | \item{legend.position}{legend.position: the position of legends ("none", "left", "right", "bottom", "top", or two-element numeric vector)} 30 | 31 | \item{text}{show \code{annotation} as text. Default \code{TRUE}} 32 | 33 | \item{order}{specify order of levels for \code{annotation}} 34 | } 35 | \value{ 36 | ggplot2 plot of the projection 37 | } 38 | \description{ 39 | Plot 2D projection (i.e. UMAP, tSNE) for millions of cells efficiently 40 | } 41 | \details{ 42 | Uses \code{scattermore::geom_scattermore()} to plot millions of points efficiently 43 | } 44 | \examples{ 45 | library(muscat) 46 | library(SingleCellExperiment) 47 | 48 | data(example_sce) 49 | 50 | plotProjection(example_sce, "TSNE", "cluster_id", 1) 51 | } 52 | -------------------------------------------------------------------------------- /man/plotVarPart-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotVarPart.R 3 | \name{plotVarPart,DataFrame-method} 4 | \alias{plotVarPart,DataFrame-method} 5 | \alias{plotVarPart,DataFrame,DataFrame-method} 6 | \title{Violin plot of variance fractions} 7 | \usage{ 8 | \S4method{plotVarPart}{DataFrame}( 9 | obj, 10 | col = c(ggColorHue(base::ncol(obj) - 3), "grey85"), 11 | label.angle = 20, 12 | main = "", 13 | ylab = "", 14 | convertToPercent = TRUE, 15 | ncol = 3, 16 | ... 17 | ) 18 | } 19 | \arguments{ 20 | \item{obj}{\code{varParFrac} object returned by \code{fitExtractVarPart} or \code{extractVarPart}} 21 | 22 | \item{col}{vector of colors} 23 | 24 | \item{label.angle}{angle of labels on x-axis} 25 | 26 | \item{main}{title of plot} 27 | 28 | \item{ylab}{text on y-axis} 29 | 30 | \item{convertToPercent}{multiply fractions by 100 to convert to percent values} 31 | 32 | \item{ncol}{number of columns in the plot} 33 | 34 | \item{...}{additional arguments} 35 | } 36 | \value{ 37 | Violin plot showing variance fractions 38 | } 39 | \description{ 40 | Violin plot of variance fraction for each gene and each variable 41 | } 42 | \examples{ 43 | library(muscat) 44 | library(SingleCellExperiment) 45 | 46 | data(example_sce) 47 | 48 | # create pseudobulk for each sample and cell cluster 49 | pb <- aggregateToPseudoBulk(example_sce, 50 | assay = "counts", 51 | cluster_id = "cluster_id", 52 | sample_id = "sample_id", 53 | verbose = FALSE 54 | ) 55 | 56 | # voom-style normalization 57 | res.proc <- processAssays(pb, ~group_id) 58 | 59 | # variance partitioning analysis 60 | vp <- fitVarPart(res.proc, ~group_id) 61 | 62 | # Summarize variance fractions genome-wide for each cell type 63 | plotVarPart(vp) 64 | 65 | } 66 | -------------------------------------------------------------------------------- /man/plotViolin-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotViolin.R 3 | \docType{methods} 4 | \name{plotViolin} 5 | \alias{plotViolin} 6 | \alias{plotViolin,cellSpecificityValues-method} 7 | \alias{plotViolin,cellSpecificityValues,cellSpecificityValues-method} 8 | \title{Plot Violins} 9 | \usage{ 10 | plotViolin(x, ...) 11 | 12 | \S4method{plotViolin}{cellSpecificityValues}(x, assays = colnames(x)) 13 | } 14 | \arguments{ 15 | \item{x}{fractions for each gene} 16 | 17 | \item{...}{other arguments} 18 | 19 | \item{assays}{array of assays to plot} 20 | } 21 | \value{ 22 | Violin plot 23 | } 24 | \description{ 25 | Plot Violins 26 | } 27 | \examples{ 28 | library(muscat) 29 | library(SingleCellExperiment) 30 | 31 | data(example_sce) 32 | 33 | # create pseudobulk for each sample and cell cluster 34 | pb <- aggregateToPseudoBulk(example_sce, 35 | assay = "counts", 36 | cluster_id = "cluster_id", 37 | sample_id = "sample_id", 38 | verbose = FALSE 39 | ) 40 | 41 | # Compute cell type specificity of each gene 42 | df <- cellTypeSpecificity(pb) 43 | 44 | # Violin plot of specificity scores for each cell type 45 | # Dashed line indicates genes that are equally expressed 46 | # across all cell types. For K cell types, this is 1/K 47 | plotViolin(df) 48 | } 49 | -------------------------------------------------------------------------------- /man/plotVoom-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotVoom.R 3 | \docType{methods} 4 | \name{plotVoom} 5 | \alias{plotVoom} 6 | \alias{plotVoom,dreamletProcessedData-method} 7 | \alias{plotVoom,dreamletProcessedData,dreamletProcessedData-method} 8 | \alias{plotVoom,EList-method} 9 | \alias{plotVoom,list,list-method} 10 | \title{Plot voom curves from each cell type} 11 | \usage{ 12 | plotVoom(x, ncol = 3, alpha = 0.5, ...) 13 | 14 | \S4method{plotVoom}{dreamletProcessedData}(x, ncol = 3, alpha = 0.5, assays = names(x)) 15 | 16 | \S4method{plotVoom}{EList}(x, ncol = 3, alpha = 0.5) 17 | } 18 | \arguments{ 19 | \item{x}{dreamletProcessedData} 20 | 21 | \item{ncol}{number of columns in the plot} 22 | 23 | \item{alpha}{transparency of points} 24 | 25 | \item{...}{other arguments} 26 | 27 | \item{assays}{which assays to plot} 28 | } 29 | \value{ 30 | Plot of mean-variance trend 31 | } 32 | \description{ 33 | Plot voom curves from each cell type 34 | } 35 | \examples{ 36 | library(muscat) 37 | library(SingleCellExperiment) 38 | 39 | data(example_sce) 40 | 41 | # create pseudobulk for each sample and cell cluster 42 | pb <- aggregateToPseudoBulk(example_sce, 43 | assay = "counts", 44 | cluster_id = "cluster_id", 45 | sample_id = "sample_id", 46 | verbose = FALSE 47 | ) 48 | 49 | # voom-style normalization 50 | res.proc <- processAssays(pb, ~group_id) 51 | 52 | # Show mean-variance trend from voom 53 | plotVoom(res.proc) 54 | 55 | # plot for first two cell types 56 | plotVoom(res.proc[1:2]) 57 | 58 | } 59 | -------------------------------------------------------------------------------- /man/print-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R 3 | \name{print,dreamletResult-method} 4 | \alias{print,dreamletResult-method} 5 | \alias{print,dreamletResult,dreamletResult-method} 6 | \alias{print,dreamletProcessedData-method} 7 | \alias{print,dreamletProcessedData,dreamletProcessedData-method} 8 | \title{Print object} 9 | \usage{ 10 | \S4method{print}{dreamletResult}(x, ...) 11 | 12 | \S4method{print}{dreamletProcessedData}(x, ...) 13 | } 14 | \arguments{ 15 | \item{x}{\code{dreamletProcessedData} object} 16 | 17 | \item{...}{other arguments} 18 | } 19 | \value{ 20 | print data stored in object 21 | } 22 | \description{ 23 | Print object 24 | 25 | Print object 26 | } 27 | -------------------------------------------------------------------------------- /man/removeConstantTerms.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/removeConstantTerms.R 3 | \name{removeConstantTerms} 4 | \alias{removeConstantTerms} 5 | \title{Remove constant terms from formula} 6 | \usage{ 7 | removeConstantTerms(formula, data) 8 | } 9 | \arguments{ 10 | \item{formula}{original formula} 11 | 12 | \item{data}{data.frame} 13 | } 14 | \value{ 15 | a formula, possibly with terms omitted. 16 | } 17 | \description{ 18 | Remove constant terms from formula. Also remove categorical variables with a max of one example per category 19 | } 20 | \details{ 21 | Adapted from \code{MoEClust::drop_constants} 22 | } 23 | \examples{ 24 | 25 | # Valid formula 26 | removeConstantTerms(~ group + extra, sleep) 27 | 28 | # there is no variation in 'group' in this dataset 29 | removeConstantTerms(~ group + extra, sleep[1:3, ]) 30 | 31 | } 32 | -------------------------------------------------------------------------------- /man/residuals-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/misc.R 3 | \name{residuals,dreamletResult-method} 4 | \alias{residuals,dreamletResult-method} 5 | \alias{residuals,dreamletResult,dreamletResult-method} 6 | \title{Extract residuals from \code{dreamletResult}} 7 | \usage{ 8 | \S4method{residuals}{dreamletResult}(object, y, ..., type = c("response", "pearson")) 9 | } 10 | \arguments{ 11 | \item{object}{\code{dreamletResult} object} 12 | 13 | \item{y}{\code{dreamletProcessedData} object} 14 | 15 | \item{...}{other arguments} 16 | 17 | \item{type}{compute either \code{"response"} residuals or \code{"pearson"} residuals.} 18 | } 19 | \value{ 20 | residuals from model fit 21 | } 22 | \description{ 23 | Extract residuals from \code{dreamletResult} 24 | } 25 | \details{ 26 | \code{"response"} residuals are the typical residuals returned from \code{lm()}. \code{"pearson"} residuals divides each residual value by its estimated standard error. This requires specifying \code{y} 27 | } 28 | \examples{ 29 | library(muscat) 30 | library(SingleCellExperiment) 31 | 32 | data(example_sce) 33 | 34 | # create pseudobulk for each sample and cell cluster 35 | pb <- aggregateToPseudoBulk(example_sce, 36 | assay = "counts", 37 | cluster_id = "cluster_id", 38 | sample_id = "sample_id", 39 | verbose = FALSE 40 | ) 41 | 42 | # voom-style normalization 43 | res.proc <- processAssays(pb, ~group_id) 44 | 45 | # Differential expression analysis within each assay, 46 | # evaluated on the voom normalized data 47 | res.dl <- dreamlet(res.proc, ~group_id) 48 | 49 | # extract typical residuals for each assay (i.e. cell type) 50 | # Return list with entry for each assay with for retained samples and genes 51 | resid.lst <- residuals(res.dl) 52 | 53 | # Get Pearson residuals: 54 | # typical residuals scaled by the standard deviation 55 | residPearson.lst <- residuals(res.dl, res.proc, type = "pearson") 56 | 57 | } 58 | -------------------------------------------------------------------------------- /man/seeErrors-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R, R/vpDF.R 3 | \name{seeErrors} 4 | \alias{seeErrors} 5 | \alias{seeErrors,dreamletResult-method} 6 | \alias{seeErrors,dreamletProcessedData-method} 7 | \alias{seeErrors,vpDF-method} 8 | \title{Get error text} 9 | \usage{ 10 | seeErrors(obj) 11 | 12 | \S4method{seeErrors}{dreamletResult}(obj) 13 | 14 | \S4method{seeErrors}{dreamletProcessedData}(obj) 15 | 16 | \S4method{seeErrors}{vpDF}(obj) 17 | } 18 | \arguments{ 19 | \item{obj}{A \code{dreamletResult} object} 20 | } 21 | \value{ 22 | \code{tibble} storing error text 23 | } 24 | \description{ 25 | Get error text 26 | } 27 | \examples{ 28 | library(muscat) 29 | library(SingleCellExperiment) 30 | 31 | data(example_sce) 32 | 33 | # create pseudobulk for each sample and cell cluster 34 | pb <- aggregateToPseudoBulk(example_sce, 35 | assay = "counts", 36 | cluster_id = "cluster_id", 37 | sample_id = "sample_id", 38 | verbose = FALSE 39 | ) 40 | 41 | # voom-style normalization 42 | res.proc <- processAssays(pb, ~group_id) 43 | 44 | # Differential expression analysis within each assay, 45 | # evaluated on the voom normalized data 46 | res.dl <- dreamlet(res.proc, ~group_id) 47 | 48 | # show errors 49 | # but none are reported 50 | res.err = seeErrors(res.dl) 51 | 52 | } 53 | -------------------------------------------------------------------------------- /man/show-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R, R/dreamletProcessedData.R 3 | \name{show,dreamletResult-method} 4 | \alias{show,dreamletResult-method} 5 | \alias{show,dreamletResult,dreamletResult-method} 6 | \alias{show,dreamletProcessedData-method} 7 | \alias{show,dreamletProcessedData,dreamletProcessedData-method} 8 | \title{Show object} 9 | \usage{ 10 | \S4method{show}{dreamletResult}(object) 11 | 12 | \S4method{show}{dreamletProcessedData}(object) 13 | } 14 | \arguments{ 15 | \item{object}{\code{dreamletProcessedData} object} 16 | } 17 | \value{ 18 | show data stored in object 19 | } 20 | \description{ 21 | Show object 22 | 23 | Show object 24 | } 25 | -------------------------------------------------------------------------------- /man/sortCols-method.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/vpDF.R 3 | \name{sortCols,vpDF-method} 4 | \alias{sortCols,vpDF-method} 5 | \title{Sort variance partition statistics} 6 | \usage{ 7 | \S4method{sortCols}{vpDF}( 8 | x, 9 | FUN = sum, 10 | decreasing = TRUE, 11 | last = c("Residuals", "Measurement.error"), 12 | ... 13 | ) 14 | } 15 | \arguments{ 16 | \item{x}{object returned by \code{fitVarPart()}} 17 | 18 | \item{FUN}{function giving summary statistic to sort by. Defaults to sum} 19 | 20 | \item{decreasing}{logical. Should the sorting be increasing or decreasing?} 21 | 22 | \item{last}{columns to be placed on the right, regardless of values in these columns} 23 | 24 | \item{...}{other arguments to sort} 25 | } 26 | \value{ 27 | \code{data.frame} with columns sorted by mean value, with Residuals in last column 28 | } 29 | \description{ 30 | Sort variance partition statistics 31 | } 32 | \examples{ 33 | library(muscat) 34 | library(SingleCellExperiment) 35 | 36 | data(example_sce) 37 | 38 | # create pseudobulk for each sample and cell cluster 39 | pb <- aggregateToPseudoBulk(example_sce, 40 | assay = "counts", 41 | cluster_id = "cluster_id", 42 | sample_id = "sample_id", 43 | verbose = FALSE 44 | ) 45 | 46 | # voom-style normalization 47 | res.proc <- processAssays(pb, ~group_id) 48 | 49 | # variance partitioning analysis 50 | vp <- fitVarPart(res.proc, ~group_id) 51 | 52 | # Summarize variance fractions genome-wide for each cell type 53 | plotVarPart(sortCols(vp)) 54 | 55 | } 56 | -------------------------------------------------------------------------------- /man/stackAssays.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/stackAssays.R 3 | \name{stackAssays} 4 | \alias{stackAssays} 5 | \title{Stack assays from pseudobulk} 6 | \usage{ 7 | stackAssays(pb, assays = assayNames(pb)) 8 | } 9 | \arguments{ 10 | \item{pb}{pseudobulk \code{SingleCellExperiment} from \code{aggregateToPseudoBulk()}} 11 | 12 | \item{assays}{array of assay names to include in analysis. Defaults to \code{assayNames(pb)}} 13 | } 14 | \value{ 15 | pseudobulk \code{SingleCellExperiment} cbind'ing expression values and rbind'ing colData. The column \code{stackedAssay} in \code{colData()} stores the assay information of the stacked data. 16 | } 17 | \description{ 18 | Stack assays from pseudobulk to perform analysis across cell types 19 | } 20 | \examples{ 21 | library(muscat) 22 | library(SingleCellExperiment) 23 | 24 | data(example_sce) 25 | 26 | # create pseudobulk for each sample and cell cluster 27 | pb <- aggregateToPseudoBulk(example_sce, 28 | assay = "counts", 29 | cluster_id = "cluster_id", 30 | sample_id = "sample_id", 31 | verbose = FALSE 32 | ) 33 | 34 | # Stack assays for joint analysis 35 | pb.stack <- stackAssays(pb) 36 | 37 | # voom-style normalization 38 | # assay (i.e. cell type) can now be included as a covariate 39 | res.proc <- processAssays(pb.stack, ~ group_id + stackedAssay) 40 | 41 | # variance partitioning analysis 42 | vp <- fitVarPart(res.proc, ~ group_id + stackedAssay) 43 | 44 | # Summarize variance fractions across cell types 45 | plotVarPart(sortCols(vp)) 46 | 47 | # Interaction analysis allows group_id 48 | # to have a different effect within each stacedAssay 49 | vp2 <- fitVarPart(res.proc, ~ group_id * stackedAssay) 50 | 51 | plotVarPart(sortCols(vp2)) 52 | 53 | # Interaction model using random effects 54 | form <- ~ (1 | group_id) + (1 | stackedAssay) + (1 | group_id:stackedAssay) 55 | # 56 | } 57 | -------------------------------------------------------------------------------- /man/tabToMatrix.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/mash.R 3 | \name{tabToMatrix} 4 | \alias{tabToMatrix} 5 | \title{Convert results table to matrix} 6 | \usage{ 7 | tabToMatrix(tab, col, rn = "ID", cn = "assay") 8 | } 9 | \arguments{ 10 | \item{tab}{results table from \code{topTable()}} 11 | 12 | \item{col}{which column to extract} 13 | 14 | \item{rn}{column id storing rownames} 15 | 16 | \item{cn}{column id storing colnames} 17 | } 18 | \value{ 19 | matrix storing values of column \code{col} in rows defind by \code{rn} and columns defined by \code{cn} 20 | } 21 | \description{ 22 | Convert results table to matrix 23 | } 24 | -------------------------------------------------------------------------------- /man/topTable-methods.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/dreamlet.R 3 | \name{topTable,dreamletResult-method} 4 | \alias{topTable,dreamletResult-method} 5 | \alias{topTable,dreamletResult,dreamletResult-method} 6 | \title{Table of Top Genes from dreamlet fit} 7 | \usage{ 8 | \S4method{topTable}{dreamletResult}( 9 | fit, 10 | coef = NULL, 11 | number = 10, 12 | genelist = NULL, 13 | adjust.method = "BH", 14 | sort.by = "P", 15 | resort.by = NULL, 16 | p.value = 1, 17 | lfc = 0, 18 | confint = FALSE 19 | ) 20 | } 21 | \arguments{ 22 | \item{fit}{dreamletResult object} 23 | 24 | \item{coef}{coef} 25 | 26 | \item{number}{number} 27 | 28 | \item{genelist}{genelist} 29 | 30 | \item{adjust.method}{adjust.method} 31 | 32 | \item{sort.by}{sort.by} 33 | 34 | \item{resort.by}{resort.by} 35 | 36 | \item{p.value}{p.value} 37 | 38 | \item{lfc}{lfc} 39 | 40 | \item{confint}{confint} 41 | } 42 | \value{ 43 | \code{data.frame} storing hypothesis test for each gene and cell type 44 | } 45 | \description{ 46 | Extract a table of the top-ranked genes from a dreamlet fit. 47 | } 48 | \examples{ 49 | library(muscat) 50 | library(SingleCellExperiment) 51 | 52 | data(example_sce) 53 | 54 | # create pseudobulk for each sample and cell cluster 55 | pb <- aggregateToPseudoBulk(example_sce, 56 | assay = "counts", 57 | cluster_id = "cluster_id", 58 | sample_id = "sample_id", 59 | verbose = FALSE 60 | ) 61 | 62 | # voom-style normalization 63 | res.proc <- processAssays(pb, ~group_id) 64 | 65 | # Differential expression analysis within each assay, 66 | # evaluated on the voom normalized data 67 | res.dl <- dreamlet(res.proc, ~group_id) 68 | 69 | # show coefficients estimated for each cell type 70 | coefNames(res.dl) 71 | 72 | # extract results using limma-style syntax 73 | # combines all cell types together 74 | # adj.P.Val gives study-wide FDR 75 | topTable(res.dl, coef = "group_idstim", number = 3) 76 | 77 | } 78 | \seealso{ 79 | \code{limma::topTable()}, \code{variancePartition::topTable()} 80 | } 81 | -------------------------------------------------------------------------------- /man/vpDF-class.Rd: -------------------------------------------------------------------------------- 1 | % Generated by roxygen2: do not edit by hand 2 | % Please edit documentation in R/plotPercentBars.R, R/vpDF.R 3 | \docType{class} 4 | \name{vpDF-class} 5 | \alias{vpDF-class} 6 | \title{Class vpDF} 7 | \value{ 8 | none 9 | 10 | none 11 | } 12 | \description{ 13 | Class \code{vpDF} stores results for each gene for each assay 14 | } 15 | -------------------------------------------------------------------------------- /src/Makevars: -------------------------------------------------------------------------------- 1 | ## With Rcpp 0.11.0 and later, we no longer need to set PKG_LIBS as there is 2 | ## no user-facing library. The include path to headers is already set by R. 3 | #PKG_LIBS = 4 | 5 | ## With R 3.1.0 or later, you can uncomment the following line to tell R to 6 | ## enable compilation with C++11 (or even C++14) where available 7 | #CXX_STD = CXX11 8 | -------------------------------------------------------------------------------- /src/Makevars.win: -------------------------------------------------------------------------------- 1 | ## With Rcpp 0.11.0 and later, we no longer need to set PKG_LIBS as there is 2 | ## no user-facing library. The include path to headers is already set by R. 3 | #PKG_LIBS = 4 | 5 | ## With R 3.1.0 or later, you can uncomment the following line to tell R to 6 | ## enable compilation with C++11 (or even C++14) where available 7 | #CXX_STD = CXX11 8 | -------------------------------------------------------------------------------- /src/RcppExports.cpp: -------------------------------------------------------------------------------- 1 | // Generated by using Rcpp::compileAttributes() -> do not edit by hand 2 | // Generator token: 10BE3573-1514-4C36-9D1C-5A225CD40393 3 | 4 | #include 5 | 6 | using namespace Rcpp; 7 | 8 | #ifdef RCPP_USE_GLOBAL_ROSTREAM 9 | Rcpp::Rostream& Rcpp::Rcout = Rcpp::Rcpp_cout_get(); 10 | Rcpp::Rostream& Rcpp::Rcerr = Rcpp::Rcpp_cerr_get(); 11 | #endif 12 | 13 | // colsum_beachmat_matrix 14 | NumericMatrix colsum_beachmat_matrix(RObject mat, IntegerVector groupHsh, IntegerVector grpUnq); 15 | RcppExport SEXP _dreamlet_colsum_beachmat_matrix(SEXP matSEXP, SEXP groupHshSEXP, SEXP grpUnqSEXP) { 16 | BEGIN_RCPP 17 | Rcpp::RObject rcpp_result_gen; 18 | Rcpp::traits::input_parameter< RObject >::type mat(matSEXP); 19 | Rcpp::traits::input_parameter< IntegerVector >::type groupHsh(groupHshSEXP); 20 | Rcpp::traits::input_parameter< IntegerVector >::type grpUnq(grpUnqSEXP); 21 | rcpp_result_gen = Rcpp::wrap(colsum_beachmat_matrix(mat, groupHsh, grpUnq)); 22 | return rcpp_result_gen; 23 | END_RCPP 24 | } 25 | // colsum_beachmat_sparseMatrix 26 | NumericMatrix colsum_beachmat_sparseMatrix(RObject mat, IntegerVector groupHsh, IntegerVector grpUnq); 27 | RcppExport SEXP _dreamlet_colsum_beachmat_sparseMatrix(SEXP matSEXP, SEXP groupHshSEXP, SEXP grpUnqSEXP) { 28 | BEGIN_RCPP 29 | Rcpp::RObject rcpp_result_gen; 30 | Rcpp::traits::input_parameter< RObject >::type mat(matSEXP); 31 | Rcpp::traits::input_parameter< IntegerVector >::type groupHsh(groupHshSEXP); 32 | Rcpp::traits::input_parameter< IntegerVector >::type grpUnq(grpUnqSEXP); 33 | rcpp_result_gen = Rcpp::wrap(colsum_beachmat_sparseMatrix(mat, groupHsh, grpUnq)); 34 | return rcpp_result_gen; 35 | END_RCPP 36 | } 37 | 38 | static const R_CallMethodDef CallEntries[] = { 39 | {"_dreamlet_colsum_beachmat_matrix", (DL_FUNC) &_dreamlet_colsum_beachmat_matrix, 3}, 40 | {"_dreamlet_colsum_beachmat_sparseMatrix", (DL_FUNC) &_dreamlet_colsum_beachmat_sparseMatrix, 3}, 41 | {NULL, NULL, 0} 42 | }; 43 | 44 | RcppExport void R_init_dreamlet(DllInfo *dll) { 45 | R_registerRoutines(dll, NULL, CallEntries, NULL, NULL); 46 | R_useDynamicSymbols(dll, FALSE); 47 | } 48 | -------------------------------------------------------------------------------- /src/colsum_beachmat.cpp: -------------------------------------------------------------------------------- 1 | #include "beachmat3/beachmat.h" 2 | #include 3 | #include 4 | #include 5 | #include 6 | 7 | #include "Rcpp.h" 8 | 9 | using namespace Rcpp; 10 | 11 | // Not necessary in a package context: 12 | // [[Rcpp::depends(beachmat)]] 13 | 14 | // [[Rcpp::export(rng=false)]] 15 | NumericMatrix colsum_beachmat_matrix(RObject mat, IntegerVector groupHsh, IntegerVector grpUnq) { 16 | 17 | // initialize beachmat interface 18 | auto ptr = beachmat::read_lin_block(mat); 19 | std::vector workspace(ptr->get_nrow()); 20 | 21 | // initialize output matrix 22 | NumericMatrix output(ptr->get_nrow(), grpUnq.size()); 23 | 24 | // for each column i 25 | for (size_t i = 0; i < ptr->get_ncol(); ++i) { 26 | 27 | // pointer to column i 28 | auto colptr = ptr->get_col(i, workspace.data()); 29 | 30 | // implicit version: 31 | /// initialize NumericVector with values, then assign to matrix 32 | NumericMatrix::Column col = output(_, groupHsh(i)-1); 33 | 34 | col = col + NumericVector::import(colptr, colptr + ptr->get_nrow()); 35 | } 36 | 37 | return output; 38 | } 39 | 40 | 41 | // [[Rcpp::export(rng=false)]] 42 | NumericMatrix colsum_beachmat_sparseMatrix(RObject mat, IntegerVector groupHsh, IntegerVector grpUnq) { 43 | 44 | // initialize beachmat interface 45 | auto ptr = beachmat::read_lin_sparse_block(mat); 46 | std::vector workspace_x(ptr->get_nrow()); 47 | std::vector workspace_i(ptr->get_nrow()); 48 | 49 | // initialize output matrix 50 | NumericMatrix output(ptr->get_nrow(), grpUnq.size()); 51 | 52 | // for each column i 53 | for (size_t i = 0; i < ptr->get_ncol(); ++i) { 54 | 55 | auto indices = ptr->get_col(i, workspace_x.data(), workspace_i.data()); 56 | 57 | auto xptr = indices.x; 58 | auto iptr = indices.i; 59 | auto nnzero = indices.n; 60 | 61 | // *manual* version with explicit loop 62 | // assign values for each row r 63 | for(size_t r = 0; r < nnzero; ++r) { 64 | 65 | // subtract 1 to convert from 1-based in R to 0-based in C++ 66 | output(iptr[r], groupHsh(i)-1) += xptr[r]; 67 | } 68 | } 69 | 70 | return output; 71 | } 72 | 73 | 74 | 75 | 76 | 77 | -------------------------------------------------------------------------------- /tests/runTests.R: -------------------------------------------------------------------------------- 1 | library(Matrix) 2 | library(dreamlet) 3 | library(DelayedArray) 4 | library(edgeR) 5 | library(muscat) 6 | library(RUnit) 7 | 8 | BiocGenerics:::testPackage("dreamlet") 9 | -------------------------------------------------------------------------------- /vignettes/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/vignettes/.DS_Store -------------------------------------------------------------------------------- /vignettes/figure/forest-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/vignettes/figure/forest-1.png -------------------------------------------------------------------------------- /vignettes/figure/volcano-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/vignettes/figure/volcano-1.png -------------------------------------------------------------------------------- /vignettes/figure/zenith-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/GabrielHoffman/dreamlet/445c5bf18bc7f6cfb291ea5be4807555fbe9526d/vignettes/figure/zenith-1.png -------------------------------------------------------------------------------- /vignettes/old_txt.txt: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /vignettes/run_vigs.txt: -------------------------------------------------------------------------------- 1 | 2 | March 30, 2023 3 | 4 | # These are precompiled vignettes to dramatically educe build time on Bioconductor machines 5 | 6 | knitr::knit("cell_covs.Rmd.orig", output="cell_covs.Rmd") 7 | knitr::knit("dreamlet.Rmd.orig", output="dreamlet.Rmd") 8 | knitr::knit("mashr.Rmd.orig", output="mashr.Rmd") 9 | knitr::knit("non_lin_eff.Rmd.orig", output="non_lin_eff.Rmd") 10 | 11 | ~/prog/R-alpha/bin/R CMD build --keep-empty-dirs --no-resave-data dreamlet --------------------------------------------------------------------------------