2

是否可以将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'
4

1 回答 1

2

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

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

要执行相反的操作,您可以使用as_FBM().

于 2019-01-31T19:24:53.570 回答