将bigstatsr :: FBM转换为矩阵?

时间:2019-01-31 19:20:30

标签: r bigstatsr

是否可以将bigstatsr::FBM对象转换为常规R矩阵?

例如,假设我生成以下矩阵:

N <- 100
K <- 50
`%dopar%` <- foreach::`%dopar%`
`%:%` <- foreach::`%:%`
mat3 <- bigstatsr::FBM(N, K)
cl <- parallel::makeCluster(2)
doParallel::registerDoParallel(cl)
tmp3 <- foreach::foreach(j = 1:K, .combine = 'c') %:%
  foreach::foreach(i = 1:N, .combine = 'c') %dopar% {
    mat3[i, j] <- i + j
    NULL
  }
parallel::stopCluster(cl)

我想将mat3转换为常规R矩阵对象。我尝试了以下操作,但没有成功

A <- as.matrix(mat3)
Error in as.vector(x, mode) : 
  cannot coerce type 'environment' to vector of type 'any'

1 个答案:

答案 0 :(得分:1)

您可以只使用mat3[]从FBM中获取矩阵。

请查看https://privefl.github.io/R-presentation/bigstatsr.html#7

相反,您可以使用as_FBM()