我正在尝试使用“ Biostrings”软件包处理fas扩展文件。我尝试了多种不同的方式,用尽了Google搜索的技巧,但在不同的Web /博客/视频教程上却没有取得很大的成功。
请考虑以下文件路径: “ /mydesktop/DNAfile.fas”
我已经成功安装了Biostrings软件包和XVector。
library(Biostrings)
library(Vector)
然后我在下面几行中写道:
fas1 <- system.file("extdata", "/mydesktop/DNAfile.fas", package="Biostrings")
dna <- readDNAStringSet(fas1)
但是,这会产生如下错误:
Error in .Call2("new_input_filexp", filepath, PACKAGE = "XVector") : cannot open file ''
有人可以指导我进行此操作吗?有人在其他博客上建议其他用户他应该考虑将fas更改为FASTA,但是这将如何改变工作流程?
谢谢!
答案 0 :(得分:0)
我可能找到了答案。不确定我是否可以回答自己的问题。首先,@ Maurits和@Poshi的评论都是正确的。我再次感谢他们。这可能是他们上面明智提到的更长的版本,但是下面是我的思考过程。这是针对其他初学者的,他们可能会陷入与我经历的同样的误解,以节省他们的时间和精力。
首先,如果文件创建者无意通过故意使用其他扩展名来欺骗用户,则fas(或fasta,fa)文件本质上是相同的。知道它是否真正基于相同格式的一种方法是,只需在任何ASCII文本编辑器或等效环境中打开它们,然后浏览前几行。但是,请注意,如果文件太大,它将占用您的RAM,并使您的计算机不舒服。
第二,我检查了文件是否确实包含定义行以及序列。我知道这是一种钝器(可能并不完全准确),但是即使在我进入ASCII级别之前,我还是使用以下方法在R上打开了它:
g <- gzcon(file("/MyDesktop/Ecoli_Genome.fas", "r")) # set to your path
fas <- readLines(g) # read directly from .gz file
close(g) # close the file connection
head(fas) # lines of the FASTQ formatted file
您可以在这里用自己的眼睛查看所有序列。 但是很显然,这不能使您兼容在此序列上使用Biostrings!
确保正确安装了Biostrings。它无法 通过install.packages(“ Biostrings”)安装。这是来源。
source("https://bioconductor.org/biocLite.R")
该网页为: https://bioconductor.org/packages/release/bioc/html/Biostrings.html
第三,请了解fas(或fasta)可以将所有序列存储在一行中。它基本上是列表的一种复杂形式,并且您的序列可以以不同的方式存储,但是连续的碱基通常不需要分段存储。所以我的序列全都在一行中!
所以我的问题的解决方案是:
library(Biostrings)
dna <- readDNAStringSet("/MyDesktop/Ecoli_Genome.fas")
您可以通过打开进行确认:
> dna
A DNAStringSet instance of length 1
width seq names
[1] 4641652 AGCTTTTCATTCTGACTGCAACGGGCA...AAAAAACGCCTTAGTAAGTATTTTTC U00096.3
让我知道其他需要学习的评论。谢谢