def filterVals(latlonvals): includeindicies=[0] base = 0 skip = 2 while(base+skip < len(latlonvals)): pred = ((latlonvals[base][0]+latlonvals[base+skip][0])/2, (latlonvals[base][1]+latlonvals[base+skip][1])/2) err = CDutils.greatCircDist(pred[0], pred[1], latlonvals[base+skip-1][0], latlonvals[base+skip-1][1]) if(err > 10): includeindicies.append(base+skip-1) base = base+skip-1 skip = 2 else: skip = skip + 1 newlist = [latlonvals[item] for item in includeindicies] if(newlist[0] != newlist[-1]): newlist.append(newlist[0]) return newlist
def filterVals(latlonvals): includeindicies=[0] base = 0 skip = 2 while(base+skip < len(latlonvals)): mfact = (skip-1.0)/skip predlat = latlonvals[base][0]+(latlonvals[base+skip][0]-latlonvals[base][0])*mfact predlon = latlonvals[base][1]+(latlonvals[base+skip][1]-latlonvals[base][1])*mfact pred = (predlat, predlon) err = CDutils.greatCircDist(pred[0], pred[1], latlonvals[base+skip-1][0], latlonvals[base+skip-1][1]) if(err > 10): includeindicies.append(base+skip-1) base = base+skip-1 skip = 2 else: skip = skip + 1 newlist = [latlonvals[item] for item in includeindicies] if(newlist[0] != newlist[-1]): newlist.append(newlist[0]) #print "filtered from "+str(len(latlonvals))+" to "+str(len(newlist)) return newlist
for i in xrange(0, len(line)): if line[i] == "\"": inquote = not(inquote) newline = newline+line[i] elif(inquote and line[i] == ","): newline = newline+" " else: newline = newline+line[i] lines[x] = newline #testcds = [1421501, 1421502, 1421503, 1421504, 1421505] #load all the Sydney CD census data #CDutils.getSomeSydneyCDs(testcds) CDutils.getAllSydneyCDs() #now load the specific cross-tabs that I have from the ABS dwellbyincomelines = open('/home/peterr/data/abs_stats/sydneyhousingspecialrequest/Rickwood Table 1 190407.csv').readlines()[7:] dwellbyhhtypelines = open('/home/peterr/data/abs_stats/sydneyhousingspecialrequest/Rickwood Table 2 190407.csv').readlines()[6:] carsbyhhtypelines = open('/home/peterr/data/abs_stats/sydneyhousingspecialrequest/Rickwood Table 3 190407.csv').readlines()[6:] carsbyincomelines = open('/home/peterr/data/abs_stats/sydneyhousingspecialrequest/Rickwood Table 4 190407.csv').readlines()[7:] for x in [dwellbyincomelines, dwellbyhhtypelines, carsbyhhtypelines, carsbyincomelines]: stripQuotedCommas(x) #work out starting data lines for each cdnumber, to save searching each time startlines = getStartLines(dwellbyincomelines, dwellbyhhtypelines, carsbyhhtypelines, carsbyincomelines)