Merge OTU Maps or Merge OTU tables?

75 views
Skip to first unread message

Samuel Major

unread,
Jul 20, 2016, 10:25:38 PM7/20/16
to Qiime 1 Forum
Hello,
I just picked OTUs (pick_otus.py) with Silva123 for both 16S and 18S, separately, because I was getting some odd errors telling me IOError: [Errno 2] No such file or directory: '/tmp/tmpW80EUUXgMLTSrmBk9SPi.txt'. But that's beside the current issue. 

Now I want to combine both sets of data. There seems to be 2 ways of doing that; 1) merge_otu_tables.py, that looks like it just combines both otu tables after using make_otu_table.py That seems simple enough. but then I looked into 2) merge_otu_maps.py which sounds a bit more robust after reading the description. This is where I have a few questions.

First for the immediate issue, I passed the code:
merge_otu_maps.py -i F15_ALL_Silva/16S_only_Silva123_otus/16s_seqs_otus.txt,F15_ALL_Silva/18S_only_Silva123_otus/18S_seqs_otus.txt -o F15_ALL_Silva/16S_18S/16S_18S_map.txt
and it returned the error:
Some keys do not map ('MS4.9.23.18S_159690') -- is the order of your OTU maps equivalent to the order in which the OTU pickers were run? If expanding a failures file, did you remember to leave out the otu map from the run which generated the failures file?
I do not know what this means. It sounds like I can't use the OTU map that pick_otus.py generated, because it created a file named 16S_seqs_failures.txt and 18S_seqs_failures.txt. Is that what this is referring to?
merge_otu_maps.py also suggests expanding the failed sequences. What does this mean? Is it necessary and why? 
Since I have 2 sets of data I want to combine should I combine both the failed sequences and then pass -f that table with the merged otu maps I'm trying to generate?

Have I gone too far ahead of myself, and should I just combine the biom tables generated from the non-failed seqs using merge_otu_tables.py?

As always, Thank you! You guys are the best.
Sam

Constantino Schillebeeckx

unread,
Jul 26, 2016, 11:57:46 AM7/26/16
to Qiime 1 Forum
Did you use uclust_ref to do OTU picking?  If so, it looks like the documentation says you need to reference the failures file too:
Some OTU pickers (e.g. uclust_ref) will generate a list of failures for sequences which could not be assigned to OTUs. If this occurs in a chained OTU picking process, the failures file will need to be expanded to include the orignal sequence ids. To do this, pass the failures file via -f, and the otu maps up to, but not including, the step that generated the failures file.

Anyway, if your goal is to have a merged OTU table, just use merge_otu_tables.py 
Reply all
Reply to author
Forward
0 new messages