如何在 R 中导入大型数据库?
How to import big databases in R?
我正在尝试使用 Rstudio 以 .txt 格式导入一个大数据库 (80mb aprox)。
我曾尝试使用“big memory”/“biganalytics”/“bigtabulate”库,但在导入后出现“R Session Aborted”错误。
read.big.matrix("C:/data.txt",
type = "integer",
header = TRUE,
backingfile = "x",
descriptorfile = "y",
extraCols = NULL)
有什么想法吗?
提前致谢!
I am trying to import a big database (80mb aprox) in .txt format with Rstudio.
80Mb 不算大文件。
我假设你的意思是 80Gb。如果是这样,那么我会建议 运行 具有更多资源(即 RAM)的计算机上的工作负载。如今,随着 AWS、GCP 和 Azure 等可扩展云资源的普及,这很容易做到。
另一方面,如果您被迫使用 RAM 不足的机器,那么您可以尝试使用 R 包,将部分数据保存在 RAM 中,部分保存在磁盘上。显然,与 RAM 中的所有内容相比,这会导致性能下降。一个这样的包是 disk.frame
:
https://www.rdocumentation.org/packages/disk.frame/versions/0.7.1
我正在尝试使用 Rstudio 以 .txt 格式导入一个大数据库 (80mb aprox)。
我曾尝试使用“big memory”/“biganalytics”/“bigtabulate”库,但在导入后出现“R Session Aborted”错误。
read.big.matrix("C:/data.txt",
type = "integer",
header = TRUE,
backingfile = "x",
descriptorfile = "y",
extraCols = NULL)
有什么想法吗?
提前致谢!
I am trying to import a big database (80mb aprox) in .txt format with Rstudio.
80Mb 不算大文件。
我假设你的意思是 80Gb。如果是这样,那么我会建议 运行 具有更多资源(即 RAM)的计算机上的工作负载。如今,随着 AWS、GCP 和 Azure 等可扩展云资源的普及,这很容易做到。
另一方面,如果您被迫使用 RAM 不足的机器,那么您可以尝试使用 R 包,将部分数据保存在 RAM 中,部分保存在磁盘上。显然,与 RAM 中的所有内容相比,这会导致性能下降。一个这样的包是 disk.frame
:
https://www.rdocumentation.org/packages/disk.frame/versions/0.7.1