Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cannot write to output #41

Open
HandsYe opened this issue Nov 3, 2022 · 8 comments
Open

cannot write to output #41

HandsYe opened this issue Nov 3, 2022 · 8 comments
Assignees
Labels
question Further information is requested

Comments

@HandsYe
Copy link

HandsYe commented Nov 3, 2022

hi,how to resolve this problem ?

Writing to output...
Primers combination number 1
Number of written amplicons: 272
Sorting amplicons to multiplexes 1_2 (contain 272 amplicons)...
Number of designed multiplexes: 2
/software/NGS-PrimerPlex/NGS-PrimerPlex-1.3.3/NGS_primerplex.py:2655: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead
logger.warn(' # Number of designed multiplexes: '+str(len(cls)))
Number of amplicons in multiplex 1 78
software/NGS-PrimerPlex/NGS-PrimerPlex-1.3.3/NGS_primerplex.py:2658: DeprecationWarning: The 'warn' method is deprecated, use 'warning' instead
logger.warn(' # Number of amplicons in multiplex '+mults[z]+': '+str(len(cl)))
Number of amplicons in multiplex 2 80
Traceback (most recent call last):
File "/software/NGS-PrimerPlex/NGS-PrimerPlex-1.3.3/NGS_primerplex.py", line 4047, in
multiplexes=sortAmpliconsToMultiplexes(globalMultiplexesContainer,globalMultiplexNums,args,currentReadyMultiplexes)
File "/software/NGS-PrimerPlex/NGS-PrimerPlex-1.3.3/NGS_primerplex.py", line 2660, in sortAmpliconsToMultiplexes
leftNodesGraph.remove_nodes_from(allSortedAmpls)
File "/software/python3/Python-3.10.4/lib/python3.10/site-packages/networkx/classes/function.py", line 158, in frozen
raise nx.NetworkXError("Frozen graph can't be modified")
networkx.exception.NetworkXError: Frozen graph can't be modified

@aakechin
Copy link
Owner

aakechin commented Nov 3, 2022

@HandsYe I think that the problem in the versions of Python and/or networkx. Networkx was significantly changed in the new version (since 2.0 version) and NGS-PrimerPlex Python code became incompatible. Therefore, you need to install networkx 1.1.1 version as it is described in the Manual (https://github.com/aakechin/NGS-PrimerPlex#requirements).

@aakechin aakechin self-assigned this Nov 3, 2022
@aakechin aakechin added the question Further information is requested label Nov 3, 2022
@HandsYe
Copy link
Author

HandsYe commented Nov 3, 2022

@HandsYe I think that the problem in the versions of Python and/or networkx. Networkx was significantly changed in the new version (since 2.0 version) and NGS-PrimerPlex Python code became incompatible. Therefore, you need to install networkx 1.1.1 version as it is described in the Manual (https://github.com/aakechin/NGS-PrimerPlex#requirements).

thx,i will try。

@HandsYe
Copy link
Author

HandsYe commented Nov 4, 2022

it can work when i changed the version of python and networkx.

@HandsYe
Copy link
Author

HandsYe commented Nov 7, 2022 via email

@aakechin
Copy link
Owner

aakechin commented Nov 7, 2022

@HandsYe This step joins primer pairs that cover some region and can be located next to each other. For example, the following two primer pairs can not be joined to one amplified block
------>--------->_________
___________<-------<-------
The "internal_amplicons.fa" file contains sequences of amplicons but plus and minus 100. This question was already answered: #27
This allows users to open this sequence and move primers manually, if it is necessary.

@HandsYe
Copy link
Author

HandsYe commented Nov 8, 2022 via email

@aakechin
Copy link
Owner

aakechin commented Nov 8, 2022

Yes, it is the slowest step and now its duration is unpredictable because its done in the networkx via graphs. However, to speed up this process you can decrease the number of primers designed for each target (-primernum argument), increase -threads argument (if it is still not the maximal number of processor threads). However, the latter will work only for targets that are located on different chromosomes or far from each other. One more way is to split your target regions onto distinct files and run NGS-PrimerPlex in several distinct processes for each file. When primers are designed for each target distinctly, you will be able to join regions file into one file, join xls-files with designed primers into one file, and using the latter as draft primers run NGS-PrimerPlex to join all primers into multiplexes as you need. If some primers cannot be sorted to some multiplexes, they can be removed and the resulting file can be used again as draft primers.

@HandsYe
Copy link
Author

HandsYe commented Dec 1, 2022

Hi, what is algorithm this software uses to get the best combination of primers?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question Further information is requested
Projects
None yet
Development

No branches or pull requests

2 participants