1

いくつかのデータを挿入して変換した後、ネットワーク オブジェクトに変換するために、0 の大きなマトリックスを作成しようとしています。私が使用しているデータは、ユーザー ID とその友達の ID のリストです。ここ [ http://www.shizukalab.com/toolkits/sna/sna_data ]で見つけたコードを使用して、ユーザーと友人の間のつながりを 1 に変換しています。その後、 と を使用statnetigraphてデータを分析できます。R セッションが中断し続けるというデータの次元に基づいてマトリックスを作成しようとすると、問題が発生します。

問題はメモリやシステムの問題ではなく、データの問題であると考えているため、具体的に説明するために、プロセス全体を示します。

そこで、最初にデータをサブセット化して、ユーザー ID とその友達の 2 つの列を作成しました。次に、それを折りたたんでそこから txt ファイルを作成し、それをメモリにスキャンしました。

registerDoMC(cores = 3)
library(bigmemory)

yelpNetwork <- select(training, c(4:5))
yelpNetwork$friends <- vapply(yelpNetwork$friends, paste, collapse = ",",  character(1L))
write.table(yelpNetwork, "yelpNetwork.txt", row.names = FALSE)

##Scan in a file with IDs as character strings {even if numeric"}, and with fields separated by commas
dat=scan("yelpNetwork.txt", what="character",sep="\n")

datこれは、次のように見えるもののスニペットです。

[1] "\"user_id\" \"friends\""                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              
[2] "\"--0KsjlAThNWua2Pr4HStQ\" \"nELVJlkX8T0mUAArSPSJxw D4v0v5fHzxYLWaXl8gTHqQ 3Uj1YjuShWl6i5in-80sGw WmAhGvWfztnCNrGak8Zf-A VFL4LY37bEvyDPobGoxvXg tyRSwnzsdQDi4WlEBw5RCg VSP01oJh4hrM7KngLZStWw 7g3CFT7P4yfRmPm1rDimSA np418-wlhgpteqef4rn_nQ vK8Ymi2Z6rk3OgkTuMt6Fw\""                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
[3] "\"--20-ljZD5NnAnkwBBC_uQ\" \"tRN04Yo_qnir-y9RXqQ5qg\""                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
[4] "\"--2QZsyXGz1OhiD4-0FQLQ\" \"\""  

次に、長さを読み込んでdat次元を確立し、行列を作成しようとします。Rstudio は長時間実行され、その後クラッシュします。

# Store the number of lines in the file
dym=length(dat)

# Create a dymXdym matrix of zeros
m<-matrix(data=0,nrow=dym,ncol=dym)  

繰り返しますが、メモリやシステムの問題ではないと思います。他の StackOverflow の議論に基づいて、私はbigmemoryパッケージを使用しており、4 つのコアのうち 3 つを実行しています。これは の一部で、sessionInfo16GB の RAM を搭載しています。数週間前にアップグレードしたばかりの Rstudio v. 0.99.486 も実行しています。

R version 3.2.2 (2015-08-14)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: OS X 10.11.1 (El Capitan)

私は最も高度な R ユーザーではないので、明らかなことを見落としている可能性があります。どんな考えでも大歓迎です。

4

1 に答える 1