step3: 对所有细胞的每个基因归一化,log1p(value/colSums[cell-idx] *scale_factor), R语言执行:log1p(sweep(mat, 2, Matrix::colSums(mat), FUN = "/") * 1e4) mat<-matrix(data=rbinom(n=25,size=5,prob=0.2),nrow=5)rownames(mat)<-paste0("gene",c(1:5))colnames(mat)<-paste0("cell...
不过R语言比较慢,作者调用了C++提高计算速度。 我不会C++,所以只是看着代码猜。(3) 行名(symbol)中不能用_,全部替换为- # 替换行名(symbol)中的_为- if (any(grepl(pattern = '_', x = rownames(x = new.data))) { warning( "Feature names cannot have underscores ('_'), replacing with dashe...
再来看看SCTransform, 这个算法在R语言官网(rdrr.io链接)的介绍是这样的:A normalization method for single-cell UMI count data using avariance stabilizing transformation. The transformation is based on anegative binomialregressionmodelwith regularized parameters. As part of the same regression framework, thi...
001、 pbmc <- NormalizeData(pbmc) 002、实现过程 dat <- pbmc[["RNA"]]@counts dat<-as.data.frame(dat)for(iin1:ncol(dat)) { dat[,i]<- log1p(dat[,i]/sum(dat[,i]) *10000) } tail(dat)[,1:5]
使用此组件通过规范化来转换数据集。 规范化是一种通常用于机器学习数据准备的方法。 规范化旨在将数据集中数值列的值更改为使用通用范围,而不会扭曲值范围内的差异或丢失信息。 一些算法还需要通过规范化正确建立数据模型。 例如,假设输入数据集包含值范围从 0 到 1 的列以及另一个值范围从 10,000 到 100,000...
使用此组件通过规范化来转换数据集。 规范化是一种通常用于机器学习数据准备的方法。 规范化旨在将数据集中数值列的值更改为使用通用范围,而不会扭曲值范围内的差异或丢失信息。 一些算法还需要通过规范化正确建立数据模型。 例如,假设输入数据集包含值范围从 0 到 1 的列以及另一个值范围从 10,000 到 100,000...
使用此组件通过规范化来转换数据集。 规范化是一种通常用于机器学习数据准备的方法。 规范化旨在将数据集中数值列的值更改为使用通用范围,而不会扭曲值范围内的差异或丢失信息。 一些算法还需要通过规范化正确建立数据模型。 例如,假设输入数据集包含值范围从 0 到 1 的列以及另一个值范围从 10,000 到 100,000...