lib/earth/locality/census_division/data_miner.rb in earth-0.0.38 vs lib/earth/locality/census_division/data_miner.rb in earth-0.0.39

- old
+ new

@@ -1,21 +1,49 @@ CensusDivision.class_eval do data_miner do schema Earth.database_options do - integer 'number' - string 'name' - string 'census_region_name' - integer 'census_region_number' + integer 'number' + string 'name' + string 'census_region_name' + integer 'census_region_number' + float 'meeting_building_natural_gas_intensity' + string 'meeting_building_natural_gas_intensity_units' + float 'meeting_building_fuel_oil_intensity' + string 'meeting_building_fuel_oil_intensity_units' + float 'meeting_building_electricity_intensity' + string 'meeting_building_electricity_intensity_units' + float 'meeting_building_district_heat_intensity' + string 'meeting_building_district_heat_intensity_units' end + falls_back_on :meeting_building_natural_gas_intensity => 0.011973, + :meeting_building_fuel_oil_intensity => 0.0037381, + :meeting_building_electricity_intensity => 0.072444, + :meeting_building_district_heat_intensity => 3458.7 + import 'the U.S. Census Geographic Terms and Definitions', :url => 'http://www.census.gov/popest/geographic/codes02.csv', :skip => 9, :select => lambda { |row| row['Division'].to_s.strip != 'X' and row['FIPS CODE STATE'].to_s.strip == 'X'} do key 'number', :field_name => 'Division' store 'name', :field_name => 'Name' store 'census_region_number', :field_name => 'Region' store 'census_region_name', :field_name => 'Region', :dictionary => { :input => 'number', :output => 'name', :url => 'http://data.brighterplanet.com/census_regions.csv' } end + + process 'Define some unit conversions' do + Conversions.register :hundred_cubic_feet_per_square_foot_hour, :cubic_metres_per_square_metre_hour, 30.48 + Conversions.register :gallons_per_square_foot_hour, :litres_per_square_metre_hour, 40.745833 + Conversions.register :kilowatt_hours_per_square_foot_hour, :kilowatt_hours_per_square_metre_hour, 10.76391 + Conversions.register :thousand_btu_per_square_foot_hour, :joules_per_square_metre_hour, 11_356_527 + end + + import 'meeting building fuel intensities calculated from CBECS 2003', + :url => 'https://spreadsheets.google.com/pub?key=0AoQJbWqPrREqdGotdjgtUEk0eUU0R3lxM1hHdlF1V0E&hl=en&output=csv' do + key 'number', :field_name => 'census_division' + store 'meeting_building_natural_gas_intensity', :from_units => :hundred_cubic_feet_per_square_foot_hour, :to_units => :cubic_metres_per_square_metre_hour + store 'meeting_building_fuel_oil_intensity', :from_units => :gallons_per_square_foot_hour, :to_units => :litres_per_square_metre_hour + store 'meeting_building_electricity_intensity', :from_units => :kilowatt_hours_per_square_foot_hour, :to_units => :kilowatt_hours_per_square_metre_hour + store 'meeting_building_district_heat_intensity', :from_units => :thousand_btu_per_square_foot_hour, :to_units => :joules_per_square_metre_hour + end end end -