Closed jkorstia closed 3 years ago
Hi Jenny,
try using the --verbatim
flag and see if that works for you.
-b
Hi Dr. Faircloth,
Unfortunately, I have tried it both with the --verbatim flag and without it. The error message seems to be the same either way.
Thanks, Jenny
hmm, that's odd. works for me in both software tests and on the desktop. can you send me a few alignments, as well as your taxon-set.incomplete.conf
and taxon-set.incomplete
- I'll try to take a look.
Hi Dr. Faircloth,
Here are three of my alignments, my .conf file and my .incomplete file. I added the .txt to the end so that github would allow the upload. Thanks for helping me!
uce-976.nexus.txt uce-971.nexus.txt uce-965.nexus.txt all-taxa-incomplete.incomplete.txt all-taxa-incomplete.conf.txt
I see what the issue is (it has to do with capitalization in your taxon names - which is something phyluce does not expect). The easiest way for you to fix this quickly is to edit the phyluce_align_add_missing_data_designators
, then make lines 158-165 look like this:
if not verbatim:
new_seq_name = "_".join(seq.name.split("_")[1:])
new_align.append(record_formatter(str(seq.seq), new_seq_name))
local_organisms.remove(new_seq_name)
else:
new_seq_name = seq.name.lower()
new_align.append(record_formatter(str(seq.seq), new_seq_name))
local_organisms.remove(seq.name)
You can find the file you need to edit by running which phyluce_align_add_missing_data_designators
. I'll also add this fix to the repository, but it will take a while for it to make it into a new version.
The updated version of your file should look like this file: https://github.com/faircloth-lab/phyluce/blob/main/bin/align/phyluce_align_add_missing_data_designators#L158-L165
Hello Dr. Faircloth,
I gave that a try, but I'm encountering a new error now. Those modifications allowed the script to make it past lines 158-165, but had an exception in the next loop. Any idea what's causing this new issue?
multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "/home/jkorstia/conda/envs/phyluce-1.7.1/bin/phyluce_align_add_missing_data_designators", line 173, in add_gaps_to_align assert loc in missing[org], "Locus missing" AssertionError: Locus missing
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "/home/jkorstia/conda/envs/phyluce-1.7.1/lib/python3.6/multiprocessing/pool.py", line 119, in worker result = (True, func(*args, *kwds)) File "/home/jkorstia/conda/envs/phyluce-1.7.1/lib/python3.6/multiprocessing/pool.py", line 44, in mapstar return list(map(args)) File "/home/jkorstia/conda/envs/phyluce-1.7.1/bin/phyluce_align_add_missing_data_designators", line 210, in add_designators missing_character, File "/home/jkorstia/conda/envs/phyluce-1.7.1/bin/phyluce_align_add_missing_data_designators", line 175, in add_gaps_to_align assert loc in missing["{}*".format(org)], "Locus missing" AssertionError: Locus missing """
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/jkorstia/conda/envs/phyluce-1.7.1/bin/phyluce_align_add_missing_data_designators", line 290, in
Thanks, Jenny
Hard to say. The big issue is that the test files you sent contain tons of alignments for lots of taxa, while you sent few alignments (I understand why - just trying to explain why testing is difficult). To test this scenario specifically, I would have to hand-edit the incomplete
and conf
files to include only the loci that you sent, which is super tedious.
If you want to zip up all the alignments you are inputting that go with the incomplete
and conf
files and email me a link to that zip file, I can test your actual scenario (and you won't need to post your data publicly). I'll discard the alignments after testing to make sure a fix works. Otherwise, I'm grasping at straws, because the above fixes the same theoretical problem in the test data that I use for phyluce.
Thanks for the context. I would really appreciate it if you are willing to try it out with my alignments because I am totally stumped. I have emailed you the alignments.
Thanks, Jenny
You are very welcome. I will not be able to get to this until monday, but hope you have a solution for you shortly after that (i'll also send you back the fixed alignments, so you can move forward ASAP).
Hi Jenny,
I can't seem to find the email you sent... will you send it to [my email - removed]? Thanks!
If you add the flag --no-check-missing
to the other flags you are using, things should work ok. I just ran:
phyluce_align_add_missing_data_designators \
--alignments trimmed_clean_75 \
--output test-out \
--match-count-output all-taxa-incomplete.conf \
--incomplete-matrix all-taxa-incomplete.incomplete \
--verbatim \
--no-check-missing
This fix did the job. Thanks Dr. Faircloth!
Right on 👍. You’re welcome.
Hi Dr. Faircloth,
I am encountering the same error that several others have encountered (issues #237, #139, etc.). I am trying to analyze my phased UCE alignments with STACEY in BEAST as described in Andermann et al 2019. In order to do so, I have tried to use phyluce_align_add_missing_data_designators to ensure that each of my nexus files has an entry for each species, which I think is required for BEAST. When doing so, I get the same error that others have gotten before: multiprocessing.pool.RemoteTraceback: """ Traceback (most recent call last): File "/home/jkorstia/conda/envs/phyluce-1.7.1/lib/python3.6/multiprocessing/po ol.py", line 119, in worker result = (True, func(*args, *kwds)) File "/home/jkorstia/conda/envs/phyluce-1.7.1/lib/python3.6/multiprocessing/po ol.py", line 44, in mapstar return list(map(args)) File "/home/jkorstia/conda/envs/phyluce-1.7.1/bin/phyluce_align_add_missing_da ta_designators", line 208, in add_designators missing_character, File "/home/jkorstia/conda/envs/phyluce-1.7.1/bin/phyluce_align_add_missing_da ta_designators", line 163, in add_gaps_to_align local_organisms.remove(new_seq_name) ValueError: list.remove(x): x not in list
Do you have a workaround for this script or another suggestion on how to process my many alignments? I can provide input files if it would be helpful.
Thanks, Jenny