R语言简单小技巧

分组求均值

exprSet_symbol1 <- aggregate(x = exprSet[,3:ncol(exprSet)],
                            by = list(exprSet$GENE),
                            FUN = mean)
data%>%
  group_by(group)%>%
  summarise(A=mean(A),B=mean(B))

分割字符串

colsplit ###将字符串分为若干列
###Sgene:ENSG00066666143
str_replace_all(rownames(data), ":.*", "") ### 能够将字符串:后面全部删掉

旋转九十度

q + theme(axis.text.x=element_text(angle=90, hjust=1))

删掉下划线的正则

sub("^.*?_", "", test)

^ 是一个特殊字符,表示行的开始。在这个上下文中,它指的是字符串的开始。

. 是一个特殊字符,表示任何字符(除了换行符)。

* 是一个数量词,表示前面的字符(在这个例子中是.)可以出现零次或多次。

? 是一个特殊字符,当它跟在一个数量词(在这个例子中是*)后面时,表示非贪婪匹配。也就是说,它会尽量少地匹配字符。如果没有?,.*会尽可能多地匹配字符,这被称为贪婪匹配。

_ 表示下划线字符。

所以,这个正则表达式的意思是:匹配字符串开始的任意数量的任意字符,直到第一个下划线。
# 删除第一个下划线及其后面的所有内容
new_strings <- sub("_.*$", "", test)

_ 表示下划线字符。

. 是一个特殊字符,表示任何字符(除了换行符)。

* 是一个数量词,表示前面的字符(在这个例子中是.)可以出现零次或多次。

$ 是一个特殊字符,表示行的结束。在这个上下文中,它指的是字符串的结束。

自动保存pdf大小

adjust_plot_width_height <- function(plot) {
  g <- ggplotGrob(plot)
  width <- sum(g$widths)
  height <- sum(g$heights)
  return(c(width, height))
}

  size2 <- adjust_plot_width_height(gg2)
  pdf(file.path(output_dir, paste0("Down", source, ".pdf")), width = size2[1], height = size2[2])
  print(gg2)
  dev.off()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容