public static void writeSeqs( final List<MolecularSequence> seqs, final Writer writer, final SEQ_FORMAT format, final int width ) throws IOException { switch ( format ) { case FASTA: for( final MolecularSequence s : seqs ) { toFasta( s, writer, width ); writer.write( ForesterUtil.LINE_SEPARATOR ); } break; default: throw new RuntimeException( "unknown format " + format ); } } }
@Override public Msa infer( final List<MolecularSequence> seqs, final List<String> opts ) throws IOException, InterruptedException { final File file = File.createTempFile( "__mafft_input_", ".fasta" ); file.deleteOnExit(); final BufferedWriter writer = new BufferedWriter( new FileWriter( file ) ); SequenceWriter.writeSeqs( seqs, writer, SEQ_FORMAT.FASTA, 100 ); writer.close(); final Msa msa = infer( file, opts ); file.delete(); return msa; }
private void writeToFasta( final Writer w ) throws IOException { SequenceWriter.writeSeqs( asSequenceList(), w, SEQ_FORMAT.FASTA, 100 ); }
private static boolean testSequenceWriter() { try { final String n = ForesterUtil.LINE_SEPARATOR; if ( !SequenceWriter.toFasta( "name", "awes", 5 ).toString().equals( ">name" + n + "awes" ) ) { return false; } if ( !SequenceWriter.toFasta( "name", "awes", 4 ).toString().equals( ">name" + n + "awes" ) ) { return false; } if ( !SequenceWriter.toFasta( "name", "awes", 3 ).toString().equals( ">name" + n + "awe" + n + "s" ) ) { return false; } if ( !SequenceWriter.toFasta( "name", "awes", 2 ).toString().equals( ">name" + n + "aw" + n + "es" ) ) { return false; } if ( !SequenceWriter.toFasta( "name", "awes", 1 ).toString() .equals( ">name" + n + "a" + n + "w" + n + "e" + n + "s" ) ) { return false; } if ( !SequenceWriter.toFasta( "name", "abcdefghij", 3 ).toString() .equals( ">name" + n + "abc" + n + "def" + n + "ghi" + n + "j" ) ) { return false; } } catch ( final Exception e ) { e.printStackTrace(); return false; } return true; }
@Override public Msa infer( final List<MolecularSequence> seqs, final List<String> opts ) throws IOException, InterruptedException { final File file = File.createTempFile( "__clustalo_input_", ".fasta" ); file.deleteOnExit(); final BufferedWriter writer = new BufferedWriter( new FileWriter( file ) ); SequenceWriter.writeSeqs( seqs, writer, SEQ_FORMAT.FASTA, 100 ); writer.close(); final Msa msa = infer( file, opts ); file.delete(); return msa; }
public static StringBuilder toFasta( final MolecularSequence seq, final int width ) { return toFasta( seq.getIdentifier(), seq.getMolecularSequenceAsString(), width ); }
public static void writeSeqs( final List<MolecularSequence> seqs, final File file, final SEQ_FORMAT format, final int width ) throws IOException { final Writer w = ForesterUtil.createBufferedWriter( file ); SequenceWriter.writeSeqs( seqs, w, format, width ); w.close(); }
seqs = FastaParser.parse( new FileInputStream( file ) ); for( final MolecularSequence seq : seqs ) { System.out.println( SequenceWriter.toFasta( seq, 60 ) );
private static void execute( final File outdir, final File infile ) { final File outfile = new File( outdir.getAbsolutePath().toString() + "/" + infile.getName() ); if ( outfile.exists() ) { System.out.println( outfile + " already exists" ); } else { try { final List<MolecularSequence> seqs = FastaParser.parse( new FileInputStream( infile ) ); final Map<String, Short> names = new HashMap<String, Short>(); int duplicates = 0; for( final MolecularSequence seq : seqs ) { if ( procSeq( infile.toString(), names, seq ) ) { ++duplicates; } } if ( duplicates > 0 ) { SequenceWriter.writeSeqs( seqs, outfile, SEQ_FORMAT.FASTA, 60 ); } } catch ( final IOException e ) { ForesterUtil.fatalError( PRG_NAME, e.getMessage() ); } } }
ann_str = ann.toString(); sb.append( SequenceWriter.toFasta( ann_str, n.getNodeData().getSequence() .getMolecularSequence(), 60 ) ); data.add( sb.toString() );
final public String writeAndAlignRemovedSeqs() throws IOException, InterruptedException { final StringBuilder msg = new StringBuilder(); final String n = _removed_seqs_out_base + "_" + _removed_seqs.size() + ".fasta"; SequenceWriter.writeSeqs( _removed_seqs, new File( n ), SEQ_FORMAT.FASTA, 100 ); msg.append( "wrote " + _removed_seqs.size() + " removed sequences to " + "\"" + n + "\"" ); if ( _realign ) { final MsaInferrer mafft = Mafft.createInstance( _path_to_mafft ); final List<String> opts = new ArrayList<String>(); for( final String o : _maffts_opts.split( "\\s" ) ) { opts.add( o ); } final Msa removed_msa = mafft.infer( _removed_seqs, opts ); final Double gr = MsaMethods.calcGapRatio( removed_msa ); String s = _removed_seqs_out_base + "_" + removed_msa.getNumberOfSequences() + "_" + removed_msa.getLength() + "_" + ForesterUtil.roundToInt( gr * 100 ); final String suffix = obtainSuffix(); s += suffix; writeMsa( removed_msa, s, _output_format ); msg.append( ", and as MSA of length " + removed_msa.getLength() + " to \"" + s + "\"" ); } return msg.toString(); }
SequenceWriter.writeSeqs( entry.getValue(), of, SEQ_FORMAT.FASTA, 60 );
SequenceWriter.writeSeqs( seqs, outfile, SEQ_FORMAT.FASTA, 60 );