Scanpy(4)用与数据整合和批次处理

Scanpy包,用与数据整合和批次处理,包含批次效应的BBKNN算法和用于对比的ingest基础算法比较,及其原理简介。

1. 依赖:

(1)数据集(全部需要挂VPN):

  1. PBMC:pbmc3k_processed()(需要下载);pbmc68k_reduced()(scanpy自带)
  2. Pancreas(需要下载)

(2)Python包:Scanpy、BBKNN

2. PBMC数据集

导入所需的包

import scanpy as sc
import pandas as pd
import seaborn as sns
# 参考数据集(已预处理、降维、聚类、注释)
adata_ref = sc.datasets.pbmc3k_processed()  # this is an earlier version of the dataset from t
# 参考数据集(已预处理、降维、聚类、注释)
adata = sc.datasets.pbmc68k_reduced()
print(adata_ref)

生成:

上面下载数据自动放入这里

data

​ pancreas.h5ad

​ pbmc3k_processed.h5ad

2.1 重点数据结构分析

# 1. adata_ref
AnnData object with n_obs × n_vars = 2638 × 1838
    obs: 'n_genes', 'percent_mito', 'n_counts', 'louvain'
    var: 'n_cells'
    uns: 'draw_graph', 'louvain', 'louvain_colors', 'neighbors', 'pca', 'rank_genes_groups'
    obsm: 'X_pca', 'X_tsne', 'X_umap', 'X_draw_graph_fr'
    varm: 'PCs'
    obsp: 'distances', 'connectivities'
在 `scanpy` 中,`AnnData`(Annotated Data)是一个用于存储和操作单细胞RNA-seq等生物学数据的数据结构。以下是对`adata_ref`对象中各个字段的解释:

- `obs`:观测(observations)信息,即每个细胞或样本的元信息。在这个例子中包括:
  - `'n_genes'`:每个细胞中表达的基因数量。
  - `'percent_mito'`:每个细胞中线粒体基因的百分比。
  - `'n_counts'`:每个细胞的总计数。
  - `'louvain'`:【聚类结果,表示每个细胞属于哪个聚类。】

- `var`:变量信息,即基因的元信息。在这个例子中包括:
  - `'n_cells'`:每个基因在多少个细胞中被检测到。

- `uns`:未结构化的数据,可以存储各种附加信息。在这个例子中包括:
  - `'draw_graph'`:用于存储绘图图形的信息。
  - `'louvain'`:用于存储Louvain聚类的信息。
  - `'louvain_colors'`:Louvain聚类结果的颜色映射。
  - `'neighbors'`:用于存储邻域信息的数据。
  - `'pca'`:用于存储主成分分析(PCA)的信息。
  - `'rank_genes_groups'`:用于存储基因组中基因排序的信息。

- `obsm`:观测矩阵,包含与观测相关的矩阵数据。在这个例子中包括:
  - `'X_pca'`:PCA降维后的坐标。
  - `'X_tsne'`:t-SNE降维后的坐标。
  - `'X_umap'`:UMAP降维后的坐标。
  - `'X_draw_graph_fr'`:绘图图形的坐标。

- `varm`:变量矩阵,包含与变量相关的矩阵数据。在这个例子中包括:
  - `'PCs'`:主成分分析的主成分。

- `obsp`:观测矩阵中的矩阵,包含与观测相关的矩阵数据。在这个例子中包括:
  - `'distances'`:细胞之间的距离矩阵。
  - `'connectivities'`:细胞之间的连接性矩阵。

这些字段提供了关于单细胞RNA-seq数据集的丰富信息,包括细胞的特征、基因的特征、降维后的坐标、聚类结果等。


# 2. adata
AnnData object with n_obs × n_vars = 700 × 765
    obs: 'bulk_labels', 'n_genes', 'percent_mito', 'n_counts', 'S_score', 'G2M_score', 'phase', 'louvain'
    var: 'n_counts', 'means', 'dispersions', 'dispersions_norm', 'highly_variable'
    uns: 'bulk_labels_colors', 'louvain', 'louvain_colors', 'neighbors', 'pca', 'rank_genes_groups'
    obsm: 'X_pca', 'X_umap'
    varm: 'PCs'
    obsp: 'distances', 'connectivities'

2.2 原始数据可视化

sc.pl.umap(adata_ref, color='louvain')
sc.pl.umap(adata, color='bulk_labels') # obs: 'bulk_labels',

adata_ref 数据可视化

adata_ref

adata 数据可视化

image-20231113165058028

adata_ref.obs和adata.obs

# adata_ref.obs
					n_genes  percent_mito  n_counts          louvain
index                                                             
AAACATACAACCAC-1      781      0.030178    2419.0      CD4 T cells
AAACATTGAGCTAC-1     1352      0.037936    4903.0          B cells
AAACATTGATCAGC-1     1131      0.008897    3147.0      CD4 T cells
AAACCGTGCTTCCG-1      960      0.017431    2639.0  CD14+ Monocytes
AAACCGTGTATGCG-1      522      0.012245     980.0         NK cells
...                   ...           ...       ...              ...
TTTCGAACTCTCAT-1     1155      0.021104    3459.0  CD14+ Monocytes
TTTCTACTGAGGCA-1     1227      0.009294    3443.0          B cells
TTTCTACTTCCTCG-1      622      0.021971    1684.0          B cells
TTTGCATGAGAGGC-1      454      0.020548    1022.0          B cells
TTTGCATGCCTCAC-1      724      0.008065    1984.0      CD4 T cells

# adata.obs
                      bulk_labels  n_genes  percent_mito  n_counts   S_score  G2M_score phase louvain
index                                                                                                
AAAGCCTGGCTAAC-1   CD14+ Monocyte     1003      0.023856    2557.0 -0.119160  -0.816889    G1       1
AAATTCGATGCACA-1        Dendritic     1080      0.027458    2695.0  0.067026  -0.889498     S       1
AACACGTGGTCTTT-1         CD56+ NK     1228      0.016819    3389.0 -0.147977  -0.941749    G1       3
AAGTGCACGTGCTA-1  CD4+/CD25 T Reg     1007      0.011797    2204.0  0.065216   1.469291   G2M       9
ACACGAACGGAGTG-1        Dendritic     1178      0.017277    3878.0 -0.122974  -0.868185    G1       2
...                           ...      ...           ...       ...       ...        ...   ...     ...
TGGCACCTCCAACA-8        Dendritic     1166      0.008840    3733.0 -0.124456  -0.867484    G1       2
TGTGAGTGCTTTAC-8        Dendritic     1014      0.022068    2311.0 -0.298056  -0.649070    G1       1
TGTTACTGGCGATT-8  CD4+/CD25 T Reg     1079      0.012821    3354.0  0.216895  -0.527338     S       0
TTCAGTACCGGGAA-8          CD19+ B     1030      0.014169    2823.0  0.139054  -0.981590     S       4
TTGAGGTGGAGAGC-8        Dendritic     1552      0.010886    4685.0 -0.148449  -0.674752    G1       2
# adata_ref.obs_names
Index(['AAACATACAACCAC-1', 'AAACATTGAGCTAC-1', 'AAACATTGATCAGC-1',
       'AAACCGTGCTTCCG-1', 'AAACCGTGTATGCG-1', 'AAACGCACTGGTAC-1',
       'AAACGCTGACCAGT-1', 'AAACGCTGGTTCTT-1', 'AAACGCTGTAGCCA-1',
       'AAACGCTGTTTCTG-1',
       ...
       'TTTCAGTGTCACGA-1', 'TTTCAGTGTCTATC-1', 'TTTCAGTGTGCAGT-1',
       'TTTCCAGAGGTGAG-1', 'TTTCGAACACCTGA-1', 'TTTCGAACTCTCAT-1',
       'TTTCTACTGAGGCA-1', 'TTTCTACTTCCTCG-1', 'TTTGCATGAGAGGC-1',
       'TTTGCATGCCTCAC-1'],
      dtype='object', name='index', length=2638)

# var_names
Index(['TNFRSF4', 'SRM', 'TNFRSF1B', 'EFHD2', 'C1QA', 'C1QB', 'STMN1',
       'MARCKSL1', 'SMAP2', 'PRDX1',
       ...
       'EIF3D', 'LGALS2', 'ADSL', 'TTC38', 'TYMP', 'ATP5O', 'TTC3', 'SUMO3',
       'S100B', 'PRMT2'],
      dtype='object', name='index', length=208)

也可以看到数据本身还有其他的:

image-20231113154626731

以下信息放置到文章上方,本实例并没有采用。

sc.settings.verbosity = 1             # verbosity: errors (0), warnings (1), info (2), hints (3)
sc.logging.print_versions()
sc.settings.set_figure_params(dpi=80, frameon=False, figsize=(8</

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/680818.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用Visual Studio 分析.NET Dump

思维导航 前言什么是Dump文件&#xff1f;编写一段内存泄漏的代码查看程序运行情况并创建Dump文件使用Visual Studio分析Dump更多Visual Studio编程效率提升技巧DotNetGuide技术社区交流群 前言 内存泄漏和高CPU使用率是在日常开发中经常遇到的问题&#xff0c;它们可能会导致…

港科夜闻 | 香港科大宣布委任谭嘉因教授为副校长(行政)

关注并星标 每周阅读港科夜闻 建立新视野 开启新思维 1、香港科大宣布委任谭嘉因教授为副校长(行政)。香港科大6月3日宣布&#xff0c;委任谭嘉因教授接替庞鼎全教授出任副校长(行政)&#xff0c;由今年7月1日起生效。谭教授是原香港科大商学院院长&#xff0c;全球顶尖学者&am…

XML解析库tinyxml2库使用详解

XML语法规则介绍及总结-CSDN博客 TinyXML-2 是一个简单轻量级的 C XML 解析库,它提供了一种快速、高效地解析 XML 文档的方式。 1. 下载地址 Gitee 极速下载/tinyxml2 2. 基本用法 下面将详细介绍 TinyXML-2 的主要使用方法: 2.1. 引入头文件和命名空间 #i…

AI大模型时代必须关注的数据库 DuckDB1.0 正式发布

开源数据库DuckDB1.0 经过内部6年的打磨&#xff0c;积累了30万行代码&#xff0c;1.8万star&#xff0c;2024.06.03号正式发布了1.0版本&#xff08;代号 Snow Duck&#xff09;。 我们新一代程序员&#xff0c;没能见证MySQL 1.0、PostgreSQL 1.0、Windows 1.0、Linux 1.0、…

VUE3 学习笔记(11):vue-router路由要懂的知识点

在前后端没有分离之前&#xff0c;大家通常采用的MVC模式&#xff0c;由后端通过Controller层实现页面跳转&#xff0c;VUE是组件化的特点&#xff0c;说白了就是一个单页面应用&#xff08;挂载在public/index.html&#xff09;&#xff0c;意味着所有的页面只是各组件的组合。…

多客陪玩系统-开源陪玩系统平台源码-支持游戏线上陪玩家政线下预约等多场景应用支持H5+小程序+APP

多客陪玩系统-开源陪玩系统平台源码-支持游戏线上陪玩家政按摩线下预约等多场景应用支持H5小程序APP 软件架构 前端&#xff1a;Uniapp-vue2.0 后端&#xff1a;Thinkphp6 前后端分离 前端支持&#xff1a; H5小程序双端APP&#xff08;安卓苹果&#xff09; 安装教程 【商业…

模拟量采集电压电流信号转Modbus数据采集模块 YL121-485

特点&#xff1a; ● 模拟信号采集&#xff0c;隔离转换 RS-485输出 ● 采用12位AD转换器&#xff0c;测量精度优于0.1% ● 通过RS-485接口可以程控校准模块精度 ● 信号输入 / 输出之间隔离耐压1000VDC ● 宽电源供电范围&#xff1a;8 ~ 32VDC ● 可靠性高&#xff0c;…

RocketMQ教程(三):RocketMQ的工作原理

四个核心组件 RocketMQ 的架构采用了典型的分布式系统设计理念,以确保高性能、高可用和可扩展性。RocketMQ 主要由四个核心组件构成:NameServer、Broker、Producer 和 Consumer。下面是对这些组件以及它们在 RocketMQ 中的角色和功能的概述: 1. NameServer 角色和功能:Name…

一维时间序列突变检测方法(小波等,MATLAB R2021B)

信号的突变点检测问题是指在生产实践中&#xff0c;反映各种系统工作状态的信号&#xff0c;可能因为受到不同类型的噪声或外界干扰而发生了信号突变&#xff0c;导致严重失真的信号出现&#xff0c;因此必须探测突变出现的起点和终点。研究目的在于设计出检测方案&#xff0c;…

推荐一个免费的相亲工具

推荐一个免费的相亲工具&#xff0c;步骤如下&#xff1a; 1&#xff09;微信里面搜索公众号“光源桥”&#xff0c;并关注 2&#xff09;输入搜索条件进行搜索对象 例如下面搜索&#xff1a;

【机器学习】机器学习与推荐系统在电子商务中的融合应用与性能优化新探索

文章目录 引言机器学习与推荐系统的基本概念机器学习概述监督学习无监督学习强化学习 推荐系统概述基于内容的推荐协同过滤混合推荐 机器学习与推荐系统的融合应用用户行为分析数据预处理特征工程 模型训练与评估模型训练模型评估 个性化推荐基于用户的协同过滤基于商品的协同过…

基于 C# 开源的功能强大 .NET 人脸识别 API

面部识别 推荐一个 C# 开发的面部识别 API 项目&#xff0c;在 Github 上拥有 1.1k 的 Star, 功能强大&#xff0c;开箱即用&#xff0c;拥有跨平台的支持。 FaceRecognitionDotNet 使用了 OpenCVSharp, face_recognition 开源库&#xff0c; 并且提供了 Nuget 组件库&…

批处理—如何删除空格和括号

将下列代码复制在记事本中&#xff0c;将后缀名.txt改成.bat 然后将bat批处理文件&#xff0c;复制粘贴在需要处理的文件夹中&#xff0c;点击运行即可。 echo off setlocal enabledelayedexpansion for %%F in (*) do ( set "filename%%~nF" set "ext…

Kotlin中的StateFlow和SharedFlow有什么区别?

本文首发于公众号“AntDream”&#xff0c;欢迎微信搜索“AntDream”或扫描文章底部二维码关注&#xff0c;和我一起每天进步一点点 在Kotlin的协程库kotlinx.coroutines中&#xff0c;StateFlow和SharedFlow是两种用于处理事件流的API&#xff0c;它们有相似之处&#xff0c;但…

浮点数精度问题(详细)

文章目录 1.什么是浮点数2. 二进制与十进制的转换2.1 二进制与十进制的相互转换(方法介绍&#xff0c;思维理解)2.2 在线转换工具 3.浮点数的 IEEE754 表示4.C# 浮点型float、double 、decimal 比较5.解决运算精度问题5.1 浮点数预算精度问题5.2 解决方案5.2.1 放大倍数计算5.2…

如何根据业务需求,轻松挑选SSL证书?

在当今数字化时代&#xff0c;网站的安全性愈发受到重视。SSL证书作为网站安全的“守门员”&#xff0c;不仅能保护用户数据不被窃取&#xff0c;还能提升网站的信任度。但面对市场上琳琅满目的SSL证书产品&#xff0c;如何根据业务需求挑选合适的证书呢&#xff1f;今天&#…

使用python绘制漏斗图

使用python绘制漏斗图 漏斗图效果代码 漏斗图 **漏斗图&#xff08;Funnel Chart&#xff09;**是一种特殊的图表类型&#xff0c;通常用于显示一系列数据在某个流程或阶段中的逐步减少情况。**漏斗图的形状类似于漏斗&#xff0c;顶部宽而底部窄&#xff0c;每一层代表一个阶…

发文29篇,超过一半二区以上! | NHANES数据库周报(5.22~5.28)

美国国家健康和营养检查调查&#xff08;NHANES&#xff09;是一项旨在评估美国成人和儿童健康和营养状况的研究计划。该调查的独特之处在于它结合了访谈和体格检查。由美国疾病控制和预防中心&#xff08;CDC&#xff09;负责为国家提供健康统计数据。 NHANES计划始于20世纪60…

CsvHelper:一个轻便高性能的Csv文件读写操作开源库!

Csv是一种非常常见的文件格式&#xff0c;采用纯文本格式&#xff0c;不依赖于任何特定的软件或数据库&#xff0c;且文件体积小&#xff0c;易于使用。平常项目开发中&#xff0c;需要都会采用这种格式&#xff0c;这就涉及到Csv文件的读写操作。 下面介绍一个轻便高性能的Cs…

libevent源码跨平台编译(windows/macos/linux)

1.windows编译: 克隆: git clone https://github.com/libevent/libevent.git 克隆成功 生成makefile 生成成功 默认不支持OpenSSL,MbedTLS,ZLIB这三个库 编译: cmake --build . --config release