In [4]:
# 1. Calc the averaged probabilities of the samples
# 2. Obtain the mode label

In [2]:
import os
import pandas as pd

In [3]:
import numpy as np

In [5]:
fold_lrg = "./result-LRG-171110/"
fold_unlrg = "./result-unLRG-171110/"

In [8]:
# load the data
num_lrg = 1515
num_sub = 9
label_lrg = np.zeros((num_lrg, num_sub))
label_lrg_bt = np.zeros((num_lrg, num_sub))
prob_lrg = np.zeros((num_lrg, num_sub))
for i in range(num_sub):
    fname = "code_LRG_%d.xlsx" % i
    data = pd.read_excel(os.path.join(fold_lrg, fname))
    label_lrg[:,i] = data["types"]
    label_lrg_bt[:,i] = data["types_BT"]
    prob_lrg[:,i] = data["Possibility"]

In [9]:
num_unlrg = 15300
num_sub = 9
label_unlrg = np.zeros((num_unlrg, num_sub))
label_unlrg_bt = np.zeros((num_unlrg, num_sub))
prob_unlrg = np.zeros((num_unlrg, num_sub))
for i in range(num_sub):
    fname = "code_unLRG_%d.xlsx" % i
    data = pd.read_excel(os.path.join(fold_unlrg, fname))
    label_unlrg[:,i] = data["types"]
    label_unlrg_bt[:,i] = data["types_BT"]
    prob_unlrg[:,i] = data["Possibility"]

In [10]:
# Calc average or mode and save

In [12]:
from scipy.stats import mode

In [40]:
label_lrg_mode = np.array(mode(label_lrg,axis=1))[0,:,0].astype("int")
label_lrg_bt_mode = np.array(mode(label_lrg_bt,axis=1))[0,:,0].astype("int")
prob_lrg_avg = np.mean(prob_lrg, axis=1)

In [28]:
label_unlrg_mode = np.array(mode(label_unlrg,axis=1))[0,:,0].astype("int")
label_unlrg_bt_mode = np.array(mode(label_unlrg_bt,axis=1))[0,:,0].astype("int")
prob_unlrg_avg = np.mean(prob_unlrg, axis=1)

In [41]:
# Recheck BT of 0
id_lrg = (label_lrg_bt_mode==0) * (label_lrg_mode == 4)
for i in np.where(id_lrg==1)[0]:
    line_dezero = label_lrg_bt[i,:][label_lrg_bt[i,:]>0]
    label_lrg_bt_mode[i] = int(mode(line_dezero)[0][0])

In [43]:
id_unlrg = (label_unlrg_bt_mode==0) * (label_unlrg_mode == 4)
for i in np.where(id_unlrg==1)[0]:
    line_dezero = label_unlrg_bt[i,:][label_unlrg_bt[i,:]>0]
    label_unlrg_bt_mode[i] = int(mode(line_dezero)[0][0])

In [44]:
# save
result_lrg = {"Type": label_lrg_mode,
              "Type_BT": label_lrg_bt_mode,
              "Probability": prob_lrg_avg}
dFrame = pd.DataFrame(result_lrg)
dFrame.to_excel("./est_LRG_171110.xlsx")

In [45]:
result_unlrg = {"Type": label_unlrg_mode,
                "Type_BT": label_unlrg_bt_mode,
                "Probability": prob_unlrg_avg}
dFrame = pd.DataFrame(result_unlrg)
dFrame.to_excel("./est_unLRG_171110.xlsx")

In [ ]: