欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > ad.concat()学习

ad.concat()学习

2025/2/23 22:21:51 来源:https://blog.csdn.net/qq_45759229/article/details/142726355  浏览:    关键词:ad.concat()学习

学习1

import anndata as ad, pandas as pd, numpy as np
from scipy import sparse
a = ad.AnnData(X=sparse.csr_matrix(np.array([[0, 1], [2, 3]])),obs=pd.DataFrame({"group": ["a", "b"]}, index=["s1", "s2"]),var=pd.DataFrame(index=["var1", "var2"]),varm={"ones": np.ones((2, 5)),"rand": np.random.randn(2, 3),"zeros": np.zeros((2, 5)),},uns={"a": 1, "b": 2, "c": {"c.a": 3, "c.b": 4}},)
b = ad.AnnData(X=sparse.csr_matrix(np.array([[4, 5, 6], [7, 8, 9]])),obs=pd.DataFrame({"group": ["b", "c"], "measure": [1.2, 4.3]}, index=["s3", "s4"]),var=pd.DataFrame(index=["var1", "var2", "var3"]),varm={"ones": np.ones((3, 5)), "rand": np.random.randn(3, 5)},uns={"a": 1, "b": 3, "c": {"c.b": 4}},)
c = ad.AnnData(X=sparse.csr_matrix(np.array([[10, 11], [12, 13]])),obs=pd.DataFrame({"group": ["a", "b"]}, index=["s1", "s2"]),var=pd.DataFrame(index=["var3", "var4"]),uns={"a": 1, "b": 4, "c": {"c.a": 3, "c.b": 4, "c.c": 5}},)

在这里插入图片描述

可以看到,label=batch 只是添加的列名,而不是按照这列合并,而keys的值仅仅是一个标识值,没有特殊含义,我可以用整数区分,我也可以用唯一的字符串区分,如病人名

adata_concat = ad.concat(Batch_list, label="slice_name", keys=section_ids)

学习2

import anndata as ad, pandas as pd, numpy as np
from scipy import sparse
a = ad.AnnData(X=sparse.csr_matrix(np.array([[0, 1], [2, 3]])),obs=pd.DataFrame({"group": ["a", "b"]}, index=["s1", "s2"]),var=pd.DataFrame(index=["var1", "var2"]),varm={"ones": np.ones((2, 5)),"rand": np.random.randn(2, 3),"zeros": np.zeros((2, 5)),},uns={"a": 1, "b": 2, "c": {"c.a": 3, "c.b": 4}},)
b = ad.AnnData(X=sparse.csr_matrix(np.array([[4, 5, 6], [7, 8, 9]])),obs=pd.DataFrame({"group": ["b", "c"], "measure": [1.2, 4.3]}, index=["s3", "s4"]),var=pd.DataFrame(index=["var1", "var2", "var3"]),varm={"ones": np.ones((3, 5)), "rand": np.random.randn(3, 5)},uns={"a": 1, "b": 3, "c": {"c.b": 4}},)
c = ad.AnnData(X=sparse.csr_matrix(np.array([[10, 11], [12, 13]])),obs=pd.DataFrame({"group": ["a", "b"]}, index=["s1", "s2"]),var=pd.DataFrame(index=["var3", "var4"]),uns={"a": 1, "b": 4, "c": {"c.a": 3, "c.b": 4, "c.c": 5}},)print(a)
print(b)
print(a.X.toarray())
print(b.X.toarray())


注意这里的ad.concat, 这里的拼接是默认对var取交集的,但是对adata是去并集,也就是说adata的行是增加的,但列是减少的,这个需要特别注意

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词