【问题标题】:Reading a file from a position in R从 R 中的某个位置读取文件
【发布时间】:2020-10-21 18:06:40
【问题描述】:

我有一个要在 R 中读取的大型纯文本文件,其中所有数据都包含在同一行中,没有空格(没有标题的 DNA 序列)。我找到了下一个函数:

readChar("filename",nchar=n)

它允许只读取文件的前“n”个元素,从而节省大量时间。 R 中是否还有另一个函数可以通过仅从 START 位置读取到 STOP 位置来更进一步,避免上传整个文件?

【问题讨论】:

    标签: r string dna-sequence systemtime


    【解决方案1】:

    基本上不,据我所知,您需要阅读整个文件,然后丢弃您不想要的字符。例如,如果您只需要每行的前 10 个字母:

    strsub(readChar("filename",nchar=n),1,10)
    

    但是,这篇文章 (How to efficiently read the first character from each line of a text file?) 展示了一些提高效率的方法。

    【讨论】:

    • 谢谢 Ricardo,我没有找到这篇文章,这是我正在寻找的内容,但不幸的是,似乎无法从无开始的位置读取文件。无论如何,用 readChar 代替 scan 可以大大缩短执行时间。另一方面,我没有发现来自 stringi 的 stri_sub 和来自 base 的 substring 之间用于大文件读取的任何区别。再次感谢!
    猜你喜欢
    • 2014-08-12
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 1970-01-01
    • 2010-11-18
    • 2021-07-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多