faircloth-lab / phyluce

software for UCE (and general) phylogenomics
http://phyluce.readthedocs.org/
Other
78 stars 49 forks source link

error when running phyluce_assembly_match_contigs_to_probes #161

Closed fanvanf closed 3 years ago

fanvanf commented 5 years ago

Hello! I have been trying to run phyluce_assembly_match_contigs_to_probes and after testing some different probe name formats I still can't make it to run... I get this error ; ‘====== Starting phyluce_assembly_match_contigs_to_probes ======= 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Version: git fatal: git fatal: Not a git repository: '/home/train/anaconda3/envs/fcx2.7/lib/python2.7/site-packages/.git' 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --contigs: /root/contigs 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --dupefile: None 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --keep_duplicates: None 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --log_path: None 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --min_coverage: 80 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --min_identity: 80 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --output: /root/uce-search-results 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --probes: /root/Target_Locus_Set.fasta 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --regex: ^(uce-\d+)(?:_p\d+.*) 2019-06-14 19:49:19,460 - phyluce_assembly_match_contigs_to_probes - INFO - Argument --verbosity: INFO Traceback (most recent call last): File "/root/CTD/miniconda/envs/phyluce/bin/phyluce_assembly_match_contigs_to_probes", line 342, in main() File "/root/CTD/miniconda/envs/phyluce/bin/phyluce_assembly_match_contigs_to_probes", line 245, in main uces = set(new_get_probe_name(seq.id, regex) for seq in SeqIO.parse(open(args.probes, 'rU'), 'fasta')) File "/root/CTD/miniconda/envs/phyluce/bin/phyluce_assembly_match_contigs_to_probes", line 245, in uces = set(new_get_probe_name(seq.id, regex) for seq in SeqIO.parse(open(args.probes, 'rU'), 'fasta')) File "/root/CTD/miniconda/envs/phyluce/bin/phyluce_assembly_match_contigs_to_probes", line 234, in new_get_probe_name return match.groups()[0] AttributeError: 'NoneType' object has no attribute 'groups'‘’` Here is the code: phyluce_assembly_match_contigs_to_probes \ --contigs contigs \ --probes Target_Locus_Set.fasta \ --output uce-search-results And I can't also run phyluce_assembly_assemblo_trinity.py .It is the same error : git fatal: Not a git repository: '/home/train/anaconda3/envs/fcx2.7/lib/python2.7/site-packages/.git' I reinstall the phyluce,and the problem is still . So what should I do to slove this iproblem?

brantfaircloth commented 5 years ago

Are you using baits that you designed? If you’re using the “official” UCE baits, you should not need to change anything.

fanvanf commented 5 years ago

Are you using baits that you designed? If you’re using the “official” UCE baits, you should not need to change anything. It works when using the "official"UCE baits.Tks

brantfaircloth commented 5 years ago

ok. if you send an example of the header of your bait file, I may be able to suggest a regular expression that will work.

zivlie commented 4 years ago

Hi Dr. Faircloth, I'm having a similar issue matching contigs to non-standard baits with the same error messages. In my case I'm using published mt genomes. The headers in the fasta file (converted from .gb) are either in the format ">TPA_INF: PSEUDOMYRMEX GRACILIS MITOCHONDRION, COMPLETE GENOME." or ">TPA: PSEUDOMYRMEX JANZENI MITOCHONDRION, COMPLETE GENOME.". I've had no issues matching the contigs to the official baits so I don't think its a simple issue with pathnames etc. The code I'm using:

phyluce_assembly_match_contigs_to_probes \
--contigs <path to contigs> \
--probes <path to probes> \
--output <output> \
--regex='^>TPA.*GENOME\.'

I've also tried using capturing groups in the regexp and had the same results. When I filter the .fasta in my shell by grepping with the expression above it correctly returns each name.