单细胞测序

R和python 随机抽取N个细胞

2022-04-06  本文已影响0人  Norahd

Seurat抽样

#简单实现
N=1000
scRNA_tmp <- scRNA[,sample(x=colnames(scRNA),size=N,replace=F)]
scRNA_tmp  <- subset(scRNA, downsample = N)#降采样
#函数封装
Samplingcell <-  function(object, rate, random.subset.seed = NULL, ...){
    ncells<- nrow(object@meta.data)
    ncells.subsample<- round(ncells * rate)
    set.seed(random.subset.seed)
    selected.cells<- sample(colnames(object), ncells.subsample)
    object<- subset(object, cells =  selected.cells, ...)
    return(object)
}
RandomSubsetData(scRNA, 0.8)

scanpy抽样

random.seed(6)
subW = ad_sc[np.random.choice(ad_sc.obs_names,100000,replace=False)].copy()
subW.write('subW.h5ad', compression='gzip')
上一篇 下一篇

猜你喜欢

热点阅读