mo105 / dreamteam Goto Github PK
View Code? Open in Web Editor NEWBioinformatics Software Development Group Project
Bioinformatics Software Development Group Project
-document how the schema was designed
-why they were designed that way
-what was used to create the database
-creating and maintaining a documentation of each of our part
-describing why we choose certain sites, methods etc
-documents what was chosen and why
I've drafted a new possible alternate phosphosite search page for everyone to see, just to make sure we're all on the same page. Please let me know if I misunderstood anything.
-when user upload a file, controller will create a list of dictionaries where substrate is the key, and phosphosite is the value
-create functions to return a list of kinase
For the user defined parameters, I have been thinking that it would be good to have this functionality:
Do these sound okay?
Following my update on Sunday, the file app.py could not be ran on Windows. I've make a few amendments:
Then, I've tested on both Windows and Linux, using Powershell, Ubuntu (WSLv2), Ubuntu (Linux) and Pycharm. The following methods work fine when I tested them
On powershell:
python3 app.py
On Ubuntu within Windows both of these worked:
python3 app.py
and
flask run
On linux both of these worked:
python3 app.py
and
flask run
On pycharm it works on Windows and Linux using the run button (provided the Working directory is set).
Sorry for the inconvenience
-documents the what's and why's for getting the kinase names, protein names and the aliases
def get_gene_protein_name(kinase_input):
"""
Returns a list of dictionary.
In the dictionary, there are gene name and protein name.
Returns empty list when no match is found.
>> kin = "AKT"
>> get_gene_protein_name(kin)
[{'Gene Name': 'AKT', 'Protein Name': 'RAC-alpha serine/threonine-protein kinase'},
{'Gene Name': 'AKT', 'Protein Name': 'RAC-beta serine/threonine-protein kinase'},
{'Gene Name': 'AKT', 'Protein Name': 'RAC-gamma serine/threonine-protein kinase'}]
"""
like_kin = "%{}%".format(kinase_input)
tmp = []
kinase_query = s.query(KinaseGeneMeta).join(KinaseGeneName).filter(or_(KinaseGeneName.gene_alias.like(like_kin), KinaseGeneMeta.uniprot_entry.like(like_kin),
KinaseGeneMeta.uniprot_number.like(like_kin), KinaseGeneMeta.protein_name.like(like_kin))).all()
for row in kinase_query:
results = {}
results["Gene_Name"] = row.to_dict()["gene_name"]
results["Protein_Name"] = row.to_dict()["protein_name"]
tmp.append(results)
return tmp
kin = "AKT"
-the part where the user upload a file and we need to display the relative activity visually
So I had a look at the sites that we talked about yesterday and at uniprot again. I have a few points which I'd like some input on.
Tldr: I think we should use uniprot for the kinase info part but we'll need to discuss which part we need. Inhibitor website is ok to export the data.
-document the how's, why's, what's and where's of getting the subcellular location for the kinase
-include a brief README.md to say which file is what
-when user search for something, the website would need to pull the information from the database
-more info on this: need to read around the subject
Question: In the search bar in the inhibitor page, are we allowing user to search an inhibitor or a gene? If we're allowing both, can we have a box that drop down next to it to specify inhibitor or gene?
-gene_name
-Uniprot_id
-Protein_name
-Gene_aliases
-documents the how's, what's, why's and where's of getting the information on inhibitors
-include a brief README.md in the folder to say what file is what
I'm going to pre-emptively create the functions for the following page.
Getting additional information for inhibitors so the final individual inhibitor page contains:
-inhibitor name
-inhibitor aliases
-empirical formula
-molecular weight
-smiles
-pubchem ID
-Inchi
-Image url
-target
I am in the process of making the project plan at the moment . So i was wondering does this look ok ?
Week 1:
Research (everyone)
Data mining (everyone)
Web Site Creation (Mo)
Week 2:
Data mining continue (everyone)
Database creation with SQL and organisation (Han)
Input software creation (Sheridan)
Week 3 :
Data mining continue (everyone)
Database creation with SQL and organisation Continue (Han)
Website creation (Mo)
- Anastasia : Help Page
- Task of Controller : Alisha
Documentation (everyone)
-Finalize a list of human_kinases
def get_inhibitors_from_gene(kinase_gene):
"""
Take a string and return a list of dictionaries.
Returns empty list if there are no inhibitors.
>> get_inhibitors_from_gene("SGK1")
['GSK650394A', 'SGK-Sanofi-14i','SGK1-Sanofi-14g', 'SGK1-Sanofi-14h', 'SGK1-Sanofi-14n']
"""
results = []
kinase_query = s.query(KinaseGeneName).filter(KinaseGeneName.gene_alias==kinase).one()
for inhibitor in kinase_query.inhibitors:
results.append(inhibitor.inhibitor)
return results
kinase = "SGK1"
get_inhibitors_from_gene(kinase)
Final genomic location file has duplicated results and some data loss so I'm looking into fixing this.
Please go over sql
-Gene_name
-Uniprot_number(?)
-Cellular_location
-Gene_name
-Phosphosites
-Genomic_location
-Neighbouring_sequences
Hey, could everyone give me their respective column names? If you decide to change it at the end, it'll be fine, just send me a message.
Create the inhibitor csv.
Should contain the following columns:
-create functions to query database for kinases
-creating the website
-Gene_name
-Phosphorylation_sites
-documents the where's, when's, why's and how's of getting the details of phosphosites and substrates.
-include a brief README.md to say what file is what
-documents the how's, what's and why's of getting the genomic location
-include a README.md in the folder
creating the help page
create function to return all the information about an inhibitor.
Used when a user clicks on the inhibitor from the table. It will take them to the individual page for that inhibitor.
-using sqlite and sqlalchemy to create the database
-creating the functions to parse the info
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.