Exemple #1
0
def ProcessNewEmployeeData(Id, FirstName, LastName):
    try:
        # Create Employee object
        objE = Employees.Employee()
        objE.Id = Id
        objE.FirstName = FirstName
        objE.LastName = LastName
        Employees.EmployeeList.AddEmployee(objE)
    except Exception as e:
        print(e)
def GetResult():
    k=4
    UserSequences.Gettraintestdata(k)
    #employees = Employees.queryEmployees()
    employees = CSVFile.loadCSVfile1("./data/allusers/validusers.csv")
    #employees = CSVFile.loadCSVfile1("./data/allusers/Allusers_state.csv")
    resultlist = []
    avgresult = []

    for item in employees:
        user = item[0]
        state = item[1]
        preProcess.GetTransiMatrix(user)

        H = HMM(user)
        result = H.hmm(user)
        print user, result

        #resultlist.append([user,result])
        avgresultpro = average(result)
        avgresult.append([user,avgresultpro,state])

        print "average:",average(result), state
        result.insert(0, user)
        resultlist.append(result)
#=======
    t1 = time.time()
    start_date = '2009-12-01'
    employees = Employees.queryLeaveEmployees()
    #f = open('./data/Result.txt', 'w')
    f = open('./data/ProSquenceResult.txt', 'w')
    #for user in employees:
#>>>>>>> 34c6dfe6197febd37f54b0a34e607135f3d0d8e2:GetHMMresult.py
        #print user
    resultfile = './data/allusers/'+k+'ResultPro974.csv'
    avgresultfile = './data/allusers/'+k+'AvgResultPro974.csv'
    CSVFile.Writecsvtofile(resultfile,resultlist)
    CSVFile.Writecsvtofile(avgresultfile,avgresult)
def TocsvLeaveEmployees():
    employees = Employees.queryLeaveEmployees()
    LeaveEmployees = []
    for item in employees:
        user = item[0]
        filename1 = '../data/BehaviorsFeaturesByUser/' + user + '.csv'
        lablefile = '../data/user_lable.csv'
        labledata = pd.read_csv(lablefile)

        for item2 in labledata.values:
            if user == item2[2]:
                lable = item2[3]
                break

        data = pd.read_csv(filename1)
        data = data.values.reshape(1, -1)
        data = np.insert(data, 0, lable, axis=1)
        print(data)
        LeaveEmployees.append(data[0])

    LeaveEmployees = pd.DataFrame(LeaveEmployees)
    print(LeaveEmployees.values)
    LeaveEmployees.to_csv(
        '../data/LeaveUsersFeaturesAndLables/LeaveUsersFeaturesAndLbles.csv')
Exemple #4
0
print("\n Test the DataProcessor.Database class")
try:
    print("Trying to create an object, but the class is not ready")
    objDP = DataProcessor.Database()
except:
    print("This should fail")

print("\n Test the Persons.Person class")
objP = Persons.Person()
objP.FirstName = "Bob"
objP.LastName = "Smith"
print(objP.ToString())

print("\n Test the Employees.Employee class")
objE = Employees.Employee(1, "Bob")
# objE.Id = 1
# objE.FirstName = "Bob"
# objE.LastName = "Smith"
print(objE.ToString())

print("\n Test the Employee.EmployeeList class")
objEL = Employees.EmployeeList()
try:
    print("Trying the wrong object type")
    objEL.AddEmployee(objP)
except:
    print("This should fail")

try:
    objEL.AddEmployee(objE)
Exemple #5
0
import Employees

objE1 = Employees.Employee()
objE1.Id = 1
objE1.FirstName = "Bob"
Employees.EmployeeList.AddEmployee(objE1)

objE2 = Employees.Employee(2, "Sue")
Employees.EmployeeList.AddEmployee(objE2)

print(Employees.EmployeeList.ToString())
input()
Exemple #6
0
from Employees import *

staff = Employees("Wayne", 20, 8)
supervisor = Employees("Dwight", 35, 8)
manager = Employees("Melinda", 100, 8)

print(staff.name, staff.rate, staff.hours)
print(supervisor.name, supervisor.rate, supervisor.hours)
print(manager.name, manager.rate, manager.hours)

exemp_1 = Resigned("Dorothy", 32, 8, "retired")
exemp_2 = Resigned("Malcolm", 48, 8, "resigned")

print(exemp_1.name, exemp_1.rate, exemp_1.hours, exemp_1.status)
print(exemp_2.name, exemp_2.rate, exemp_2.hours, exemp_2.status)
Exemple #7
0
if __name__ == "__main__":
    import Employees
else:
    raise Exception("This file was not created to be imported ")

objE = Employees.Employee()
objE.Id = 1
objE.FirstName = "Bob"

print(objE.ToString())

print(Employees.Employee.AddEmployee(objE))
Exemple #8
0
import Employees
print(Employees.getNames())
    filename = './data/allusers/'+user+'SingleSequence.csv'
    Writecsvtofile(filename,list)
    #print file

    print "count:",count
    print "list len:",len(list)

    '''
    f=open('./data/SingleSequence.txt','w')
    for i in range(len(list)):
        f.write(list[i][0])
        f.write(':')
        f.write(list[i][1])
        f.write('\n')
        #print list[i]
    f.close()
    '''
    return list


if __name__ == '__main__':

    employees = Employees.queryEmployees()
    ii = 0
    for item in employees:
        employee = item[0]
        ii = ii+1
        print "*******************************"
        print ii,':',employee
        GetUserSingleSequence(employee)
def Gettraintestdata(sequenlen):
    k = sequenlen
    #k = 4
    employees = Employees.queryEmployees()
    count = 0
    result = []
    count = 0
    validusers = []
    invalidusers = []
    for item in employees:
        user = item[0]
        singleFile = "./data/allusers/SingleSequence/" + user + ".csv"
        list = CSVFile.loadCSVfile1(singleFile)
        maxtime = list[-1][0]
        mintime = list[0][0]
        maxtime = datetime.datetime.strptime(maxtime, '%Y %j %H:%M:%S')
        mintime = datetime.datetime.strptime(mintime, '%Y %j %H:%M:%S')
        middletime = maxtime - relativedelta(months=2)

        if mintime > (middletime - relativedelta(months=3)):
            invalidusers.append(user)
            continue
            #if mintime > (maxtime - relativedelta(months = 1)):
            #   middletime  = mintime+relativedelta(days =20)
            #else:
            #   middletime = mintime + relativedelta(months=1)

        TrainUserSequence = []
        TestUserSequence = []
        for i in (range(len(list) - k)):
            sequ = ''
            state = ''
            time = datetime.datetime.strptime(list[i][0], '%Y %j %H:%M:%S')

            if time < middletime:
                for j in range(k):
                    sequ = sequ + list[i + j][1] + '-'
                    state = state + str(list[i + j][1])[0:2]
                tem = [sequ, state]
                TrainUserSequence.append(tem)
                print "time<middletime", time < middletime, "TrainUserSequence"
            if time >= middletime:
                for j in range(k):
                    sequ = sequ + list[i + j][1] + '-'
                    state = state + str(list[i + j][1])[0:2]
                tem = [sequ, state]
                TestUserSequence.append(tem)
                print "time>middletime", time >= middletime, "TestUserSequence"
        #validusers.append(user)
        print count, user
        count = count + 1
        trainFile = "./data/allusers/Train/" + user + ".csv"
        testFile = "./data/allusers/Test/" + user + ".csv"
        CSVFile.Writecsvtofile(trainFile, TrainUserSequence)
        CSVFile.Writecsvtofile(testFile, TestUserSequence)

    allusers = CSVFile.loadCSVfile1("./data/allusers/Allusers_state.csv")
    resultlist = []
    for invalid in invalidusers:
        for i in range(len(allusers)):
            if invalid == allusers[i][0]:
                del (allusers[i])
                break

    CSVFile.Writecsvtofile("./data/allusers/validusers.csv", allusers)
Exemple #11
0
import Employees
print(Employees.getIT_names())
Exemple #12
0
if __name__ == "__main__":
    import DataProcessor, Employees, Persons
else:
    raise Exception("This file was not created to be imported ")

p1 = Persons.Person("Bob", "Smith")
print(p1)

e1 = Employees.Employee(1, "Sue", "Jones")
print(e1)

Employees.EmployeeList.AddEmployee(e1)
print(Employees.EmployeeList.ToString())