這是一個擴展到現有的問題:Convert table into matrix by column names的R - 轉換大表到矩陣的列名
我用最後的答案:https://stackoverflow.com/a/2133898/1287275
原來的CSV文件矩陣具有約1.5M的行三列......行索引,列索引和一個值。所有數字都是長整數。基礎矩陣是一個約220K x 220K的稀疏矩陣,每行平均約有7個值。
最初的read.table工作得很好。
x <- read.table("https://stackoverflow.com/users/wallace/Hadoop_Local/reference/DiscoveryData6Mo.csv", header=TRUE);
我的問題來了,當我做重塑命令。
reshape(x, idvar="page_id", timevar="reco", direction="wide")
CPU達到100%,它在那裏永遠存在。機器(Mac)擁有比R更多的內存。我不明白爲什麼需要這麼長時間來構建一個稀疏矩陣。
我正在使用默認的矩陣包。我沒有安裝任何額外的東西。我幾天前剛剛下載了R,所以我應該有最新版本。
對此提出建議?
感謝, 華萊士
你應該從'Matrix'軟件包試一下'sparseMatrix'。 – flodel 2012-03-23 01:45:24
無論您對_deus_ex_machina_做出什麼樣的犧牲,'reshape'函數都不是用來構造spars矩陣的。並沒有「矩陣」包。如果您詢問「Matrix」軟件包,請正確拼寫。 – 2012-03-23 01:49:48
http://stackoverflow.com/a/9617424/210673有執行此操作的各種方法的列表。 – Aaron 2012-03-23 15:54:07