我想使用这个readr
包来读取大的 fasta 文件并计算条目。该文件有多行,每个条目以>
. 一般来说,我对其他数据不感兴趣,我只想计算以 . 开头的行>
。
我认为最有效的方法是使用read_lines_chunked
from readr
package,但结果有点奇怪。
s <- '>a\nb\nc\n>d\ne\n>f\ng\n>h\ni\nj\n>k\nl'
f <- function(x, pos) x[grepl('^>', x)]
jnk <- readr::read_lines_chunked(s, readr::DataFrameCallback$new(f), chunk_size=5)
结果不是我预期的带有线条的单个向量,而是一个矩阵,甚至有奇怪的结果,因为它例如列出了>k
两次:
[,1] [,2]
[1,] ">a" ">d"
[2,] ">f" ">h"
[3,] ">k" ">k"
有人可以帮助我或建议一种更好的方法来计算以大文件开头的行>
而不将所有内容加载到内存中......