在R中读入h5ad文件,并转换为seurat对象

embedded/2025/3/25 11:08:00/

太可恶了要么就报错要么就卡住!!!!/(ㄒoㄒ)/~~

library(Seurat)
library(SeuratDisk)
pbmc10kmono = paste0(path,'/pbmc10k/use_data/rna_mono.h5ad')

1. Round1

# # 方法1:通过h5Seurat中转
# library(SeuratDisk)
# Convert(pbmc10kmono, dest = "h5seurat")
# seurat_obj <- LoadH5Seurat("rna_mono.h5seurat")

报错报错~

2. Round2

# # 方法2:直接用r包读入
# library(zellkonverter)
# mono <- readH5AD(pbmc10kmono, to = "seurat")

也不行,半天也不动

3. Round3 (√)

library(reticulate)
# library(anndata)
ad <- reticulate::import("anndata")
adata <- ad$read_h5ad(pbmc10kmono)adata
# AnnData object with n_obs × n_vars = 3782 × 13483
#     obs: 'orig.ident', 'n_genes', 'celltypeL0'
#     var: 'features', 'n_cells'adata$T$X[1:5,1:5]
# 5 x 5 sparse Matrix of class "dgRMatrix"
#            AAACAGCCATCCAGGT-1 AAACCAACACAATGCC-1 AAACCAACAGGAACTG-1
# AL627309.5                  .                  .                  .
# LINC01409                   .                  .                  .
# LINC01128                   .                  .                  .
# LINC00115                   1                  .                  .
# NOC2L                       .                  .                  2
#            AAACCAACATAATCCG-1 AAACCAACATTGTGCA-1
# AL627309.5                  1                  .
# LINC01409                   1                  .
# LINC01128                   .                  .
# LINC00115                   .                  .
# NOC2L                       .                  .# 细胞和基因的元数据
cell_meta <- as.data.frame(adata$obs)
gene_meta <- as.data.frame(adata$var)
# 创建Seurat对象 
seurat_obj <- Seurat::CreateSeuratObject(counts = adata$T$X,   ## 这里需要转置,因为seurat中以cell作为列,gene作为行meta.data = cell_meta,assay = "RNA"
)
# 添加基因注释(如基因类型)
seurat_obj[["RNA"]]@meta.features <- gene_meta


http://www.ppmy.cn/embedded/174809.html

相关文章

ICLR 2025 机器人智能灵巧操作更进一步DexTrack

现实世界的机器人距离科幻小说里的机器人世界还有多远&#xff1f;通用灵巧操控何时才能实现&#xff1f;朝着这一伟大的目标&#xff0c;研究通用灵巧操控轨迹跟踪的 DexTrack 便应运而生。 论文地址&#xff1a;https://arxiv.org/abs/2502.09614代码地址&#xff1a;https:/…

Python---数据分析(Pandas八:二维数组DataFrame数据操作一: 数据清洗,数据转换)

一、 数据清洗 1.1、 isnull() 用于检测 DataFrame 中的缺失值&#xff0c;它会返回一个相同形状的布尔型 DataFrame&#xff0c;其中每个元素表示原始 DataFrame 中相应位置的元素是否是缺失 值。 import pandas as pd import numpy as np# 创建一个包含缺失值的 DataFrame …

e2studio开发RA4L1(15)----配置RTC时钟及显示时间

e2studio开发RA4L1.15--配置RTC时钟及显示时间 概述视频教学样品申请硬件准备参考程序源码下载新建工程工程模板保存工程路径芯片配置工程模板选择时钟设置UART配置UART属性配置设置e2studio堆栈e2studio的重定向printf设置R_SCI_UART_Open()函数原型回调函数user_uart_callbac…

Python----计算机视觉处理(Opencv:图像缩放)

图像缩放 与图像旋转里的缩放的原理一样&#xff0c;图像缩放的原理也是根据需要将原图像的像素数量增加或减少&#xff0c;并通 过插值算法来计算新像素的像素值。 导入模块 import cv2 输入图像 imgcv2.imread(lena.png) 图像缩放 img_sizecv2.resize(img,None,fx0.5,fy0.5,…

ubuntu20.04安装完显卡驱动后黑屏问题

笔记本安装完ubuntu20.04版本没有wifi怎么解决啊_运维-CSDN问答 1、重启电脑&#xff0c;在系统选择界面选择ubuntu advanced&#xff08;高级选项&#xff09;&#xff0c;然后选择带有括号的recovery mode&#xff0c;进入之后&#xff0c;在白框中选择root选项并进入&#…

Java EE(12)——初始网络

前言 随着软硬件的快速发展&#xff0c;计算机的通信模式已经由原来的独立模式&#xff08;计算机之间相互独立&#xff09;——>局域网通信&#xff08;同一局域网下的计算机可以通信&#xff09;——>广域网通信&#xff08;将多个局域网连接成范围更大的网络结构&…

VLAN综合实验报告

一、实验拓扑 网络拓扑结构包括三台交换机&#xff08;LSW1、LSW2、LSW3&#xff09;、一台路由器&#xff08;AR1&#xff09;以及六台PC&#xff08;PC1-PC6&#xff09;。交换机之间通过Trunk链路相连&#xff0c;交换机与PC、路由器通过Access或Hybrid链路连接。 二、实验…

论文笔记(七十三)Gemini Robotics: Bringing AI into the Physical World

Gemini Robotics: Bringing AI into the Physical World 文章概括1. 引言2. Gemini 2.0的具身推理2.1. 具身推理问答&#xff08;ERQA&#xff09;基准测试2.2. Gemini 2.0的具身推理能力2.3. Gemini 2.0支持零样本和少样本机器人控制 3. 使用 Gemini Robotics 执行机器人动作3…