Last update: doc. RNDr. Jindřich Jindřich, CSc. (01.09.2022)
The aim of the course is to explain the basics of programming in scripting languages (Python, Javascript, Povray) in solving chemical problems. Topics discussed: Source code revision control systems (GIT). Python programming language, software processing of data files (.xls, .csv, .txt, .xml, .html), SQL databases, chemical structure formats (SMILES, mol, InChI, cml, ...) an their conversion, substructure searching. Using numpy, matplotlib with Jupyter for statistical calculations and for the graph generation. Using Povray for the preparation of graphics and animations. Using Django framework to create web applications.
Last update: doc. RNDr. Jindřich Jindřich, CSc. (01.09.2022)
Cílem předmětu je naučit základy programování ve skriptovacích jazycích (Python, Javascript, Povray) se zaměřením na řešení chemicky orientovaných problémů. Probíraná témata: Správa zdrojového kódu (GIT). Základy jazyka Python, programové zpracování datových souborů (.xls, .csv., .txt, .xml, .html), práce s SQL databázemi, chemické strukturní formáty (SMILES, mol, InChI, cml, ...) a jejich konverze, hledání podle struktury. Použití numpy, matplotlib s využitím Jupyter pro statistické výpočty a generování grafů. Použití Povray pro přípravu grafiky. Použití frameworku Django pro tvorbu webových aplikací.
Literature -
Last update: doc. RNDr. Jindřich Jindřich, CSc. (01.09.2022)
J.Gasteiger, T. Engel: Chemoinformatics: A Textbook http://www.amazon.com/Chemoinformatics-Textbook-Johann-Gasteiger/dp/3527306811
Requirements to the exam -
Last update: doc. RNDr. Jindřich Jindřich, CSc. (24.10.2019)
To pass the course, students have to successfully solve the practical exercises for each lecture.
Last update: doc. RNDr. Jindřich Jindřich, CSc. (08.05.2012)
Pro udělení zápočtu je nutné každý týden vyřešit úspěšně a včas praktická cvičení k tématům daného týdne.
Syllabus -
Last update: doc. RNDr. Jindřich Jindřich, CSc. (01.09.2022)
1. Source code management - overview of used systems - CVS, SVN, GIT, MERCURIAL ... - GIT, practical examples of use
2. Python programming language - introduction - working with command line - object-oriented approach - basic usage - processing of text files (.txt, .csv, ..) - testing
3. Working with HTML and XML files in Python - Python functions for internet communication - automatic download of pages/files from web pages - extraction of data from html page - xml files, structure and usage
4. Python and SQL databases - overview of used SQL systems - Python DB API - Work with data
5. Chemically oriented tasks in Python - chemical structural formats (SMILES, MOL, InChI, InChIKey, cml, ...) - Python libraries for working with chemical structures (openbabel, inchi)
6. Using Python for statistical calculations and graph generation - import data files - interleaving functions - visualization - graphs
7. Use of Povray for the preparation of professional quality graphics and animations - Povray scripts for creating 3D graphics (Ray-tracing)
8. Web applications - introduction - Python library functions for web server creation - overview of Python web frameworks (Zope, Pylons, Django, Flask, ...) - servers providing chemical services
9. Creating web applications with Django - Introduction to Django framework - template language - linking scripts to a web application
10. Web application, JavaScript and jQuery - creation of user-friendly AJAX applications
11. Testing of web applications - Selenium - Django tests
Last update: doc. RNDr. Jindřich Jindřich, CSc. (01.09.2022)
1. Správa zdrojového kódu - přehled používaných systemů - CVS, SVN, GIT, MERCURIAL... - GIT, praktické příklady použití
2. Programovacího jazyk Python - úvod - práce z příkazové řádky - objektový přístup - zakladní použití - zpracování textových souborů (.txt, .csv, ..) - testování
3. Práce s HTML a XML soubory v jazyce Python - Python funkce pro internetovou komunikaci - automatické stahování stránek/souborů z webovych stranek - extrakce údajů z html stránky
4. Python a SQL databáze - přehled používaných SQL systémů - Python DB API - práce s daty
5. Chemicky orientované úlohy v jazyce Python - chemické strukturní formáty (SMILES, MOL, InChI, InChIKey, cml, ...) - Python knihovny pro práci s chemickými strukturami (openbabel, inchi)
6. Použití Python pro statistické výpočty a generování grafů - import datových souborů - prokladání funkcí - vizualizace - grafy
7. Použití Povray pro přípravu grafiky a animací v profesionální kvalitě - Povray skripty pro tvorbu 3D grafiky (Ray-tracing)
8. Webové aplikace - úvod - knihovní funkce Python pro tvorbu webového serveru - přehled webových frameworků v jazyce Python (Zope, Pylons, Django, Pylons, Flask, ...) - servery poskytující chemické služby
9. Tvorba webových aplikací s Django - úvod do Django frameworku - templátovací jazyk - propojení skriptů s webovou aplikací
10. Webová aplikace, JavaScript a jQuery - tvorba uživatelsky přívětivých AJAX aplikací