A ANS (Agência Nacional de Saúde Suplementar) é responsável pela regulação do setor de planos de saúde no Brasil. O portal de dados abertos da ANS disponibiliza informações sobre:
Beneficiários — número de pessoas cobertas por planos de saúde, por UF, município, faixa etária, tipo de plano
Operadoras — cadastro de operadoras de planos de saúde (nome, CNPJ, registro ANS, situação)
Reclamações — reclamações de consumidores contra operadoras
Demonstrações contábeis — dados financeiros das operadoras
Procedimentos — rol de procedimentos obrigatórios
TUSS — Terminologia Unificada da Saúde Suplementar
O portal utiliza a plataforma CKAN, permitindo acesso via API.
import pandas as pd# Download do CSV de beneficiáriosdf = pd.read_csv( "beneficiarios_ans.csv", sep=";", encoding="utf-8", dtype=str,)print(f"Total de registros: {len(df):,}")# Converter beneficiários para numéricodf["QT_BENEFICIARIOS"] = pd.to_numeric(df["QT_BENEFICIARIOS"], errors="coerce")# Total de beneficiários por UFpor_uf = df.groupby("UF")["QT_BENEFICIARIOS"].sum().sort_values(ascending=False)print("\nBeneficiários de planos de saúde por UF:")print(por_uf.head(10))
import pandas as pddf_rec = pd.read_csv( "reclamacoes_ans.csv", sep=";", encoding="utf-8", dtype=str, decimal=",")df_rec["INDICE_RECLAMACAO"] = pd.to_numeric(df_rec["INDICE_RECLAMACAO"], errors="coerce")# Operadoras com mais reclamações (por índice)ranking = df_rec.sort_values("INDICE_RECLAMACAO", ascending=False)print("Operadoras com maior índice de reclamações:")print(ranking[["OPERADORA", "INDICE_RECLAMACAO"]].head(10).to_string(index=False))