1

我正在使用我想计算 w 的 bigmemory。我的 v 长度是 478000,k 长度是 240500。两个矩阵乘法是 w 非常大我循环运行代码仍然运行尚未完成,我不知道是否会给我结果。我试图在没有 for 循环的情况下进行计算。我有错误。请任何帮助来纠正我的代码 r 使其快速。

    v <-read.big.matrix('v.dat',type='double')
    k <-read.big.matrix('k.dat',type='double')
    m=length(v);
    n=length(k);
    w <-filebacked.big.matrix(length(v),length(k),type="double",backingfile="w.bin",descriptorfile="w.desc")
    start <- Sys.time()
    w <- as.big.matrix(2*cos(0.001*v[]%*%t(k[]))-2)
    Sys.time() - start

    # for(i in 1:m)
   # {

           # for(j in 1:n)
           # {
                   # w[i,j]=2*cos(dt*v[i]*k[j])-2
           # }
   # }

谢谢。

4

0 回答 0