在R(8M列)中加载非常宽的浅数据

时间:2018-06-12 09:41:52

标签: r bigdata

我正在尝试将大约800万列和800行的文件加载到R中。文件是29GB,我在64GB RAM的机器上。我尝试过read.table,read_delim和read_table,fread和scan。全部崩溃或发出错误,例如:C stack usage 29359129 is too close to the limit.

以下是命令示例,所有命令都会导致崩溃或堆栈错误。

my_data <- fread("<filename.ext>" sep=" ")
my_data <- read_table("<filename.ext>", col_names=TRUE)
my_data <- scan("<filename.ext>", what = "raw")

我可以加载文件的转置版本,但不能在R内转置它而不会崩溃。关于大数据在这里和其他网站上有很多类似的问题,但我还没有找到任何适用于这种极宽数据的工作解决方案。

档案信息:
这是PLINK为基因组分析生成的PED文件。格式的详细信息可以在此页面的“二进制PED文件”下找到: zzz.bwh.harvard.edu/plink/data.shtml

我怎样才能把它变成R? R的使用对于我需要进行的特定基因组分析是必需的。我希望避免设置像Hadoop这样的分布式存储系统,并且不要认为这是必要的,因为我可以毫无困难地加载文件的转置。

可接受的解决方案可能涉及在R中加载转置和转置,但base::t导致崩溃,transposeBigData将无法在此版本的R上运行。

0 个答案:

没有答案