R運行大數據的過程中遇到的問題:不能有負長度矢量


解決辦法:

  只能通過一些trick來減小生成的中間矩陣的大小。比如我所遇到的問題是:

我要運行(W%*%H%*%t(H)) 這句話,(W的規模是5000000*10,而H的規模是10*100000)

解釋執行W%*%H的時候報錯:不能有負長度矢量。

坑爹的中文報錯,google發現,和中文有關的R文檔、記錄真是少得可憐,終於通過英文“negative length vectors are not allowed”這句話,

看到老外們的解釋,才知道了,簡而言之就是因為數據規模太大,而R系統不允許生成生成數據規模超過2^31的結果。

  改成(W%*%(H%*%t(H)))后,問題就解決了。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM