import pandas as pd import sys sys.path.append('Backend') from app.parsers.mappings import ( YEAR_CONFIG, IDENTITAS_MAPPING, PEKERJAAN_MAPPING, STUDI_LANJUT_MAPPING, KESESUAIAN_MAPPING, KOMPETENSI_LULUS_MAPPING, KOMPETENSI_SAAT_INI_MAPPING, METODE_PEMBELAJARAN_MAPPING, WAKTU_CARI_KERJA_MAPPING, CARA_CARI_KERJA_MAPPING, LAMARAN_KEAKTIFAN_MAPPING, KESESUAIAN_PEKERJAAN_MAPPING, get_field_code ) from app.parsers.column_finder import find_column, get_value from app.parsers.converters import konversi_jawaban df = pd.read_csv('Data_Tracerstudy/Data_2019_Tracer_study.csv', sep=';', encoding='utf-8-sig') print(f"2019 shape: {df.shape}", flush=True) # Check F1602 and F402 for col_name in ['F1601', 'F1602', 'F1603', 'F401', 'F402', 'F403']: if col_name in df.columns: vals = df[col_name].value_counts(dropna=False).to_dict() print(f"Column '{col_name}': {vals}", flush=True) # Now check how import_service processes these for 2019: source_cols = list(df.columns) for target in ['kerja_tidak_sesuai_1', 'kerja_tidak_sesuai_2', 'cari_iklan', 'cari_melamar_tanpa_lowongan']: mapped_col = find_column(source_cols, CARA_CARI_KERJA_MAPPING.get(target, []) or KESESUAIAN_PEKERJAAN_MAPPING.get(target, [])) fc = get_field_code(target, CARA_CARI_KERJA_MAPPING if 'cari' in target else KESESUAIAN_PEKERJAAN_MAPPING) print(f"\nTarget '{target}' (code {fc}): mapped to col '{mapped_col}'", flush=True) if mapped_col: for idx in range(min(5, len(df))): row = df.iloc[idx] val = get_value(row, source_cols, [mapped_col]) conv = konversi_jawaban(fc, val) print(f" Row {idx}: raw={repr(val)} -> konversi={repr(conv)}", flush=True)