24 lines
687 B
Python
24 lines
687 B
Python
from sqlalchemy import text
|
|
|
|
import pandas as pd
|
|
|
|
from orm import connection
|
|
|
|
# SQL query
|
|
with open("../SQL_analysis_risk.sql", "r", encoding="utf-8") as f:
|
|
str_sql = text(f.read())
|
|
|
|
result = pd.read_sql(sql=str_sql, con=connection)
|
|
# Count firm product
|
|
count_firm_prod = result.value_counts(subset=['id_firm', 'id_product'])
|
|
count_firm_prod.name = 'count'
|
|
count_firm_prod = count_firm_prod.to_frame().reset_index()
|
|
|
|
# Count product
|
|
count_prod = count_firm_prod.groupby('id_product')['count'].sum()
|
|
count_prod = count_prod.to_frame().reset_index()
|
|
count_prod.sort_values('count', inplace=True, ascending=False)
|
|
print(count_prod)
|
|
top100 = count_prod.head(100)['id_product'].tolist()
|
|
|