def sta_ai_log01(xtfb,df): #1 xkwin,k00,k10,k30=-9,xtfb.staVars[0] ,xtfb.staVars[1],xtfb.staVars[2] ysgn='kwin' #xtfb.ai_ysgn #2 df[ysgn]=df[ysgn].astype(str) df[ysgn].replace('3','2', inplace=True) #3 df[ysgn]=df[ysgn].astype(int) #4 xtfb.ai_xdat,xtfb.ai_ydat= df[xtfb.ai_xlst],df[ysgn] #5 msgn=xtfb.ai_mx_sgn_lst[0] #'log' mx=zai.xmodel[msgn] dacc,df9=zai.mx_fun8mx(mx, xtfb.ai_xdat,xtfb.ai_ydat,yk0=1,fgInt=True) #,fgDebug=True #print('\n log01,dacc,',dacc) #6 df3,df1,df0=df9[df9['y_pred']==2],df9[df9['y_pred']==1],df9[df9['y_pred']==0] dn3,dn1,dn0=len(df3.index),len(df1.index),len(df0.index) #7 dn9,dsum=max(dn3,dn1,dn0),sum([dn3,dn1,dn0]) #8 if dsum>0: dk3,dk1,dk0=dn3/dsum*100,dn1/dsum*100,dn0/dsum*100 if (dn3==dn9)and(dk3>k30):xkwin=3 elif (dn1==dn9)and(dk1>k10):xkwin=1 elif (dn0==dn9)and(dk0>k00):xkwin=0 # #yk310=df9['y_test'][0] #xs0='@log01,{0}#,{1},xk,gid,{2},dsum.{3},dn310,{4},{5},{6},dk310,{7:.1f}%,{8:.1f}%,{9:.1f}%' #xss=xs0.format(xkwin,yk310,xtfb.kgid,dsum,dn3,dn1,dn0,dk3,dk1,dk0) #print(xss) #9 return xkwin
import ztop_ai as zai #----------------------- #1 fsr0 = 'dat/ccpp_' print('#1', fsr0) xlst, ysgn = ['AT', 'V', 'AP', 'RH'], 'PE' x_train, x_test, y_train, y_test = zai.ai_dat_rd(fsr0) funSgn, ftg = 'svm', 'tmp/ccpp_svm.pkl' #2 print('\n#2,mx_svm.wr') tim0 = arrow.now() zai.ai_f_mxWr(ftg, funSgn, x_train, y_train) tn = zt.timNSec('', tim0, True) #3 tim0 = arrow.now() print('\n#3,mx_svm.rd') mx = joblib.load(ftg) tn = zt.timNSec('', tim0, True) #4 print('\n#4,mx_svm') tim0 = arrow.now() zai.mx_fun8mx(mx, x_test, y_test) tn = zt.timNSec('', tim0, True) #----------------------- print('\nok!')