python - 如何从 pandas 数据帧计数矩阵创建 AnnData 对象?
问题描述
我正在尝试使用 Scanpy Python 包来分析一些单细胞数据。我在 Pandas 数据框中读取了一个计数矩阵(一个 .tsv 文件),其中基因作为列,行作为不同的单元格。每行包含单个细胞的不同基因的计数。我想从 Pandas 数据框中创建一个 AnnData 对象...有人知道我该怎么做吗?不幸的是,我无法提供数据集。
解决方案
您可以通过这种方式将 DataFrame 转换df
为 AnnData adata
:
adata = anndata.AnnData(X: df.iloc[1:,1:],
obs: df.iloc[:,0:1],
var: df.iloc[0:1,:])
但你真的不需要这样做。相反,直接将 tsv 文件读入一个 AnnData 对象:
with open("your_tsv_file.tsv") as your_data:
adata = anndata.read_csv(your_data, delimiter='\t')
推荐阅读
- ansible - 使用多个主机中止进一步的任务执行
- python - 如何用 ProcessPoolExecutor 优雅地终止 loop.run_in_executor?
- windows - 如何解决在 Windows 10 上链接 pdfium
- rpm - 如何在 rpm 规范文件中安装符号链接
- android - camera2 api 在 android 8.1.0 上崩溃
- java - 将任何 ISO-8601 格式转换为 Android 中的可读格式
- sql - JSON_Query 与 For Json 路径
- python - 扩展()不产生列表
- sql - 使用 HUE/IMPALA 计数不同
- c# - 插入到 localdb 时重音字符的问题