Python Forum
Adding Tables and Extracting Values from Tables - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: Data Science (https://python-forum.io/forum-44.html)
+--- Thread: Adding Tables and Extracting Values from Tables (/thread-12977.html)



Adding Tables and Extracting Values from Tables - jamescox11480 - Sep-21-2018

Hi there

I would like to know how to write Python code to add tables and extract values from tables which have more than two columns?
An example table is shown below:

Parameter_A|Parameter_B
___________|__1|__2|__3
2__________|_50|100|150
4__________|100|150|200
6__________|150|200|250
8__________|200|250|300

For example, when parameter A is 2, 4, 6 or 8, and parameter B is 1, 2 or 3, then what is the code to extract values from the table above?

Thanks in advance

James Cox


RE: Adding Tables and Extracting Values from Tables - mcmxl22 - Sep-21-2018

Here's how you create a database with sqlite.
import sqlite3 # you need this import at the beginning of the code.

conn = sqlite3.connect('example.db') 
cursor = conn.cursor()
sql = '''create table example (
         name1,
         name2,
         name3)'''
cursor.execute(sql)
cursor.close()
to see the table.
conn = sqlite3.connect('example.db')
cursor = conn.cursor()
sql = '''select * from example'''
results = cursor.execute(sql)
somevariable = results.fetchall()
for var in somevariable:
    print(var)



RE: Adding Tables and Extracting Values from Tables - jamescox11480 - Sep-22-2018

Hi mcmxl22

Thank you for your answer, although I don't know if the code you gave me is the answer to my query.

James


RE: Adding Tables and Extracting Values from Tables - jamescox11480 - Sep-28-2018

I have been advised that the answer to my own query is:

Nested list in a dictionary should do the trick. You could also use a matrix.

For example

lookup = {2:[50,100,150],4:[100,150,200],6:[150,200,250],8:[200,250,300]}

So if you want to get Parameter B value 2 of parameter A=6 then you can do

print(lookup[6][1])

This looks up the dictionary 'lookup' for key 6 which contains [150,200,250]. Then it returns index 1 (the second value) of that list =200.


RE: Adding Tables and Extracting Values from Tables - gruntfutuk - Sep-29-2018

You could represent a table as a list of lists, or a dictionary of lists, or a numpy matrix, or a dataframe in pandas, or a class, or ... well, lots of options really. It depends on what you are trying to do and the source of the data you are dealing with.

I see you picked a dictionary. Keep in mind that the keys in a dictionary must be unique, so you cannot repeat rows/columns.


RE: Adding Tables and Extracting Values from Tables - jamescox11480 - Sep-29-2018

Thanks gruntfutuk,

I have read your message. Thanks for writing, "Keep in mind that the keys in a dictionary must be unique, so you cannot repeat rows/columns."

James