scanpy sc.pp.normalize_per_cell bug

今天遇到一个很奇怪的bug, 当今天跑covid_atlas数据集的时候,在123服务器总是报错,但是我记得在122服务器上是跑过没问题的

最终的测试结果如下

import scanpy as sc 
import numpy as np 
from QUEST import QUEST
from QUEST.utils import get_free_gpu
import torch dataset_path ="/home/DATA1/zhangjingxiao/yxk/datasets/covid_atlas/covid_atlas_raw.h5ad"
adata=sc.read(dataset_path)
print("....................................data preprocessing.............................................")
sc.pp.filter_genes(adata, min_counts=1)
sc.pp.filter_cells(adata, min_counts=1)
sc.pp.normalize_per_cell(adata,counts_per_cell_after=1e4)
adata.obs['size_factors'] = adata.obs.n_counts / np.median(adata.obs.n_counts)
sc.pp.log1p(adata)
sc.pp.highly_variable_genes(adata,n_top_genes=1000,subset=True,inplace=True)#
sc.pp.scale(adata,max_value=10.0)
sc.tl.pca(adata)# if torch.cuda.is_available():
#     free_gpu_id = get_free_gpu()
#     device = torch.device("cuda:"+str(free_gpu_id))
# else:
#     device = torch.device("cpu")
# #print(free_gpu_id)
# #torch.cuda.set_device(free_gpu_id)
# #device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
# quest=QUEST(adata,batch_name="BATCH",hidden_size=[64,32],num_epochs=10,batch_size = 256,save_dir="./Log/",device = device)
# quest.train()# adata0=quest.adata
# print(adata0)
# adata0.obsm["X_emb"]= adata.obsm["X_QUEST"].copy()
# sc.pp.neighbors(adata0, use_rep="X_QUEST")
# sc.tl.umap(adata0)
# #sc.tl.louvain(adata0,resolution=1.0)
# sc.pl.umap(adata0, color=["celltype","BATCH"],show=False)

在这里插入图片描述

test dataset1

import scanpy as sc 
import torch 
import numpy as np
from scipy.sparse import issparse
import matplotlib.pyplot as plt
from QUEST.utils import seed_torch
from QUEST import QUEST
from QUEST.preprocess import read_dataset,normalize
from QUEST.utils import evaluation_batch_mixingdataset="covid_atlas"
datatype="multi" #dataset_path ="/home/DATA1/zhangjingxiao/yxk/datasets/covid_atlas/covid_atlas_raw.h5ad"
adata=sc.read(dataset_path)
#adata = sc.read("/DATA2/zhangjingxiao/yxk/dataset/covid_atlas/adata_clean.h5ad")
adata.obs["BATCH"] = adata.obs["sampleID"].copy()
sc.pp.normalize_total(adata,target_sum=1e4)
sc.pp.log1p(adata)
sc.pp.highly_variable_genes(adata,n_top_genes=1000,subset=True)
sc.pp.scale(adata)
sc.tl.pca(adata)print("calculate PCA done....")

结果如下
在这里插入图片描述

test dataset2

测试
sc.pp.filter_genes(adata, min_counts=1)
sc.pp.filter_cells(adata, min_counts=1)

import scanpy as sc 
import torch 
import numpy as np
from scipy.sparse import issparse
import matplotlib.pyplot as plt
from QUEST.utils import seed_torch
from QUEST import QUEST
from QUEST.preprocess import read_dataset,normalize
from QUEST.utils import evaluation_batch_mixingdataset="covid_atlas"
datatype="multi" #dataset_path ="/home/DATA1/zhangjingxiao/yxk/datasets/covid_atlas/covid_atlas_raw.h5ad"
adata=sc.read(dataset_path)
#adata = sc.read("/DATA2/zhangjingxiao/yxk/dataset/covid_atlas/adata_clean.h5ad")
adata.obs["BATCH"] = adata.obs["sampleID"].copy()
sc.pp.filter_genes(adata, min_counts=1)
sc.pp.filter_cells(adata, min_counts=1)sc.pp.normalize_total(adata,target_sum=1e4)
sc.pp.log1p(adata)
sc.pp.highly_variable_genes(adata,n_top_genes=1000,subset=True)
sc.pp.scale(adata)
sc.tl.pca(adata)print("calculate PCA done....")

在这里插入图片描述

test dataset3((sc.pp.normalize_per_cell_))

import scanpy as sc 
import torch 
import numpy as np
from scipy.sparse import issparse
import matplotlib.pyplot as plt
from QUEST.utils import seed_torch
from QUEST import QUEST
from QUEST.preprocess import read_dataset,normalize
from QUEST.utils import evaluation_batch_mixingdataset="covid_atlas"
datatype="multi" #dataset_path ="/home/DATA1/zhangjingxiao/yxk/datasets/covid_atlas/covid_atlas_raw.h5ad"
adata=sc.read(dataset_path)
#adata = sc.read("/DATA2/zhangjingxiao/yxk/dataset/covid_atlas/adata_clean.h5ad")
adata.obs["BATCH"] = adata.obs["sampleID"].copy()
sc.pp.filter_genes(adata, min_counts=1)
sc.pp.filter_cells(adata, min_counts=1)sc.pp.normalize_per_cell(adata,counts_per_cell_after=1e4)
sc.pp.log1p(adata)
sc.pp.highly_variable_genes(adata,n_top_genes=1000,subset=True)
sc.pp.scale(adata)
sc.tl.pca(adata)print("calculate PCA done....")

结果如下
在这里插入图片描述
总而言之,最终的问题在于

sc.pp.normalize_total(adata,target_sum=1e4)

sc.pp.normalize_per_cell(adata,counts_per_cell_after=1e4)

其中使用

sc.pp.normalize_total(adata,target_sum=1e4)

不报错,但是使用

sc.pp.normalize_per_cell(adata,counts_per_cell_after=1e4)

就会报错,值得注意

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Tensorflow2.x】tensorflow-gpu 在 Ubuntu 上的安装

好几次遇到问为什么安装的 tensorflow 不能调用GPU,之前搞定过几次,前两天又有人问,又捣鼓了很久才搞定,这里简单记录一下我遇到的问题,以及解决方案。 一、安装方法 (一)安装并更新 conda 1…

第五步:STM32F4端口复用

什么是端口复用? STM32有很多的内置外设,这些外设的外部引脚都是与GPIO复用的。也就是说,一个GPIO如果可以复用为内置外设的功能引脚,那么当这个GPIO作为内置外设使用的时候,就叫做复用。 例如串口 1 的发送接收引脚…

【现场问题】flink-cdc,Oracle2Mysql的坑,Oracle区分大小写导致

大小写导致的问题 错误的flink-cdc语句sql我们看一下oracle的数据库字段再看一下错误sql里面的内容flink报错内容 正确的sql三级目录 错误的flink-cdc语句sql CREATE TABLE t_wx_source_1 (id String,name String,age String ) WITH (connector oracle-cdc,hostname 192.168…

【网络】UDP协议详解

目录 UDP的感性理解 UDP协议格式 UDP协议格式感性理解 UDP特点 UDP的缓冲区 UDP的感性理解 UDP的传输过程类似于寄信,假设你要写一封家书寄回家里:首先你要在信封上填写好寄件人和收件人的地址,其次在贴好邮票,最后将信件投放…

36.RocketMQ之Broker如何实现磁盘文件高性能读写

highlight: arduino-light Broker读写磁盘文件的核心技术:mmap Broker中大量的使用mmap技术去实现CommitLog这种大磁盘文件的高性能读写优化的。 通过之前的学习,我们知道了一点,就是Broker对磁盘文件的写入主要是借助直接写入os cache来实现性能优化的&…

论文笔记--SentEval: An Evaluation Toolkit for Universal Sentence Representations

论文笔记--SentEval: An Evaluation Toolkit for Universal Sentence Representations 1. 文章简介2. 文章概括3 文章重点技术3.1 evaluation pipeline3.2 使用 4. 代码4.1 数据下载4.2 句子嵌入4.3 句子嵌入评估 5. 文章亮点6. 原文传送门7. References 1. 文章简介 标题&…

钉钉聊天对话框和截图经常发生白屏

环境: 7.0.30-rel6019102 Win10专业版 L盾加密环境 问题描述: 钉钉聊天对话框和截图经常发生白屏 解决方案: 1.【电脑端钉钉】- 左上角【头像】-【设置】-【高级】- 下拉【网络检测】- 点击【开始检测】 如果变红说明网络有问题&#x…

Moka AI产品后观察:HR SaaS迈进AGI时代

在AI这条路上,Moka已经走了很远。如今的Moka Eva是在此前AI模型基础上的更进一步。未来AGI时代,HR SaaS会有更多可能性。 出品|产业家 在AI潮水里,Moka正在加速快跑。 在6月28日的2023夏季新品发布会上,国内首个AI原生HR Saa…

将一个3x3的OpenCV旋转矩阵转换为Eigen的Euler角

代码将一个3x3的OpenCV旋转矩阵转换为Eigen的Euler角。 #include <iostream> #include <Eigen/Core> #include <Eigen/Geometry> #include <opencv2/core.hpp>using

蓝桥杯刷题-1

文章目录 1.蓝桥杯官网2.蓝桥杯题目进入界面 及 题目详情3.题目解答过程及思路4.运行结果图5.解答代码展示6.ASCII表图例 大家好&#xff0c;我是晓星航。今天为大家带来的是 蓝桥杯刷题 - 1 -单词分析 相关的讲解&#xff01;&#x1f600; 1.蓝桥杯官网 题库 - 蓝桥云课 (l…

【数学建模】 灰色预测模型

数学建模——预测模型简介 https://www.cnblogs.com/somedayLi/p/9542835.html 灰色预测模型 https://blog.csdn.net/qq_39798423/article/details/89283000?ops_request_misc&request_id&biz_id102&utm_term%E7%81%B0%E8%89%B2%E9%A2%84%E6%B5%8B%E6%A8%…

SpringBoot的@ConfigurationProperties、@Autowired、@Conditional注解

目录 1. ConfigurationProperties EnableConfigurationProperties Autowired注解1.1 configuration自定义配置参数自动补全功能 2. Conditional注解 1. ConfigurationProperties EnableConfigurationProperties Autowired注解 在resources/application.properties文件中&a…