Spaces:
No application file
No application file
File size: 1,266 Bytes
dd756d0 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
import joblib
import pandas as pd
model = joblib.load("model_pty.pkl")
def predict_pty(pa, wicope, backlog, cuaca, resign, bad_ethic, incompetent):
data = pd.DataFrame([{
"PA": pa,
"WICOPE": wicope,
"backlog": backlog,
"cuaca_bin": 1 if cuaca == "hujan" else 0,
"resign": resign,
"bad_ethic": bad_ethic,
"incompetent": incompetent
}])
result = model.predict(data)[0]
return int(result)
def analyze_causes(pa, wicope, backlog, cuaca, resign, bad_ethic, incompetent):
alasan = []
if pa < 90: alasan.append("PA rendah (<90%)")
if wicope < 90: alasan.append("WICOPE <90%")
if backlog > 30: alasan.append("Backlog terlalu banyak")
if cuaca == "hujan": alasan.append("Cuaca buruk")
if resign > 1: alasan.append("Tingkat resign tinggi")
if bad_ethic > 0: alasan.append("Ada perilaku buruk")
if incompetent > 0: alasan.append("SDM tidak kompeten")
return alasan
def give_recommendation(backlog, pa, resign):
rekom = []
if backlog > 30: rekom.append("Percepat eksekusi backlog")
if pa < 90: rekom.append("Tingkatkan ketersediaan alat")
if resign > 1: rekom.append("Cegah resign dengan retensi")
return rekom
|