前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >单细胞no.1

单细胞no.1

原创
作者头像
用户10300557
发布2024-06-18 09:28:38
1170
发布2024-06-18 09:28:38
举报
文章被收录于专栏:生信学习111

安装包版本是4.3.1,看到有4.4.1,所以从安装这部分内容开始,引用资料图片文字等来源于花花老师的生信星球公众号,我的生信入门公众号。

1R and Rstudio

1install

要先安装R,注意直接下载太慢,用镜像会好一点,注意要先安装R,不要更改安装目录,不要更改安装目录,不要更改安装目录,重要的事情多说几遍,之后安装rstudio。简单介绍一下R,R是一种编程语言,也是统计计算和绘图的环境,它汇集了许多函数,能够提供强大的功能。R语言软件界面简陋,通常不直接使用,而是用图形界面的Rstudio。这个要注意设置权限为完全控制(R的Library,R.exe,还有rstudio)。

设置完全控制,这块容易忘
设置完全控制,这块容易忘
界面介绍
界面介绍

2注意事项

用Rproject管理工作目录,注意一个项目最好有一个单独的文件夹,有一个新建的Rproject,这样不容易弄混,因为R语言只能和一个文件夹互动,如果换来换去会非常麻烦。

3 一些简单数据结构

(1)向量

标量是一个,向量是多个元素有序排列组成的

赋值

代码语言:R
复制
> a
[1] 1 2 5 8 9
> a<- 1:15 #从1-15之间所有的整数x
> a
 [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15
> c<- seq(1,5,by = 0.5) #1-5之间每隔0.5取一个数(注意是逗号不是分号)
> c
[1] 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0
> a<- rep(1:3,times=3) #1-3 重复3次
> a
[1] 1 2 3 1 2 3 1 2 3

提取

代码语言:R
复制
> a[4] #a第4个元素
[1] 1
> a[-4]#除了第4个元素之外剩余的元素
[1] 1 2 3 2 3 1 2 3
> a[3:4]#第3到4个元素
[1] 3 1
> a[-(2:4)]#除了第2-4个元素
[1] 1 2 3 1 2 3
> a[c(1,3)] #第1个和第3个元素
[1] 1 3
代码语言:R
复制
> a[a==2]#等于2的元素
[1] 2 2 2
> a[a>1]
[1] 2 3 2 3 2 3
> a[a %in% c(1,2)]#存在于向量c(1,2)中的元素
[1] 1 2 1 2 1 2

(2) 数据框

一个几行几列的数据形式

提取方式用的是中括号

代码语言:R
复制
a[x,y]#第x行第y列
a[x,]#第x行
a[,y]#第y列
a[y] #也是第y列
a[a:b]#第a列到第b列
a[c(a,b)]#第a列和第b列
a$列名#也可以提取列(Tab自动补全)

3 安装和加载R包,R包是多个函数的集合(会用就行,不必精通)

(1) 镜像设置

代码语言:R
复制
options("repos"=c(CRAN="http://mirrors.tuna.tsinghua.edu.cn/CRAN/"))
options(BioC_mirror="https://mirrors.westlake.edu.cn/bioconductor")

(2) 安装并且加载R包

代码语言:R
复制
#安装来自cran的stringr包
install.packages("stringr")
#安装来自Biocductor的limma包
BiocManager::install("limma")
library(dplyr) #用library加载,不报错就行

day4

1批量装包,if语句和for 循环语句的联用

代码语言:R
复制
#首先是设置镜像
options("repos"="https://mirrors.ustc.edu.cn/CRAN/")
if(!require("BiocManager")) install.packages("BiocManager",update = F,ask = F)
options(BioC_mirror="https://mirrors.ustc.edu.cn/bioc/")
#来自cran的包放在一个向量里
cran_packages <- c('tidyverse',
                   'msigdbr',
                   'patchwork',
                   'SeuratObject',
                   'Seurat'
) 
#来自bioconductor的包放在一个向量里
Biocductor_packages <- c('sva',
                         'monocle',
                         'GOplot',
                         'GSVA',
                         'plotmo',
                         'regplot',
                         'scRNAseq',
                         'BiocStyle',
                         'celldex',
                         'SingleR',
                         'BiocParallel'
)
#用for循环批量安装来自cran的包
for (pkg in cran_packages){
  if (! require(pkg,character.only=T,quietly = T) ) {
    install.packages(pkg,ask = F,update = F)
    require(pkg,character.only=T) 
  }
}

#用for循环批量安装来自bioconductor的包
for (pkg in Biocductor_packages){
  if (! require(pkg,character.only=T,quietly = T) ) {
    BiocManager::install(pkg,ask = F,update = F)
    require(pkg,character.only=T) 
  }
}
#再次加载所有包,检查有没有没安装好的
for (pkg in c(Biocductor_packages,cran_packages)){
  require(pkg,character.only=T) #require也可以换成library,livbrary没有error就行,require中一些warning需解决,非常幸运没有,yeah。
}
#查看Seurat的版本
packageVersion("Seurat")

2函数

(1) require和library 每次用之前都要加载

require 可以返回逻辑值,这个是第一次听说呀,直接判断是否安装

代码语言:R
复制
as.logical(require(limma))
## [1] TRUE
as.logical(require(dplyr))
## Loading required package: dplyr
## [1] FALSE

(2) if 语句

条件语句,判断是否执行

代码语言:R
复制
if(TRUE)print("Hello")
## [1] "Hello"
if(FALSE)print("Hello")

(3) for 循坏,if语句直接实现分情况批量安装

(4) 循环时要加的参数ask,update,character.only

代码语言:R
复制
for (pkg in cran_packages){
  if (! require(pkg,character.only=T,quietly = T) ) {
    install.packages(pkg,ask = F,update = F)
    require(pkg,character.only=T) 
  }
}

ask = F,update = F必须要加是因为装包经常被问是否更新,如果一个包被问了,后面的代码就会被当作对“是否更新”这个问题的回答,那循环里的其他包就执行不下去了。

character.only=T是为了消除歧义,不要把pkg这三个字母识别为一个包名,因为他是变量名,每次执行代码时会换不同的包名。有些时候可能不能理解,但是你会用就行。

单细胞

1 能干啥

单细胞应用方向
单细胞应用方向

2常用数据库

可以都翻一翻看,最常用的还是GEO

1.Gene Expression Omnibus (GEO): GEO是一个公共数据库,收集了来自全球研究机构的大量基因表达数据,其中包括很多单细胞测序数据。

2.Single Cell Portal: Single Cell Portal是Broad Institute开发的在线平台,提供了丰富的单细胞测序数据资源和分析工具。https://singlecell.broadinstitute.org/single_cell

3.Human Cell Atlas: 人类细胞图谱计划(Human Cell Atlas)是一个国际合作项目,旨在建立人类所有细胞类型的细胞图谱。他们提供了大量的单细胞 RNA 测序数据。

https://www.humancellatlas.org/

4.Single Cell Expression Atlas: Single Cell Expression Atlas 是由欧洲生物信息研究所(EMBL-EBI)开发的在线数据库。

https://www.ebi.ac.uk/gxa/sc/home

5.UCSC Cell Browser: UCSC Cell Browser 是加州大学圣克鲁兹分校(UCSC)开发的在线平台,用于浏览和分析单细胞RNA测序数据。

https://cells.ucsc.edu/

数据库怎么用

GEO

GEO是综合数据库,不只有单细胞

从首页这里点进去。

常规转录组和单细胞转录组数据都在这个分类里,二者没有单独区分,要点表格第一列的GSExxxx编号,点进去看看网页上的描述,单细胞的数据就会有“scRNA”和“single cell” 这样的字眼,比如这个:

有些有参考文献

数据下载的位置在页面最底下

有一个注意,各种格式都有,不同的格式对应着不同的读取方式,可以看这个:https://mp.weixin.qq.com/s/W7szy-Kg6G1N1ENHNRjGiw

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1R and Rstudio
    • 1install
      • 2注意事项
        • 3 一些简单数据结构
          • (1)向量
          • (2) 数据框
        • 3 安装和加载R包,R包是多个函数的集合(会用就行,不必精通)
          • (1) 镜像设置
          • (2) 安装并且加载R包
      • day4
        • 1批量装包,if语句和for 循环语句的联用
          • 2函数
            • (1) require和library 每次用之前都要加载
            • (2) if 语句
            • (3) for 循坏,if语句直接实现分情况批量安装
            • (4) 循环时要加的参数ask,update,character.only
        • 单细胞
          • 1 能干啥
            • 2常用数据库
              • 数据库怎么用
                • GEO
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档