广东工程承包网站,中国flash网站模板,wordpress采集淘宝商品,企业官方网站地址怎么填本有解决标题中的两个问题 1.答案是修改不了#xff0c;不如重新制作一个seurat对象。
试图使用rownames#xff08;obj#xff09;featurenames是不成功的
记录 客户需求遇到一个问题#xff1a;作者提供的rds文件行名为ensemble id#xff0c;如何改成gene symbol。
…本有解决标题中的两个问题 1.答案是修改不了不如重新制作一个seurat对象。
试图使用rownamesobjfeaturenames是不成功的
记录 客户需求遇到一个问题作者提供的rds文件行名为ensemble id如何改成gene symbol。
作者提供的rds文件如下所示 同时发现作者也提供了相对应的gene symbol 如果直接使用作者提供的rds文件画图的话
FeaturePlot(All.merge,features ENSG00000177613) 如何把行名改为gene symbol呢 去github发现有人提供了一个RenameGenesSeurat函数
#https://github.com/satijalab/seurat/issues/757
#https://github.com/satijalab/seurat/issues/235
仔细阅读该函数发现本质就是把countsDimnames[[1]] 和dataDimnames[[1]] 还应该有scale.dataDimnames[[1]] 的名字改为gennesymbol
这里我把scale.dataDimnames[[1]]注释掉是因为我这个rds文件中的scale.data为空值否则会报错的
RenameGenesSeurat - function(obj ls.Seurat[[i]], newnames HGNC.updated[[i]]$Suggested.Symbol) { # Replace gene names in different slots of a Seurat object. Run this before integration. Run this before integration. It only changes objassays$RNAcounts, data and scale.data. print(Run this before integration. It only changes objassays$RNAcounts, data and scale.data.) RNA - objassays$RNAif (nrow(RNA) length(newnames)) { print(ensemble_id lengthgenesybol length) if (length(RNAcounts)) RNAcountsDimnames[[1]] - newnames if (length(RNAdata)) RNAdataDimnames[[1]] - newnames # if (length(RNAscale.data)) RNAscale.dataDimnames[[1]] - newnames } else {Unequal gene sets: nrow(RNA) ! nrow(newnames)} objassays$RNA - RNA return(obj)}
subset_dataRenameGenesSeurat(obj subset_data, newnames subset_dataassays$RNAmeta.features$feature_name)
这样的话就把gene symbol改成功了 但是
如果你运行FindMarkers或者findallmakers函数的话还是会报错的。应该是因为FindMarkers运行时候需要使用rownames而我们的rownames此时在不同的slot中可能是不一样的。
所以呀
对于这种rds文件开始先别改行名全部用自带的ensemble id。可视化的时候再使用RenameGenesSeurat函数修改基因。
否则会一直报错到怀疑人生。
其实最好的办法可能是把count提取出来自己制作rds文件这样就不会有各种报错啦。
在最开始的时候就把可能报错的小火苗掐灭。 FeaturePlot个性化需求如何把所有阳性表达的spot放到图的前面 常规画图的话Seurat::FeaturePlot(objectAll.merge, featuresGAPDH, label T,rasterFALSE,repel T,split.by group ) ACTB好像齐一点 所有阳性表达的spot放到图的前面结果和方法如下其实就是对细胞进行重新排个序 #https://github.com/satijalab/seurat/issues/757#https://github.com/satijalab/seurat/issues/235##################gene plot_bring the postitive dots to the fronts# First, the usual command to make the feature plots and return the ggplot2 objectsfp - Seurat::FeaturePlot(objectAll.merge, featuresGAPDH, label T,rasterFALSE,repel T, split.by group )fp[[1]]$data$GAPDH# Here, fp is a list of objects, one per feature plot
# Then, re-order the data dataframe in increasing order of gene expressionsfor (i in 1){ fp[[i]]$data - fp[[i]]$data[order(fp[[i]]$data$GAPDH),]}fp
可以看到两个方法 视觉差异还是挺大的