将维度归因于R中的原始向量

时间:2015-02-04 17:59:18

标签: r file byte

我在将尺寸归因于R中的原始矢量时遇到了问题。我正在管理一个非常大的文件,因此我帮助您了解限制,以便在此处提供完整的可重现代码...我的文件带来基因组数据。

所以,我首先设置字节数。这个数字是基于个体载体的大小。

nids <- length(ids); # ids is a vector with 310 individuals;
nids
> [1] 310

nbytes <- ceiling(nids/4) # number of bytes = 78
nbytes
> [1] 78

然后,我从我感兴趣的文件数据中扫描......

rdta <- scan(file=file,what=raw(),quiet=TRUE)
> str(rdta)
 raw [1:16928790] 00 00 00 00 ...

接下来,我尝试将维度归因于此原始向量。但首先,我得到了我需要从文件中读取的snp标记的数量。 rdta向量刚刚读了这个信息。

nsnps <- 54609
dim(rdta) <- c(nbytes,nsnps)

然后,我收到了这个错误:

Error in dim(rdta) <- c(nbytes, nsnps) : 
  dims [product 4259502] do not match the length of object [16928790]

好的,我知道这是一个错误的问题。但是,我无法看到问题出在哪里。有没有人对此有所了解?似乎nsnps比nbytes大......

0 个答案:

没有答案