Above error raised while writing key 'patient' of <class 'h5py._hl.group.Group'> to /
可能是obs或var的index,或者名称出现了None,以及值不是str/object类型
或者是存在adata.raw有一些冲突
### 一些可行的解决:
查看adata.obs_names.name,给他赋对应的值-str/object
if adata.obs_names.name is None:adata.obs_names.name = 'cell_barcode'
if adata.var_names.name is None:adata.var_names.name = 'tf_name'
adata.obs.columns = adata.obs.columns.astype(str)
adata.var.columns = adata.var.columns.astype(str)
a1.var['tf'] = a1.var.index.tolist()
a1.obs['SampleID'] = a1.obs['SampleID'].apply(lambda x: str(x))
以及将adata.raw=None,adata.layers = None
避免出现不合适的命名:
adata.obs.rename(columns={'O2_Suppl': 'Suppl_02'}, inplace=True)
有点折磨人的,最后也不知道具体是因为哪些步骤,总之就是.raw要为None,其它obs和var的column名称不能数字开头,要是str,以及每个列的具体值也最好都是str/object。