def analystTestData2(): ds = dataset.DataSet() ds.getTrainData() dt = datadeal.DataTrain() idxs = [] mouses = [] goals = [] for i in range(1000): idx, mouse, goal, _ = ds.readTestFile() mouses.append(mouse) goals.append(goal) # print goals with open('./data/BDC1236_20170607.txt', 'r') as f: while True: idx = f.readline() idx = int(idx) if idx > 1000: break idxs.append(idx) idxs = np.array(idxs) print idxs # print mouses[0] dw = datadraw.DataDraw('3d') colors = dw.getColorsValue() start = 10
def main(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] vector=[] idxs=[] # print n for i in range(n): cnum=dealmouse(mouses[i]) if cnum>0: print i,cnum idxs.append(i) print len(idxs) dw=datadraw.DataDraw(typex='3d') # dw.draw3dline(mouses[2600],c='r') # dw.draw3dline(mouses[2700],c='g') dw.draw3dline(mouses[2800],c='b') dw.draw3dline(mouses[2870],c='g') dw.draw3dline(mouses[2900],c='y') # dw.draw3dline(mouses[2999],c='r') # print goals.shape # dw.drawgoal([mse[:2600,0],mse[:2600,1]],'b') # dw.drawgoal([mse[2600:,0],mse[2600:,1]],'r') # for i in range(2600): # dw.draw3dgoal(mse[i],c='b') # for i in range(2600,3000): # dw.draw3dgoal(mse[i],c='r') plt.show()
def axist(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('2d') mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] def getvecotr(mouse,goal): tn=len(mouse[2]) t=mouse[2] if tn==1: return 0 return t[tn-1]-t[0] vector=[] for i in range(n): vector.append(getvecotr(mouses[i],goals[i])) vector=np.array(vector,dtype=np.float) # dw.drawline([range(2600),vector[:2600]],c='b') # dw.drawline([range(2600,3000),vector[2600:]],c='r') # print vector[:2600].mean() # print vector[2600:].mean() # dw.drawbatchgoal(np.array([vector[:2600],labels[:2600]]).T,c='b') # dw.drawbatchgoal(np.array([vector[2600:],labels[2600:]]).T,c='r') # plt.show() # vector=np.array(vector) dt=datadeal.DataTrain() # # clf = MLPClassifier(alpha=1e-3, hidden_layer_sizes=(2,2), random_state=1) clf = SVC() dt.trainTest(clf,vector.reshape([3000,1]),labels)
def startendvector(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('2d') mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] def getvecotr(mouse,goal): n=len(mouse[0]) ex=mouse[0][n-1] ey=mouse[1][n-1] et=mouse[2][n-1] bx=mouse[0][0] by=mouse[1][0] bt=mouse[2][0] if n>1: tmp=(bx-ex)**2+(by-ey)**2+(by-ey)**2 else: tmp=(bx)**2+(by)**2+(by)**2 bx=by=bt=0.0 tmp=tmp**0.5 if tmp<1e-3: tmp=1.0 return [(ex-bx)/tmp,(ey-by)/tmp,(et-bt)/tmp] vector=[] for i in range(n): vector.append(getvecotr(mouses[i],goals[i])) vector=np.array(vector) dt=datadeal.DataTrain() # clf = MLPClassifier(alpha=1e-3, hidden_layer_sizes=(2,2), random_state=1) clf = SVC() dt.trainTest(clf,vector,labels)
def main(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] vector=[] idxs=[] # print n dw=datadraw.DataDraw(typex='3d') path='./data/pic/' for i in range(n): if i<2000: continue # if i>3000: # break fig = plt.figure() ax = fig.add_subplot(111, projection='3d') dw.draw3dline(mouses[i],ax,c='g') plt.savefig(path+"%d.png"%i) plt.clf() plt.close() # if i >3: # break if i%20==0: print i # break print "over"
def analystTestData(): ds = dataset.DataSet() ds.getTrainData() dt = datadeal.DataTrain() idxs = [] mouses = [] goals = [] for i in range(1000): idx, mouse, goal, _ = ds.readTestFile() if mouse[1][0] < 0: mouse[1][0] = 2100 if mouse[0][0] > 1000: mouse[0][0] -= 400 mouses.append([mouse[0][0], mouse[1][0]]) goals.append(goal) with open('./data/BDC1236_20170607.txt', 'r') as f: while True: idx = f.readline() idx = int(idx) if idx > 1000: break idxs.append(idx) idxs = np.array(idxs) idxs = idxs - 1 # print sum(idxs) mouses = np.array(mouses) dw = datadraw.DataDraw('2d') dw.drawbatchgoal(mouses, c='b') dw.drawbatchgoal(mouses[idxs], c='r') plt.show()
def main(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] # config["borders"]=get_borders(mouses) machine_list=[] mouse_start=ds.getPosOfMouse(-1) mclass=[[],[],[]] xyt=0 for i in range(3000): xyt=0 tmpx=mouse_start[i,xyt]-goals[i][xyt] xyt=1 tmpy=mouse_start[i,xyt]-goals[i][xyt] tmp=(tmpx**2+tmpy**2)**0.5 if tmp>3000: tmp=3000 # if tmp<-60: # tmp=-60 machine_list.append(tmp) value=np.array(machine_list) dw=datadraw.DataDraw(typex='2d') # dw.draw3dline(mouses[1802]) # print goals.shape dw.drawgoal([range(2600),value[:2600]],'b') dw.drawgoal([range(2600,3000),value[2600:]],'r') plt.show() print value.min() print value.max() print value.mean()
def notgetanalyst(): ds = dataset.DataSet() ds.getTrainData() dt = datadeal.DataTrain() y = ds.train["labels"] mouses = ds.train["mouses"] goals = ds.train["goals"] labels = ds.train["labels"] with open('./data/notget.txt', 'r') as f: s = f.read() wrongs = s.split() idxw = np.array(wrongs, dtype='int') - 1 # print len(idxw) mousew = [mouses[i] for i in idxw] # print len(mousew) # mousew=mouses[] # print idxw dw = datadraw.DataDraw('3d') colors = dw.getColorsValue() count = 0 dw.draw3dline(mouses[0], c=colors[count % 10]) for i in range(len(mousew)): count += 1 if count > 10: break dw.draw3dline(mousew[i], c=colors[count % 10]) # goal=goals[i] # dw.draw3dgoal([goal[0],goal[1]+2000,0],c=colors[count%10]) plt.show()
def test(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('3d') mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] vector=[] idxs=[1,100,1000,2000,2600,2700,2800,2800] for i in idxs: tmp=getspeed(mouses[i]) tmpstr="" for v in tmp: tmpstr+="%5.2f "%v print tmpstr # x=vector[1] # xx=vector[1000] # y=vector[2700] # z=vector[2800] # for i in range(len(vector[0])): # # print i,x[i],xx[i],y[i],z[i] # if abs(x[i])!=0 and abs(abs(x[i])-abs(y[i]))/abs(x[i])>0.2: # print i,x[i],y[i] # # print len(vector[0]) exit() exit()
def endgoalvector(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('2d') mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] def getvecotr(mouse,goal): n=len(mouse[0]) ex=mouse[0][n-1] ey=mouse[1][n-1] gx=goal[0] gy=goal[1] tmp=(gx-ex)**2+(gy-ey)**2 tmp=tmp**0.5 return [(gx-ex)/tmp,(gy-ey)/tmp] vector=[] for i in range(n): vector.append(getvecotr(mouses[i],goals[i])) vector=np.array(vector) dt=datadeal.DataTrain() # clf = MLPClassifier(alpha=1e-3, hidden_layer_sizes=(2,2), random_state=1) clf = SVC() dt.trainTest(clf,vector,labels)
def drawline3d2(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('3d') mouses=ds.train["mouses"] goals=ds.train["goals"] # x,y,t=mouses[0] colors=dw.getColorsValue() for i in range(10): dw.draw3dline(mouses[2600+i*40],c=colors[i%10]) goal=goals[2600+i*40] dw.draw3dgoal([goal[0],goal[1]+2000,0],c=colors[i%10]) plt.show()
def drawline(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('2d') mouses=ds.train["mouses"] goals=ds.train["goals"] # x,y,t=mouses[0] colors=dw.getColorsValue() for i in range(10): # if i==2: dw.drawline(mouses[i*160],c=colors[i%10]) goal=goals[i*160] dw.drawgoal([goal[0],goal[1]+2000],c=colors[i%10]) plt.show()
def drawScatter(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] dw=datadraw.DataDraw("2d") mouses_start=ds.getPosOfMouse(1) dw.drawbatchgoal(mouses_start[:2600],'y') dw.drawbatchgoal(mouses_start[2600:],'b') dw.drawbatchgoal(goals[:2600],'y') dw.drawbatchgoal(goals[2600:],'b') plt.show()
def draw2d(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] dw=datadraw.DataDraw("2d") START=2700 PAIRS=2 colors=['b','r','g','y','c','k','m'] for i in range(PAIRS): dw.drawline(mouses[i]) dw.drawline(mouses[START+i]) # dw.drawgoal([goals[i][0],goals[i][1],i],c=colors[i%7]) # dw.drawgoal([goals[START+i][0],goals[START+i][1]],c=colors[(i+3)%7]) plt.show()
def axisy(): ds=dataset.DataSet() ds.getTrainData() dw=datadraw.DataDraw('2d') mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] def getvecotr(mouse,goal): yn=len(mouse[1]) y=mouse[1] if yn==1: return 0 for i in range(yn)[-1:0:-1]: y[i]=y[i]-y[i-1] flag=1 state=y[0] ychange=0 for i in range(1,yn): if state*y[i]<0: ychange+=1 state=y[i] return ychange vector=[] for i in range(n): vector.append(getvecotr(mouses[i],goals[i])) vector=np.array(vector,dtype=np.float) # dw.drawline([range(2600),vector[:2600]],c='b') # dw.drawline([range(2600,3000),vector[2600:]],c='r') # print vector[:2600].mean() # print vector[2600:].mean() # dw.drawbatchgoal(np.array([vector[:2600],labels[:2600]]).T,c='b') # dw.drawbatchgoal(np.array([vector[2600:],labels[2600:]]).T,c='r') # plt.show() # vector=np.array(vector) dt=datadeal.DataTrain() # # clf = MLPClassifier(alpha=1e-3, hidden_layer_sizes=(2,2), random_state=1) clf = SVC() dt.trainTest(clf,vector.reshape([3000,1]),labels)
def assemble(): ds = dataset.DataSet() ds.getTrainData() dw = datadraw.DataDraw('2d') mouses = ds.train["mouses"] goals = ds.train["goals"] labels = ds.train["labels"] n = ds.train["size"] vector = [] # print mouses[492],goals[492] for i in range(n): vector.append(getvector(1, mouses[i], goals[i], 1)) vector = np.array(vector) # print vector.shape dt = datadeal.DataTrain() # clf = MLPClassifier(alpha=1e-3, hidden_layer_sizes=(40), random_state=1) clf = SVC() dt.trainTest(clf, vector, labels)
def main(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] dw=datadraw.DataDraw("2d") mouses_start=get_start(mouses) # print mouses_start.shape # dw.draw3dgoal # drawbatch(mouses_start[0:2600].T,dw,'y') # drawbatch(mouses_start[2650:2800].T,dw,'g') # drawbatch(mouses_start[2800:2900].T,dw,'r') # drawbatch(mouses_start[2900:3000].T,dw,'b') # print mouses_start[0] # exit() dw.drawbatchgoal(mouses_start[2650:2700],'g') # dw.drawbatchgoal(mouses_start[2700:2800],'b') dw.drawbatchgoal(mouses_start[2800:2900],'y') dw.drawbatchgoal(mouses_start[2900:3000],'r') dw.drawbatchgoal(mouses_start[2600:2650],'y') # dw.draw3dgoal(mouses_start[0:2600],c='y') # dw.draw3dgoal(mouses_start[2650:2850],c='g') # dw.draw3dgoal(mouses_start[2850:2950],c='g') # dw.draw3dgoal(mouses_start[2850:3000],c='y') # dw.draw3dgoal(mouses_start[2600:],c='g') # dw.draw3dgoal(mouses_start[2600:],c='b') # borders=get_borders(mouses) # for i in range(4): # drawrectangle(borders[i]) # print borders plt.show()
def main_start(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] dw=datadraw.DataDraw("2d") # mouses_start=ds.getPosOfMouse(0) # mouses_start=mouses_start.T # print mouses_start.shape # exit() # print mouses_start[:2600].shape # print mouses_start[:,0].shape # exit() # print mouses_start[:,0].T.shape # mouses_start[:,0].T mouses_start=get_start(mouses) # print data.shape # plt.scatter([1,2],[2,3],c='y') # print mouses_start[:10] # exit() # path="./data/start_pic/" # for i in range(2650,3001,50): # dw.drawbatchgoal(mouses_start[:2600],'y') # dw.drawbatchgoal(mouses_start[i-50:i],'r') # plt.title("%d.png"%i) # plt.savefig(path+"%d.png"%i) # plt.clf() # plt.close() # print i dw.drawbatchgoal(mouses_start[2650:2850],'g') dw.drawbatchgoal(mouses_start[2850:2950],'r') dw.drawbatchgoal(mouses_start[2850:3000],'b') dw.drawbatchgoal(mouses_start[2600:],'y') dw.drawbatchgoal(mouses_start[2600:],'p')
def main2d(): ds=dataset.DataSet() ds.getTrainData() mouses=ds.train["mouses"] goals=ds.train["goals"] labels=ds.train["labels"] n=ds.train["size"] dw=datadraw.DataDraw("2d") mouses_start=get_start(mouses) # print mouses_start.shape dw.drawbatchgoal(mouses_start[0:2600],'y') dw.drawbatchgoal(mouses_start[2650:2850],'g') dw.drawbatchgoal(mouses_start[2850:2950],'g') dw.drawbatchgoal(mouses_start[2850:3000],'y') dw.drawbatchgoal(mouses_start[2600:],'g') dw.drawbatchgoal(mouses_start[2600:],'b') borders=get_borders(mouses) for i in range(4): drawrectangle(borders[i]) # print borders plt.show()
def analystnoget(): tmp = np.loadtxt('./data/tmp0619.txt') tmp = np.array(tmp, dtype='int') ds = dataset.DataSet() ds.getTrainData() dw = datadraw.DataDraw('3d') mouses = ds.train["mouses"] goals = ds.train["goals"] labels = ds.train["labels"] n = ds.train["size"] # vector=[] colors = dw.getColorsValue() count = -1 dw.draw3dline(mouses[0], c=colors[0]) dw.draw3dline(mouses[2700], c=colors[15]) for i in tmp: count += 1 if count == 6: continue dw.draw3dline(mouses[i], c=colors[count % 10 + 1]) plt.show()