缘由

生信之路,道阻且长,记录经验,但渡有缘人。

碎碎念

及时当勉励,岁月不饶人 ——陶渊明

代码

library(data.table)
library(purrr)
library(tidyverse)
  1. 如何统计蛋白组中肽段的漏切位点个数?
data.table::fread(file) %>%
	mutate(Missed_cleavages=str_count(sub(Stripped.Sequence, pattern="[KR]$", replacement=""), pattern="[KR]"))
  1. 提取eggMapper的COG结果,并连接在一起;
df$eggNOG_OGs %>% str_extract_all("COG\\d+") %>% 
map_chr(.,~paste0(., collapse = ",")) 
  1. 如何将字符拆分为固定的列?
text <- c("apple-orange", "banana-mango-kiwi", "grape")
result <- str_split_fixed(text, "-", 3)
 
n=3 指定了最多拆分为3列。若字符串的分割部分少于3列(如 "apple-orange"),则多出的部分用 "" 填充。若字符串的分割部分多于3列(如 "banana-mango-kiwi"),则只保留前3列
  1. 如何使用管道符号的方式将所有的0 替换为NA?
quant_data <- data.frame(
	A = c(1, 0, 3, 4, 0),
	B = c(0, 5, 0, 7, 8),
	C = c(9, 0, 0, 12, 15)
)
quant_data %>%
	mutate(across(everything(), ~ replace(., . == 0, NA)))
 
  1. 如何选择pvalue值前5的上调和下调的gene?
mark_data <- data %>%group_by(regulation) %>% top_n(5, -pvalue) %>% ungroup() %>% filter(regulation %in% c("up","down"))