我有一个包含 185405149 行和一个标题的文本文件。我正在这个 bash 脚本中阅读这个文件:
#!/bin/bash
#PBS -N R_Job
#PBS -l walltime=4:00:00
#PBS -l vmem=20gb
module load R/4.2.1
cd filepath/
R --save -q -f script.R
部分脚本如下:
# import the gtex data
gtex_data <- read.table("/filepath/file.txt", header=TRUE)
我收到错误:错误:无法分配大小为 2.0 Gb 的向量执行已停止。
它与目录/文件路径无关。我怀疑这与记忆有关。即使在压缩文件(例如 file.txt.gz)并使用以下命令之后:
gtex_data <- read.table(gzfile("/filepath/file.txt.gz"), header=TRUE)
它没有读取数据。
我尝试过使用较小的文件,例如读取 file.txt 的前 100 行并重命名并加载它,它工作正常。
我什至尝试过增加 vmem?不知道该怎么办。我将不胜感激的建议/帮助。
我还检查了文件的大小。
ls -lh file.txt -rw-r--r-- 1 ... 107M 10 月 26 日 16:50 file.txt