Take the 2-minute tour ×
Biology Stack Exchange is a question and answer site for biology researchers, academics, and students. It's 100% free, no registration required.

I am looking for a large collection (>1000) of sequence files (eg. FASTA) from any real organism or a tool to create such a collection.

The sequence files would be used for teaching and for testing automation methods.

Students would be assigned one unique sequence file and asked to look at it (eg. using gORF) and to identify it (using BLASTn).

The sequence file would thus need to contain only the sequence data (no meta data about species or gene).

I would need an associated answer sheet.

share|improve this question

closed as not a real question by GWW, jonsca, Michael Kuhn, GriffinEvo, MCM Jan 2 '13 at 20:52

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, visit the help center.If this question can be reworded to fit the rules in the help center, please edit the question.

2  
I think you need to elaborate more on what you are trying to accomplish. Furthermore, you may get more help on biostar –  GWW Feb 27 '12 at 4:50
    
This question I asked in biostar seems related - Examples of DNA sequence motif sets for testing search algorithm –  Faheem Mitha Apr 18 '12 at 21:08

3 Answers 3

There are a couple key words in this question - anonymous and teaching. Yes, NCBI is a source for sequence data, but it is not anonymous (it is annotated, which means a student could also find it and copy/paste that annotation without doing the actual analysis). Notice, I am not assuming that the request is for human data. Now, if anonymous human data are needed, most available sequence data are anonymous but there remains that annotation issue: If it is annotated already, what will they learn?

A good alternate source for some human genome data would be from Complete Genomics. They have released anonymized (de-identified) data for at least 69 subjects. The question asks about 1000 sequences, but how large? This is an important consideration. Other details are also lacking in the question.

Another source may be the 1000 Genomes data, also human. If you're interested in plants, there are sequence data out there from ~98 different Arabidopsis thaliana accessions/cultivars/strains.

share|improve this answer
up vote 5 down vote accepted

Here is the approach I ended up using, in part thanks to all the contributions here.

The associated R script is below or can be downloaded from:

BOLDS SEQUENCE RECOVERY

This creates 999 unique sequence files in plain text, with each sequence being identified to species level and few species being found across more than one sequence.

It also creates the matching answer key.

You can start at a random location to so that files change every year/group.

I used R to query the BOLDS database (Barcode of Life), to download a file and to split this huge file into separate sequences.

Here is the R script

rm(list=ls())

complete<-"http://services.boldsystems.org/eFetch.php?record_type=full&id_type=sampleid&ids=(*)&return_type=text"
write(complete, file="your location on disk")

rm(list=ls())

sequences.id<-data.frame("file.name", "recordID", "genus_name", "species_name")
write.table(x=sequences.id, file="sequences_id.csv", append=F, sep = ",", row.names=F, col.names=F)



set.seed(10)
start<-sample(1:1000, size=1)

i<-start
k<-1

while(k < 1000){

  sequences<-read.delim(file=complete, skip=i, nrows=1, header=F)
  sequence.compare<-read.csv(file="sequences_id.csv", skip=k-1, nrows=1, header=F)

  if(! is.na(sequences$V24)){
    if(as.character(sequences$V24)!=as.character(sequence.compare$V4)){
      writeLines(text=as.character(sequences$V55), con=paste(k, ".txt", sep=""))
      sequences.id<-c(k, sequences[,c("V3","V22", "V24")])
      write.table(x=sequences.id, file="sequences_id.csv", append=T, sep = ",", row.names=F, col.names=F)
      print("kept")
      k<-k+1
    }
  }
  i<-i+1
  print(paste(k,"/", i))
}
share|improve this answer

This is probably not the most elegant way but you could go to NCBI and search for nucleotide sequences from a given organism (eg., txid9606[Organism:exp] gives all sequences from Homo sapiens). Then you could use the Send to dropdown to download all the results as a compiled FASTA file.

share|improve this answer
2  
NCBI also offers some APIs, which would make the process cleaner and allow better filtering. –  nico Feb 27 '12 at 6:59

Not the answer you're looking for? Browse other questions tagged or ask your own question.