示例#1
0
            distance = math.sqrt(
                (curX - preX)**2 + (curY - preY)**2
            )  # distance between an observation in current data and each points in previous one

            # add observation satisfying the neighborhood condition
            if distance < bandwidth:  # 1. bandwidth condition
                if distance > mindist:  # 2. minimum distance condition
                    if nCount <= knn:  # 3. number of maximum neighborhoods
                        distDic[preOID] = [distance, preUnitPrice]
                        nCount += 1

        distDicsorted = collections.OrderedDict(
            sorted(distDic.items(), key=lambda t: t[1][0]))

        #         print distDicsorted.values()[0][0]

        ## calculating Wij & Wij*UnitPricej for current year observations
        sumWij = 0  # initialize sigma Wij
        sumWijP = 0  # initialize sigma Wij*UnitP
        for dist, UnitP in distDicsorted.values():
            wij = (1 - (dist / bandwidth)**2)**2
            wijP = wij * UnitP
            sumWij += wij
            sumWijP += wijP
        lag = sumWijP / sumWij
        lagVar.append(lag)

    excel.excelWriteOnExistingFile3(filepath2, sheetname2, 'X', lagVar)
    print(lagVar)
示例#2
0
    resultEMD = excel.excelRead(filenameEMD, sheetnameEMD)

    emdMatList = []
    for addrMat in matResult[1:]:
        tempEMD = '-1'
        addrStrip = str(addrMat[0].value).strip()

        for rowEMD in resultEMD:
            rowEMDStr = str(rowEMD[1].value)

            if addrStrip == rowEMDStr:
                tempEMD = str(int(rowEMD[0].value))
                break
        emdMatList.append(tempEMD)

    excel.excelWriteOnExistingFile3(filenameMat, sheetnameMat, 'k', emdMatList)
    print('saved successfully in ' + filenameMat)

    #4-2 - Matching excel file and dictionary

    filenameDicRe = 'Dictionary_result.xlsx'
    sheetnameDicRe = 'Sheet2'

    resultDicRe = excel.excelRead(filenameDicRe, sheetnameDicRe)

    matResult2 = excel.excelRead(filenameMat, sheetnameMat)

    snList = []
    for addrMat1 in matResult2[1:]:
        tempBd_SN = '-1'
        tempeqb_SN = '-1'
示例#3
0
 resultEMD = excel.excelRead(filenameEMD, sheetnameEMD)
    
 emdMatList = []  
 for addrMat in matResult[1:]:
     tempEMD = '-1'
     addrStrip = str(addrMat[0].value).strip()
            
     for rowEMD in resultEMD:
         rowEMDStr = str(rowEMD[1].value)
              
         if addrStrip == rowEMDStr:
             tempEMD = str(int(rowEMD[0].value))
             break
     emdMatList.append(tempEMD)
      
 excel.excelWriteOnExistingFile3(filenameMat, sheetnameMat, 'k', emdMatList)
 print('saved successfully in '+ filenameMat)    
   
     #4-2 - Matching excel file and dictionary
   
 filenameDicRe = 'Dictionary_result.xlsx'
 sheetnameDicRe = 'Sheet2'
   
 resultDicRe = excel.excelRead(filenameDicRe, sheetnameDicRe)
   
 matResult2 = excel.excelRead(filenameMat, sheetnameMat)
   
 snList = []
 for addrMat1 in matResult2[1:]:
     tempBd_SN = '-1'
     tempeqb_SN = '-1'
示例#4
0
            preOID = int(preValue[2].value) # OBJECT ID of previous year data
            preUnitPrice = float(preValue[22].value) # Unit Price of previous year data
             
            distance = math.sqrt((curX - preX)**2+(curY - preY)**2) # distance between an observation in current data and each points in previous one 
            
            # add observation satisfying the neighborhood condition 
            if distance < bandwidth :   # 1. bandwidth condition
                if distance > mindist:  # 2. minimum distance condition
                    if nCount <= knn:    # 3. number of maximum neighborhoods
                        distDic[preOID] = [distance, preUnitPrice]
                        nCount+=1
            
        distDicsorted = collections.OrderedDict(sorted(distDic.items(), key=lambda t:t[1][0]))
        
#         print distDicsorted.values()[0][0]
        
        ## calculating Wij & Wij*UnitPricej for current year observations
        sumWij = 0  # initialize sigma Wij
        sumWijP = 0 # initialize sigma Wij*UnitP
        for dist, UnitP in distDicsorted.values():
            wij = (1-(dist/bandwidth)**2)**2
            wijP = wij*UnitP
            sumWij += wij
            sumWijP += wijP
        lag = sumWijP / sumWij
        lagVar.append(lag)
     
    excel.excelWriteOnExistingFile3(filepath2, sheetname2, 'X', lagVar)
    print(lagVar)