起因
- 運行以下
RunHarmony()
時報錯睡蟋,可是代碼以前能跑的梅屉,唯一的不同就是換了服務(wù)器
seuratObj <- RunHarmony(sce, "orig.ident")
Error in harmonyObj$cluster_cpp() :
element-wise pow(): incompatible matrix dimensions: 100x6 and 6x1
處理過程
方案一 ?:重裝
- 該問題比較新舞竿,根據(jù)Github解決方案 [1]搀捷,首先運行以下代碼重裝harmony:
devtools::install_github("eddelbuettel/harmony",force = TRUE)
devtools::install_github("immunogenomics/harmony",force = TRUE)
方案二 ?:Live Support
- 官方在上述issue中提出與官方聯(lián)系 [2]
- 我聯(lián)系了锅很,但是問題提交的時候一直處于
Submitting…
方案三 ?:Rcpp版本問題
- 從一開始的解決方案里其馏,有人提出是
Rcpp
包的版本問題 [3]
- 于是查看
Rcpp
包的版本 [4]
packageVersion('Rcpp')
[1] ‘1.0.9’
- 嗯,有可能是版本問題……
- 安裝舊版本的Rcpp
- 因為我查看自己電腦上的R版本是1.0.7爆安,所以安裝了一樣的以防萬一
devtools::install_version("Rcpp", version = "1.0.7", repos = "[http://cran.us.r-project.org](http://cran.us.r-project.org/)")
- 再一次查看版本還是
1.0.9
- 推測可能是已經(jīng)加載過
devtools
包的緣故
- 因為在把所有R包全部卸載的情況下叛复,首先安裝
devtools
,然后查看Rcpp
包版本顯示1.0.9
- 此時無法加載剛安裝的
Rcpp
包
Package ‘Rcpp’ version 1.0.9 cannot be unloaded ……
- 清除環(huán)境加載的R包重啟Rstudio或上邊欄
Session-Restart R
,此時所有R包都會unload
library("Rcpp")
packageVersion('Rcpp')
[1] ‘1.0.7’
- 皆大歡喜:职隆?г拧!
- 然后繼續(xù)安裝其他R包撬码!
- 此方法適用于沒安裝多少包的
- 如果安裝了儿倒,應(yīng)該可以通過unload所有包,然后重新加載實現(xiàn)呜笑。有些依賴高版本的Rcpp的R包夫否,可能需要重新下載
- 繼續(xù)運行
RunHarmony()
就沒問題了
補充
查看R包版本方法
packageVersion('Seurat')
sessionInfo('Seurat')
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者