import pandas as pd

def verify_parquet():
    file_path = "data/unified_timetable.parquet"
    try:
        df = pd.read_parquet(file_path)
    except Exception as e:
        print(f"파일을 읽을 수 없습니다: {e}")
        return

    print(f"=== Parquet 파일 검증 ({file_path}) ===")
    print(f"1. 전체 데이터(행) 수: {len(df)} 건")
    
    unique_trains = sorted(df["train_number"].unique())
    print(f"2. 포함된 총 열차(열번) 대수: {len(unique_trains)} 대")
    
    unique_stations = df["station"].unique().tolist()
    print(f"3. 포함된 총 역(station) 개수: {len(unique_stations)} 개")
    
    print("\n4. 열차 번호(train_number) 목록 (앞 20개, 뒤 20개):")
    print(f"{unique_trains[:20]} ...")
    print(f"{unique_trains[-20:]}")

    print("\n5. 역(station) 목록:")
    print(unique_stations)

    # 특정 열차가 모든 역의 데이터를 가지고 있는지 샘플 확인
    sample_train = unique_trains[0]
    train_data_count = len(df[df["train_number"] == sample_train])
    print(f"\n6. 샘플 열차({sample_train})의 데이터 건수: {train_data_count} 건")

if __name__ == "__main__":
    verify_parquet()
