今天小编就跟大家分享一个专业处理数据框的函数dplyr。然后基于这个R包,我们用6种不同的方法来实现。...("dplyr") #加载dplyr包 library(dplyr) 我们先来看看直接head的效果 #直接head,结果不对 GO_result %>% group_by(ONTOLOGY) %>...do来执行 #通过do来执行 r1=GO_result %>% group_by(ONTOLOGY) %>% do(head(., n = 5)) r1 可以看到15条结果,三类都有 方法二、使用top_n...#使用top_n r2=GO_result %>% group_by(ONTOLOGY) %>% top_n(n=-5,wt=p.adjust) r2 这里可以使用top_n这个函数来输出每个组的前五行...如果GO富集结果默认没有按p.adjust排过序,那么就需要选择带有排序的方法,如top_n和slice_min。
Loading dataset Choosing columns select rename Choosing rows filter between slice sample_n top_n distinct...mentioned are kept flights %>% rename(tail = tailnum) Choosing rows: filter, between, slice, sample_n, top_n...sample_n(3) # keep three rows from each group with the top dep_delay flights %>% group_by(month, day) %>% top_n...(3, dep_delay) # also sort by dep_delay within each group flights %>% group_by(month, day) %>% top_n...= Inf, dplyr.print_min = 6) # reset options (or just close R) options(dplyr.width = NULL, dplyr.print_min
plyr包的特点 其基础函数有以下特点: 第一个参数df 返回df 没有数据更改in place 正是因为有这些特点,才可以使用%>%操作符,方便逻辑式编程。...载入数据 library(plyr) library(dplyr) # load packages suppressMessages(library(dplyr)) install.packages(...to select DepTime, ArrTime, and FlightNum columns flights[, c("DepTime", "ArrTime", "FlightNum")] # dplyr...desc(DepDelay)) % arrange(UniqueCarrier, desc(DepDelay)) # rewrite more simply with the `top_n...function flights %>% group_by(UniqueCarrier) %>% select(Month, DayofMonth, DepDelay) %>% top_n
install_github('satijalab/seurat-data') library(SeuratData) library(ggplot2) library(patchwork) library(dplyr...save(sce.markers,file = 'sce.markers.all_10_celltype.Rdata') } DT::datatable(sce.markers) library(dplyr...) # 不同seurat版本的 avg_logFC 不一样 top5 % group_by(cluster) %>% top_n(5, avg_logFC) DoHeatmap...(sce,top5$gene,size=3) 普通的热图或者气泡图可视化 DT::datatable(sce.markers) library(dplyr) # 不同seurat版本的 avg_logFC...不一样 top5 % group_by(cluster) %>% top_n(5, avg_logFC) DoHeatmap(sce,top5$gene,size=
install.packages('Seurat') install.packages('dplyr') install.packages('tidyverse') install.packages('...加载包 library(Seurat) library(dplyr) library(tidyverse) library(patchwork) 3....test.use="……", only.pos = True,logfc.threshold = "……") object:harmony整合后的对象; test.use:检验方法; only.pos:仅返回表达倍数大于...%>% top_n(n = 10, wt = avg_log2FC) 输出文件: 5.3 手动查找maker基因进行注释 我们可以通过下面的数据库进行查找maker基因进行细胞注释。...object,oldname = newname,……) scRNA1 = RenameIdents(scRNA_harmony,"0" = "Stem cell","1" = "Osteoclast") 返回结果
min.pct = 0.25, thresh.use = 0.25) library(dplyr...) top3 % group_by(cluster) %>% top_n(3, avg_log2FC) DoHeatmap(sce ,top3$gene,size=3...) 会得到如下所示的热图: 默认热图 如果是针对上面的FindAllMarkers定位到的各个单细胞亚群各自特异性基因, library(dplyr) top3 % group_by(cluster) %>% top_n(3, avg_log2FC) sce.all <- ScaleData(sce,features = top3$gene) library...height = 42) 效果如下所示: 改进的热图 如果没有使用FindAllMarkers函数,而是 速度上吊打FindAllMarkers的单细胞亚群特异性高表达基因查询算法 : library(dplyr
linbo的笔记投稿 依旧seurat 官方教程为例 rm(list = ls()) library(Seurat) library(ggplot2) library(patchwork) library(dplyr...min.pct = 0.25, thresh.use = 0.25) library(dplyr...健明老师视频中代码为avg_logFC,和我的seurat版本不一样,检查发现我对应的列名是avg_log2FC top5 % group_by(cluster) %>% top_n
筛选 contains num_range starts_with ends_with one_of matches 行筛选 slice, filter, sample_n, sample_frac, top_n..., distinct 列筛选 select 排序 arrange 行列增加/更新 基本的数学和比较逻辑运算符 + - * / > < == 偏移 dplyr:: lag lead 聚合 dplyr::...row_number 其他 dplyr:: between case_when coalesce if_else na_if pmax pmin recode recode_factor mutate..., transmute mutate_ add_row add_column rename rownames_to_column, column_to_rowname 向量化函数 汇总 计数 dplyr...is.na()) 位置 mean, meadian 逻辑值 mean, sum 位置 dplyr:: first last nth 排序 quantile min max 分布 IQR mad sd var
sce.markers) pro='RNA_snn_res.0.2' write.csv(sce.markers,file=paste0(pro,'_sce.markers.csv')) library(dplyr...) top10 % group_by(cluster) %>% top_n(10, avg_log2FC) DoHeatmap(sce,top10$gene,size...=3) ggsave(filename=paste0(pro,'_sce.markers_heatmap.pdf')) library(dplyr) top3 %...group_by(cluster) %>% top_n(3, avg_log2FC) DoHeatmap(sce,top3$gene,size=3) ggsave(paste0(pro,'DoHeatmap_check_top3...新版本尤其实现多组数据间自由比较,如不同条件、处理等,并内置系列流行辅助工具,如数据处理包dplyr、可视化包ggplot2等,方便分析人员用熟悉的方式自由探索,实现数据高效解读。
reference_cells=1000, cores=8) #根据pseudo_R2方法对标记基因进行排序,取出每个cluster排名最高的基因 library(dplyr...top_specific_markers % filter(fraction_expressing >= 0.10) %>% group_by(cell_group) %>% top_n...top_specific_markers % filter(fraction_expressing >= 0.10) %>% group_by(cell_group) %>% top_n...colData(cds)$assigned_cell_type <- dplyr::recode(colData(cds)$assigned_cell_type,
fraction_expressing >= 0.10) %>% group_by(cell_group) %>% top_n...fraction_expressing >= 0.10) %>% group_by(cell_group) %>% top_n...colData(cds)$assigned_cell_type <- dplyr::recode(colData(cds)$assigned_cell_type,...as.character(clusters(cds_subset)[colnames(cds_subset)]) colData(cds_subset)$assigned_cell_type = 0.5) %>% group_by(cell_group) %>% top_n
ggplot2绘制 library(dplyr) library(ggplot2) library(ggcharts) data("biomedicalrevenue") biomedicalrevenue...%>% filter(year %in% c(2012, 2015, 2018)) %>% group_by(year) %>% top_n(10, revenue) %>% ungroup...%>% filter(year %in% c(2012, 2015, 2018)) %>% bar_chart(x = company, y = revenue, facet = year, top_n
在这个示例中: 定义函数:my_function 函数根据传入的参数返回不同的状态码。 使用 return 命令:函数内部使用 return 返回状态码。 捕获返回状态:调用函数后,通过 $?...变量获取返回状态。 检查返回状态:根据返回状态执行不同的逻辑,而不会影响脚本的继续执行。...三、使用 Heredoc 处理多行文本 在 Shell 脚本中,Heredoc("Here Document" 的缩写)是一种方便的方法,用于将多行字符串传递给命令或赋值给变量。...EOF 应用场景 Heredoc 常用于: 向命令传递多行文本,例如 cat、grep、sed 等。 生成多行配置文件或脚本内容。 提高脚本的可读性和维护性,避免使用多个 echo 命令。...总结 在 Shell 脚本中,正确处理函数返回状态、设计和使用 main 函数、利用 Heredoc 处理多行文本以及获取脚本所在位置是编写高质量脚本的重要技巧。
regulons based on interactions with confidence level A, B and C regulon % dplyr...'_sce.markers.Rdata')) 虽然这个pbmc3k数据集里面只有约 三千个细胞,我们为了加快速度,还是使用了4个线程,大概40秒就可以出结果, 然后尝试热图可视化: library(dplyr...sce.markers$fc = sce.markers$pct.1 - sce.markers$pct.2 top10 % group_by(cluster) %>% top_n...highly_variable_tfs % group_by(tf) %>% mutate(var = var(avg)) %>% ungroup() %>% top_n...summarized_viper_scores_df % semi_join(highly_variable_tfs, by = "tf") %>% dplyr
= "stable"] deg1 <- deg[cg,] library(dplyr) top_up % top_n(n=30,wt=logFC) %>% rownames()...top_down % top_n(n=-30,wt=logFC) %>% rownames() top_all <- c(top_up,top_down) n1 <- n[top_all
ElbowPlot(pbmc) p1 <- DimPlot(pbmc, reduction = "umap",label = T)+NoLegend();p1 图片 图片 4.makergene library(dplyr...logfc.threshold = 0.25) save(pbmc.markers,file = f) } load(f) mks = pbmc.markers %>% group_by(cluster) %>% top_n
amazonaws.com/10x.files/samples/cell/pbmc3k/pbmc3k_filtered_gene_bc_matrices.tar.gzrm(list = ls())library(dplyr...cluster的maker基因pbmc.markers % group_by(cluster) %>% top_n..."CD14", "FCER1A", "FCGR3A", "LYZ", "PPBP", "CD8A"))top10 % group_by(cluster) %>% top_n
replace = T) df% count(word,sentiment,sort=T)%>% group_by(sentiment)%>% top_n...image.png 第二幅图 df1% count(track_title,sentiment,sort = T)%>% group_by(sentiment)%>% top_n...image.png 重复过程中遇到很多dplyr包中的函数,都是第一次使用,抽时间在回过头来看这些函数的用法!
generally rare.dea_res % dplyr...degs % dplyr::top_n(n = 10, morans_I) %>% dplyr...ward.D2", fontsize = 6)ps("heatmap.pdf", w = 5, h = 16)plot_cells(cds, genes = gene_module_df %>% dplyr
org.Hs.eg.db) library(ggplot2) library(Seurat) library(pheatmap) library(reshape2) library(tidyr) library(dplyr...='nochange',] up_top2 <- top_n(dat_sig[dat_sig$change=='up',],3,avg_log2FC)[,'gene'] down_top2 <-...top_n(dat_sig[dat_sig$change=='down',],-3,avg_log2FC)[,'gene'] label_gene <- c(up_top2,down_top2)...,label=gene),size=3)+ theme(axis.text.x = element_text(angle = 90,hjust = 1)) 画出基本的柱子 up_bar <- top_n...(group_by(df2,cell_type),1,avg_log2FC) down_bar <- top_n(group_by(df2,cell_type),-1,avg_log2FC) bar_df
领取专属 10元无门槛券
手把手带您无忧上云