I am looking to create Python classes that read a specific schema from any database. I will provide you the scheme, it contains about 23 tables. The classes must be able to read from an H2 database. The data is read on every invocation of a method that reads a particular table. The method will load the data into a pandas DataFrame and return it.
In addition, I am looking for charting capabilities using matplotlib. There will be 5 charts that will need to be created using data from these 23 tables.
This will be packaged as an importable library. We'll call this library pycordence. Here is some representative Python code on how these classes should work. Imagine there are 15 tables, TABLE1..TABLE15
node = Node (url,username,password) # Connects to a database
df = node.get_table1() # Retrieves the data from TABLE1, puts it into a DataFrame and returns
df = node.get_table2() #Does same for TABLE2...
node.display_stat1() # Displays a matplotlib chart using data from the 23 tables
- Must use Python 3, latest version major / minor version
- Adhere to well established Python naming conventions
- Must use pandas. Additional SQL libraries are allowed (i.e. SQLAlchemy, NumPy) but methods must return DataFrames
- Must connect to H2 database (I found this to not be easy, Postgres drivers may fail)
- Must be packaged so that it can be rolled out and pip'd by others
- All source code must be documented completely
- A README must be provided with notes on how to use, any potential issues
I will provide the database schema after I select the right person for this job.