我的 R 应用程序从大型 txt 文件中读取输入数据。它不会读取整个内容 一次性归档。用户指定基因的名称(一次 3 或 4 个),然后应用程序根据用户输入转到相应的行并读取数据。
文件格式:32,000 行(每行一个基因,前两列包含有关 基因名称等)35,000 列数字数据(十进制数字)。
我使用read.table(filename,skip=10,000)等转到右行,然后读取 35,000 列数据。然后我对第二个基因、第三个基因再次执行此操作(最多 4 个基因) 然后对数值结果进行处理。
文件读取操作大约需要 1.5 到 2.0 分钟。我正在尝试 读取整个文件,然后获取所需基因的数据。
有什么办法可以加速这个过程吗?我可以用另一种格式重写基因数据(一个 时间处理)如果这会加速 future 的读取操作。
最佳答案
如果您知道文件的确切格式,则可以使用 read.table
的 colClasses
参数来加快速度。对于 2 个字符列和 34,998 (?) 数字列,您可以使用
colClasses = c(rep("character",2), rep("numeric",34998))
关于r - 优化 R 中的文件读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17348540/