示例#1
0
def get_relocation_information_as_ndarray(include_fields=("stat_centroid_elevation",
																  "stat_centroid_distance_to_original_boundary",
																  "stat_min_elevation",
																  "stat_max_elevation",
																  "stat_mean_elevation",
																  "stat_min_slope",
																  "stat_max_slope",
																  "stat_mean_slope",
																  "stat_mean_distance_to_floodplain",
																  "stat_min_distance_to_floodplain",
																  "stat_max_distance_to_floodplain",
																  "chosen",
																  )
												  ):

	data_records = []

	for town in RelocatedTown.objects.all():
		processing_log.info("Loading town {0:s}".format(town.name))
		new_data = conversion.features_to_dict_or_array(town.parcels.layer, include_fields=include_fields, array=True)
		data_records += new_data

	ndarray_data_records = numpy.asarray(data_records)

	return ndarray_data_records
示例#2
0
def export_relocation_information(include_fields=("stat_centroid_elevation",
												  "stat_centroid_distance_to_original_boundary",
												  "stat_min_elevation",
												  "stat_max_elevation",
												  "stat_mean_elevation",
												  "stat_min_slope",
												  "stat_max_slope",
												  "stat_mean_slope",
												  "stat_min_road_distance",
												  "stat_max_road_distance",
												  "stat_mean_road_distance",
												  "stat_mean_distance_to_floodplain",
												  "stat_min_distance_to_floodplain",
												  "stat_max_distance_to_floodplain",
												  "stat_min_protected_distance",
												  "stat_max_protected_distance",
												  "stat_mean_protected_distance",
												  "stat_is_protected",
												  "chosen",
												  )
								  ):
	"""
		If all of the towns are processed, then this exports it all to a single csv
	"""

	all_records = []
	for town in RelocatedTown.objects.all():
		processing_log.info("Loading town {0:s}".format(town.name))
		all_records += conversion.features_to_dict_or_array(town.parcels.layer, include_fields=include_fields)

	with open(r"C:\Users\dsx.AD3\Code\FloodMitigation\relocation\calibration\output_data.csv", 'w',) as write_file:
		csv_writer = csv.DictWriter(write_file, fieldnames=include_fields, lineterminator='\n',)  # needs the lineterminator option or else it writes an extra newline on Python 3
		csv_writer.writeheader()
		csv_writer.writerows(all_records)

	return all_records