::opts_chunk$set(echo = TRUE,message=F,warning=F) R Markdown head(iris) plot(iris$Sepal.Length) 引用自生信技能树
---title: "生信技能树学习笔记"引用自生信技能树author: "天空"date: "2023-01-02"output: html_document---一、函数和R包1. 当一个代码需要复制粘贴三次,就应该写成函数或使用循环jimmy <- function(i){ plot(iris[,i],col=iris[,5])}jimmy(1)jimmy(2)jimmy(3)jimmy(4) mirrors.tuna.tsinghua.edu.cn/bioconductor/ # 中科大镜像# http://mirrors.ustc.edu.cn/CRAN/# http://mirrors.ustc.edu.cn/bioc/4.
不如用函数效率高可以用函数代替复制粘贴jimmy <- function(i){ plot(iris[,i],col=iris[,5]) } jimmy(1) jimmy(2) jimmy(3) jimmy(4)
plot(iris[,1],col = iris[,5])plot(iris[,2],col = iris[,5])plot(iris[,3],col = iris[,5])plot(iris[,4], 当一个代码需要复制粘贴三次,就应该写成函数或使用循环jimmy <- function(i){ plot(iris[,i],col=iris[,5])}jimmy(1)jimmy(2)jimmy(3)jimmy(4)
Esc退出进入命令模式 : #进入行末模式 Esc退出进入命令模式 wq #在行末模式下,输入wq(退出保存) vimtutor zh_CN#查看中文帮助文档 3 生信常见格式 #第2行到第4行 2,$ #第2行到最后一行 2~3 #第2行开始,每隔3行取一行 2,+4#从第2行到2+4行 /pattern/ #匹配上pattern的行输出 [i] #取反'2 !' #官网安装包地址 wget -c https://mirrors.bfsu.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh #生信技能树安装包软链接地址 info -e conda env list # 每次运行前,激活创建的小环境rna conda activate rna # 退出小环境 conda deactivate 在小环境rna中安装生信软件 # 创建R4环境 conda create -y -n R4 python=3.8 # 激活R4环境 conda activate R4 # (可选步骤:在R4里安装mamba) # conda install
[]中括号里面的可以是逻辑值判断,可以是具体的值(即下标),可以是函数,可以是向量
R Markdownknitr::knit("")转换为md文件is.numeric("A") ## [1] FALSE##是否为数值型数据,返回值为TRUE或FALSEas.numeric("4")# # [1] 4第一讲:认识R" > "在R语言中是命令提示符()前面的单词是函数getwd()获取绝对路径路径补充文件在桌面上,不在工作目录下,怎样读取绝对路径,换了电脑就读不成功x1 = read.csv =2. is族函数is.numeric("A") ## [1] FALSE##是否为数值型数据,返回值为TRUE或FALSE3. as族函数实现数据类型之间的转换as.numeric("4")## [1 ] 44## [1] 4##将其他数据转换成数值型数据4. 4.4 利用循环补齐简化代码(1)等位运算(2)向量长度不相等以长的为主paste0("student",seq(2,5,2))## [1] "student2" "student4"paste0(rep
title=sample$Titletitle## [1] "SS2_15_0048_A1" "SS2_15_0048_A2" "SS2_15_0048_A3" "SS2_15_0048_A4" _A23" "SS2_15_0048_A24"## [25] "SS2_15_0048_B1" "SS2_15_0048_B2" "SS2_15_0048_B3" "SS2_15_0048_B4" _B23" "SS2_15_0048_B24"## [49] "SS2_15_0048_C1" "SS2_15_0048_C2" "SS2_15_0048_C3" "SS2_15_0048_C4" ggplot(merge,aes(x=MBases)) + geom_density(fill="#4D9DDA", color="#4D9DDA", alpha=0.8)+ facet_grid (plate ~ .) p4图片图片#13.使用ggpubr把上面的图进行重新绘制。
后起之秀奔涌而至,欢迎大家在《生信技能树》的舞台分享自己的心得体会! ssGSEA GSEA分析,jimmy老师在《生信技能树》公众号多次讲解: GSEA分析一文就够(单机版+R语言版) GSEA的统计学原理试讲 GSVA或者GSEA各种算法都是可以自定义基因集的 但实际上 :4]##check data X[1:4,1:4] dim(X) dim(Y) X <- X[order(rownames(X)),]###行名字母排序 Y <- Y[order(rownames( :4] X[1:4,1:4] boxplot(X[,1:4]) save(X,Y,file = 'input.Rdata') 第一步就是取交集并将mrna矩阵zscore化 step2. 核心算法 rm(list = ls()) options(stringsAsFactors = F) load(file = 'input.Rdata') Y[1:4,1:4] X[1:4,1:4] dim
ivk_sa=1024320u 4.R包 biomart转换 hsa2mus_all <- getLDS(attributes = c("hgnc_symbol"), filters
keep_all 保留全部列3. mutate,数据框新增一列mutate(test, new = Sepal.Length * Sepal.Width) #没有赋值就没有发生过test = mutate()4. samples, "tumor") # 检测样本名中是否有tumorifelse(t1, "tumor', "normal") #如果样本名中包含tumor则输出tumor,反之则输出normaldata[, 4]
## 4 4 q.4 TRUE 5 ## 5 5 q.5 TRUE 6 ## 6 6 q.6 TRUE 7 ## 7 7 q.7 TRUE 8 ## 8 8 ## 3 3 q.3 FALSE 4 5 ## 4 4 q.4 TRUE 5 6 ## 5 5 q.5 TRUE 6 7 ## 6 6 q.6 TRUE 7 3 q.3 FALSE 4 5 6 ## 4 4 q.4 TRUE 5 6 7 ## 5 5 q.5 TRUE 6 7 8 ## 6 6 q.6 TRUE )] m6 ## d f ## 1 2 4 ## 2 3 5 ## 3 4 6 ## 4 5 7 ## 5 6 8 ## 6 7 9 ## 7 8 10 (参考B站生信小技巧获取runinfo table) SraRunTable <- read.table("http://www.bio-info-trainee.com/tmp/5years/SraRunTable.txt
---title: "生信技能树学习笔记"引用自生信技能树author: "天空"date: "2023-01-02"output: html_document---一、文件读写1. # V1## 1 id## 2 66e33592-2e6e-4e50 -8a5b-8a3f902eb2b5## 3 142aea0e-7a7b-4ac4-9dbb-0f62e2379599## -8a5b-8a3f902eb2b5## 2 142aea0e-7a7b-4ac4-9dbb-0f62e2379599## 3 9d951ff8-ce21-4c69-86f2-0d1eeb2e40e3# R中特有的数据保存格式图片4. 实战项目的组织方式之一图片5. 实战项目的组织方式之二图片6.
+facet_grid(Group~species) #分面函数 横按照Group切分,竖着按照Species图片sample() #随机抽样sample(letters[1:5], 4) #随机表现在重复运行出的结果每次顺序都不一致
= 1,header = T) #逆转log dat = as.matrix(2^dat - 1) dat[1:4,1:4] # 深坑一个 dat[97,9] as.character(dat[97,9 # 用apply转换为整数矩阵 exp = apply(dat, 2, as.integer) exp[1:4,1:4] #行名消失 rownames(exp) = rownames(dat) exp[ 1:4,1:4] gdc下载的数据从此处开始衔接 library(stringr) # 行名ID转换:方法1(推荐) head(rownames(exp)) library(AnnoProbe) annoGene :4] # 方法2:zz_gtf_ID转换.Rmd 4.基因过滤 需要过滤一下那些在很多样本里表达量都为0或者表达量很低的基因。 :4] # cpm 去除文库大小的影响 dat = log2(cpm(exp)+1) pca.plot = draw_pca(dat,Group);pca.plot save(pca.plot,file
---title: "生信技能树学习笔记"引用自生信技能树author: "天空"date: "2023-01-02"output: html_document---一、数据框、矩阵和列表1. up 5## 2 gene2 up 3## 3 gene3 down -2## 4 gene4 down -4(2)文件中读取图片df2 <- read.csv gene4 down -42. 数据框属性图片#数据框属性dim(df1)## [1] 4 3nrow(df1)## [1] 4ncol(df1)## [1] 3rownames(df1)## [1] "1" "2" "3" "4"colnames df1[,3]## [1] 5 3 -2 -4df1[,ncol(df1)]## [1] 5 3 -2 -4#如何取数据框除了最后一列以外的其他列?
---title: "生信技能树学习笔记"author: "天空"date: "2023-01-04"output: html_document---R语言综合应用1. 1] [,2] ## [1,] "jimmy" "150"## [2,] "nicker" "140"## [3,] "tony" "152"(3) str_detect()图片### 4. ] 3 14(3) 长脚本管理方式之一图片4. [17] "test2.Rdata" ## [18] "<e7>\u0094\u009f信< e6>\u008a\u0080<e8>\u0083<bd><e6><a0>\u0091<e7><ac>\u0094记day7.html" ## [19] "<e7>\u0094\u009f信<e6>
stat_compare_means(comparisons = my_comparisons, method = "t.test")+ stat_compare_means(label.y = 5) Task4: 提交搜索请求 结果页面中,Plots选项卡选择合适数据进行绘图,或下载数据 rm(list = ls()) options(stringsAsFactors = F) a=read.table('e4- BAG1 BCL2 BIRC5 BLVRA CCNB1 CCNE1 CDC20 CDC6 CDCA1 CDH3 CENPF CEP55 CXXC5 EGFR ERBB2 ESR1 EXO1 FGFR4 BAG1 BCL2 BIRC5 BLVRA CCNB1 CCNE1 CDC20 CDC6 CDCA1 CDH3 CENPF CEP55 CXXC5 EGFR ERBB2 ESR1 EXO1 FGFR4 42872 <- pdata_42872$title group <- unlist(lapply(pdata_42872, function(x) { strsplit(x,' ')[[1]][4]
pData(sCLLex)#提取分组信息 table(group)#设计矩阵 3了解 str,head,help函数 作用于 第二步提取到的表达矩阵 str(exp) head(exp) help(exp) 4安装并了解 toTable(hgu95av2SYMBOL) 以下几种方法获取TP53的探针名称 1 subset函数 a1 <- subset(ids, ids$symbol=='TP53') 2 grep函数 a4 deg_t.test <- cbind(avg_1, avg_2, log2FC, pvals, p.adj) deg_t.test <- deg_t.test[order(deg_t.test[,4] log2FC",y="-log10FDR")+ #增加阈值线:分别对应FDR=0.05,|log2FC|=1 geom_hline(yintercept=-log10(0.05),linetype=4) + geom_vline(xintercept=c(-1,1),linetype=4)+ xlim(-3,3)+ theme(plot.title = element_text(size =
unexpected,一般是代码有误some tips1 Tab-打出前几个字母即出现提示,按↑↓翻动,按Tab补全2 光标放在>后面,按↑键,即可修改上一条命令,按回车重新运行图片图片(格式重于内容)引用自生信技能树