示例#1
0
def loadnumerical():
    oldrows = advancedclassify.loadmatch('matchmaker.csv')
    newrows = []
    out = open('numerical.txt', 'w+')
    for row in oldrows:
        d = row.data
        data = [float(d[0]), advancedclassify.yesno(d[1]), advancedclassify.yesno(d[2]), advancedclassify.yesno(d[5]),
                advancedclassify.yesno(d[6]), advancedclassify.yesno(d[7]), advancedclassify.matchcount(d[3], d[8]),
                milesdistance(d[4], d[9]), row.match]
        newrows.append(advancedclassify.matchrow(data))
        print(advancedclassify.matchrow(data).__str__())
        out.write("%s\n" % data)
    out.close()
    return newrows
示例#2
0
def loadnumerical():
    oldrows = advancedclassify.loadmatch('matchmaker.csv')
    newrows = []
    out = open('numerical.txt', 'w+')
    for row in oldrows:
        d = row.data
        data = [
            float(d[0]),
            advancedclassify.yesno(d[1]),
            advancedclassify.yesno(d[2]),
            advancedclassify.yesno(d[5]),
            advancedclassify.yesno(d[6]),
            advancedclassify.yesno(d[7]),
            advancedclassify.matchcount(d[3], d[8]),
            milesdistance(d[4], d[9]), row.match
        ]
        newrows.append(advancedclassify.matchrow(data))
        print(advancedclassify.matchrow(data).__str__())
        out.write("%s\n" % data)
    out.close()
    return newrows
示例#3
0
# agesonly = advancedclassify.loadmatch('agesonly.csv', allnum=True)
# matchmaker = advancedclassify.loadmatch('matchmaker.csv')
# advancedclassify.plotagematches(agesonly)
# avgs = advancedclassify.lineartrain(agesonly)
# print advancedclassify.dpclassify([30, 25], avgs)
# print advancedclassify.dpclassify([25, 40], avgs)
# print advancedclassify.dpclassify([48, 20], avgs)
# numbericalset = bingmapsapi.loadnumerical()
# json.dump(json.JSONEncoder(numbericalset), out)
# out.close()
numbericalset = []
with open("numerical.txt") as file:
    for row in file:
        row = json.loads(row.replace("\n", ""))
        numbericalset.append(advancedclassify.matchrow(row))
    print len(numbericalset)
scaledset, scalef = advancedclassify.scaledata(numbericalset)
# avgs = advancedclassify.lineartrain(scaledset)
# print numbericalset[0].match
# print advancedclassify.dpclassify(scalef(numbericalset[0].data), avgs)
# print numbericalset[11].match
# print advancedclassify.dpclassify(scalef(numbericalset[11].data), avgs)

answers, inputs = [r.match for r in scaledset], [r.data for r in scaledset]
prob = svm_problem(answers, inputs)
# m = svm_train(prob, '-t 3')
# svm_save_model('test.model', m)
m = svm_load_model('test.model')
# newrow = [28.0, -1, -1, 26.0, -1, 1, 2, 0.8]
# predicted_labels0 = svm_predict(scalef(newrow), m)