<jupyter_start><jupyter_text>Complementary DNA Strands  Instructions to Students- **Do not add or remove cells in this notebook. Do not edit or remove the ` START FUNCTION` or ` END FUNCTION` comments. Do not add any code outside of the functions you are required to edit. Doing any of this will lead to a mark of 0%!**- Answer the questions according to the specifications provided.- Use the given cell in each question to to see if your function matches the expected outputs.- Do not hard-code answers to the questions.- The use of stackoverflow, google, and other online tools are permitted. However, copying fellow student's code is not permissible and is considered a breach of the Honour code below. Doing this will result in a mark of 0%.- Good luck, and may the force be with you!  Honour code I **YOUR NAME, YOUR SURNAME**, confirm - by submitting this document - that the solutions in this notebook are a result of my own work and that I abide by the EDSA honour code (https://drive.google.com/file/d/1QDCjGZJ8-FmJE3bZdIQNwnJyQKPhHZBn/view?usp=sharing).  Non-compliance with the honour code constitutes a material breach of contract.  Challenge In coding challenge 2, you were introduced to RNA synthesis. DNA differs from RNA because RNA is one strand compared to DNA which is double stranded.It also differs in that instead of the U nucleotide, it contains a T. Below is an example of the different structures taken from: https://byjus.com/biology/difference-between-dna-and-rna/:The same lab was extremely impressed with the first code and now wants a new one. They want to find the complementary strands of DNA. Here is the low-down:A links with T and vice versaC links with G and vice versaAn example of the complementary strand for the code ATCGGAATGCC is TAGCCTTACGGYou are tasked to create a function dna_complementary which finds the complementary strand for a given DNA strand based on the above criteria. The function must return a string of the codeThis kind of code can be really helpful as a product. Imagine trying to get DNA strands for thousands of sequences which are thousands of nucleotides long. This is the power of python and coding!**Hint**: We didn't teach you dictionaries for nothing<jupyter_code>from IPython.display import Image
from IPython.core.display import HTML 
Image(url = 'https://github.com/Explore-AI/Pictures/blob/master/Difference-Between-DNA-and-RNA.png?raw=true')
### START FUNCTION
def dna_complementary(dna):
    # your code here
    dna_pairs = {'A':'T','T':'A','C':'G','G':'C'}    
    return ''.join([dna_pairs[x] for x in dna])
### END FUNCTION
dna_complementary('ATCGGACTACGA')<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.06524184476940383, 'fraction_numerical': 0.0022497187851518562, 'mean_word_length': 4.616842105263158, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 3, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '1', 'dir': 'jupyter-structured-clean-dedup', 'id': '168144', 'license': 'MIT', 'n_tokens_mistral': 764, 'n_tokens_neox': 699, 'n_words': 378, 'path': 'Explore Assignments/user_complementary_dna_strands_student_version.ipynb', 'repo_name': 'George-Kibe/Data-Science', 'size': '2667'}