Пример #1
0
def getDataMacroRegion():
	"""
	Retorna um dictionary com todas as micro-regioes
	function() -> dictionary
	"""
	# from scipy.spatial.distance import euclidean
	dic = {}
	lista = MongoDB.list_all_macro_regions()

	for i in lista:
		d = {}
		if i['region'] not in dic:
			dic[i['region']] = {}
		for j in lista:
			if i['region'] != j['region']:
				# d[j['region']] = float("{0:.4f}".format(euclidean( [i['lng'], i['lat']],  [ j['lng'], j['lat'] ])))
				d[j['region']] = float("{0:.3f}".format(haversine(i['lng'], i['lat'], j['lng'], j['lat'] )))
		dic[i['region']] = d
	lista = MongoDB.list_all_macro_regions()
	for i in lista:
		dic[i['region']]['Price/m²'] = float("{0:.2f}".format(i['price_by_meter']))
		dic[i['region']]['Residents'] = int(i['residents'])
		dic[i['region']]['Occupied Private Housing'] = int(i['occupied_private_housing'])
		dic[i['region']]['Residents Per Household'] = float("{0:.2f}".format(i['residents_per_household']))
		dic[i['region']]['Hospital'] = int(i['hospital'])
		dic[i['region']]['UBS'] = int(i['ubs'])
		dic[i['region']]['UPA'] = int(i['upa'])
		dic[i['region']]['University'] = int(i['university'])
		dic[i['region']]['Bank'] = int(i['bank'])
		dic[i['region']]['Shopping'] = int(i['shopping'])
		dic[i['region']]['Delegacy'] = int(i['delegacy'])
		dic[i['region']]['Market'] = int(i['market'])
		dic[i['region']]['School'] = int(i['school'])
	return dict(sorted(dic.items()))
Пример #2
0
def listAllMacroRegions():
	"""
	Retorna todas as micro-regiões consolidadas
	function() -> list
	"""
	lista = MongoDB.list_all_macro_regions()
	return lista
Пример #3
0
def listTableMoreInputs():
	"""
	Retorna a tabela com dos dados que serão escolhidos para compor a sulção de analise regressiva
	function() -> list, matrix (list of lists)
	"""
	l = MongoDB.list_all_macro_regions()
	regions = {}
	for i in l:
		if i['region'] not in regions:
			regions[i['region']] = {}
		for k,v in sorted(i.items()):
			if k not in [ '_id', 'lat', 'lng', 'qtd', 'type', 'region']:
				regions[i['region']][k] = v

	regionsList = []
	isFirstLine = True
	matrix = {}
	for r, values in sorted(regions.items()):
		regionsList.append(r)
		for k,v in sorted(values.items()):
			if k not in matrix:
				matrix[k] = []
			if k == 'price_by_meter':
				matrix[k].append(float("{0:.2f}".format(v)))
			else:
				matrix[k].append(v)
	return regionsList, matrix