我有一组n个图形,我必须生成一个三角形n x n矩阵,其中图形之间的距离。 我做了非并行程序,这意味着我有计算no的函数。每对2个大小为n1和n2的图形的顶点,No_MaxCommonSubgraph(graph1,graph2,n1,n2) 我有2个嵌套,并构造矩阵。它工作正常。 我把第一个变成了foreach,我有
foreach(i <- 1:n-1)
for(j in i:n){
nn <- No_MaxCommonSubgraph(graph1,graph2,n1,n2)
mat[i,j] <- max(n1,n2)-nn ##this should construct the matrix
}
问题在于,当我离开foreach时,矩阵垫的所有值都为NA。 我尝试将矩阵文件写入foreach,逐行写入for j,但它以不同的顺序写入行,因为行是由核心计算的。有时在另一行内写一行。
我使用Linux comp。有12个核心,我可以使用另一个comp。有8个核心。 对于图表大小8,我有11117个图表,我必须直到9或10。 我是R的新人。
答案 0 :(得分:0)
使用foreach
:
m2 <-foreach(i=1:(len-1), .combine='rbind', .multicombine=TRUE) %dopar% {
f_foreach(erg, i, len)}
所以
在%dopar%
foreach
函数“f_foreach()
”返回一个向量,并在.combine='rbind'
中使用“foreach
”,它组合了向量以形成矩阵m2作为foreach
的结果
f_foreach()
内是