PADME Train Wiki
Train Selection
Search
Trains
SupplierRatingTest
863
main.py
Code fragments of main.py
import psycopg2
import os
import json
conn = psycopg2.connect(database=os.environ["DB_NAME"], user=os.environ["DATA_SOURCE_USERNAME"], host=os.environ["DATA_SOURCE_HOST"], password=os.environ["DATA_SOURCE_PASSWORD"], port=os.environ["DATA_SOURCE_PORT"] )
conn = psycopg2.connect(database=os.environ["DB_NAME"], user=os.environ["DATA_SOURCE_USERNAME"], host=os.environ["DATA_SOURCE_HOST"], password=os.environ["DATA_SOURCE_PASSWORD"], port=os.environ["DATA_SOURCE_PORT"] )
cursor = conn.cursor()
cursor.execute("SELECT * FROM supplier_ratings")
ratings = cursor.fetchall()
# entry: (1, 'Supplier 2448', 'GmbH', 'In time', 20, 6, 456)
distinct_suppliers = list({r[1] for r in ratings})
def cnt_in_time(supplier):
return sum(1 for x in ratings if x[3] == "In time" and x[1] == supplier)
def cnt_occ(supplier):
return sum(1 for x in ratings if x[1] == supplier)
def calc_score(cnts_in_time, cnts):
score = (100/ cnts) * cnts_in_time
return round(score, 2)
supplier_score_dict = dict([(supplier, calc_score(cnt_in_time(supplier), cnt_occ(supplier))) for supplier in distinct_suppliers])
# result: {'Supplier 2234': 50.0, 'Supplier 2448': 100.0}
print(supplier_score_dict)
result_file = 'result.json'
with open(result_file, 'w') as f:
json.dump(supplier_score_dict, f)
Graph
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
undefined
main.py
import psycopg2
None
import os
import json
conn = psycopg2.connect(database=os.environ["DB_NAME"], user=os.environ["DATA_SOURCE_USERNAME"], host=os.environ["DATA_SOURCE_HOST"], password=os.environ["DATA_SOURCE_PASSWORD"], port=os.environ["DATA_SOURCE_PORT"] )
cursor = conn.cursor()
cursor.execute("SELECT * FROM supplier_ratings")
ratings = cursor.fetchall()
# entry: (1, 'Supplier 2448', 'GmbH', 'In time', 20, 6, 456)
distinct_suppliers = list({r[1] for r in ratings})
def cnt_in_time(supplier):
return sum(1 for x in ratings if x[3] == "In time" and x[1] == supplier)
def cnt_occ(supplier):
return sum(1 for x in ratings if x[1] == supplier)
def calc_score(cnts_in_time, cnts):
score = (100/ cnts) * cnts_in_time
return round(score, 2)
supplier_score_dict = dict([(supplier, calc_score(cnt_in_time(supplier), cnt_occ(supplier))) for supplier in distinct_suppliers])
# result: {'Supplier 2234': 50.0, 'Supplier 2448': 100.0}
print(supplier_score_dict)
result_file = 'result.json'
with open(result_file, 'w') as f:
json.dump(supplier_score_dict, f)
Search
Train Selection