anndata稀疏矩阵csr_matrix

简介: anndata稀疏矩阵csr_matrix

最近在用scanorama进行单细胞转录组数据整合的过程中,出现报错

error: data sets must be numpy array or scipy.sparse.csr_matrix, received type <class 'scipy.sparse.csc.csc_matrix'>.


经过检查发现是data.X 数据格式不正确,需要进行格式转换后再整合

data.X = scipy.sparse.csr_matrix(data.X)


这里再复习一下Anndata中的csr_matrix格式

anndata

AnnData 格式通常包含以下slot:

  • X包含表达式矩阵。
  • obsm包含嵌入数据。
  • obs包含细胞元数据。
  • var包含基因元数据。

微信截图_20230606162500.png

It is recommended to store the expression matrix in CSR (compressed sparse row) format to create smaller files depending on sparsity of your data instead of CSC (compressed sparse column) format or dense Numpy array.

csr_matrix(Compressed Sparse Row matrix)压缩稀疏行格式

为什么要使用csr_matrix?

1.有利于高效运算

2.有利于高效行切片

3.有利于快速地矩阵矢量积运算

#要将表达式矩阵转换为CSR格式,请使用:
import scipy
adata.X = scipy.sparse.csr_matrix(adata.X)
#要将表达式矩阵转换为 Numpy 数组,请使用:
adata.X = scipy.sparse.csr_matrix.toarray(adata.X)


相关文章
|
3月前
|
存储 机器学习/深度学习 算法框架/工具
张量(Tensor)、标量(scalar)、向量(vector)、矩阵(matrix)
张量(Tensor)、标量(scalar)、向量(vector)、矩阵(matrix)
51 1
对角矩阵(Diagonal Matrix)
对角矩阵(Diagonal Matrix)是一种特殊的矩阵,其元素仅位于主对角线上。对角矩阵通常用于线性代数和微积分等数学领域,它有以下几个特点:
659 7
|
存储 NoSQL
第3章 数组与矩阵——3.5 稀疏矩阵
第3章 数组与矩阵——3.5 稀疏矩阵
scipy库中的sparse.csr_matrix函数介绍
scipy库中的sparse.csr_matrix函数介绍
|
JSON Java Android开发
Matrix 之 ApkChecker 的使用
Matrix 之 ApkChecker 的使用
255 0
Matrix 之 ApkChecker 的使用
Harry Potter and The Vector Spell-gym101669D(矩阵的秩-并查集)
题意: 给出一个0 1矩阵,这个矩阵中每一列有且只有两个1,求这个矩阵的秩 输入一行中1的数量x,然后后面x个数代表1出现的列位置 求出这个矩阵的秩 方法: 思维并查集 将每一列的两个1所在的行编号连一条边,然后求一下最小生成树就好 其实就是我们维护一个并查集,在这个并查集里面的所有点都可以两两组合形成一列,如果不在同一个集合里面,就会对答案+1
104 0
Harry Potter and The Vector Spell-gym101669D(矩阵的秩-并查集)
|
索引 Python Java
Leetcode 542:01 矩阵 01 Matrix
题目: 给定一个由 0 和 1 组成的矩阵,找出每个元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 Given a matrix consists of 0 and 1, find the distance of the nearest 0 for each cell.
786 0