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()