PI-680: Pharmacoinformatics - Python Programming (1 credit)
1.Introduction to Python: History of python, setting up python environment, Anaconda installation, Jupyter or Py-Charm Notebook, executing simple python programs, working of python, python character, print() function, variables, literals and data types.
2.Operators and data types: formatting numbers and strings, escape characters and quotes, string methods (length, string traversal, slicing, comparison, find, looping, counting, etc), operators (arithmetic, assignment, comparison, membership, boolean), string operators, introduction to numpy and pandas.
3.Control flow or decision statements in Python: Introduction to if, else and elseif, if statements, for and while loops, nested loops, break and continue statement.
4.Regular expression and functions: concept and type of regular expression, basics of function, use of functions, parameters and arguments, local and global scope of a variable, return statement and recursive functions.
5.Data structure: creating lists, basic list operators, slicing, inbuilt function of lists, splitting, need of dictionary, creating dictionary, adding and replacing values, retrieving values, deleting items and traversing dictionaries. Tuples and sets: creating tuples, tuple function, inbuilt tuple functions, operations on tuples. Stacks, queue, sorting (obvious sort) and search (naïve search) lists.
6.Classes and objects: Introduction to object, atom class, molecule class, creating class, instance methods, overloading, inheritance, polymorphism, overriding, public and private data, exception classes and custom exceptions.
7.Libraries and Data visualization in python: Introduction to libraries, importing libraries, visualization library (Matplotlib library, seaborn library), panda and numpy library, sklearn library, other libraries.
8.File handling: need of file handling, file types (text, binary, CSV), reading/writing text and numbers to/from a file; file opening modes (r, r+, w, w+, a, a+), reading (read(), readline(), readlines()), importing files, handling directories, using try-except blocks, else block, handling file not found error exception.
9.GUIs in Python: Introduction to GUI, components and events, example of GUI, root component, adding buttons, entry widgets, text widgets, check buttons etc
10.Python SQL database Access: Introduction to sql, installation, DB connection, creating DB table, database operation (INSERT, READ, UPDATE, DELETE, COMMIT, ROLLBACK), handling errors.
11.Machine learning: Introduction to algorithms (random forest, support vector machine, etc) and libraries, build your own model on small dataset and compare between different algorithms.