lib/earth/locality/country/data_miner.rb in earth-0.11.9 vs lib/earth/locality/country/data_miner.rb in earth-0.11.10
- old
+ new
@@ -16,10 +16,36 @@
store 'iso_3166_alpha_3_code', :field_number => 1
store 'iso_3166_numeric_code', :field_number => 2
store 'name', :field_number => 5 # romanized version
end
+ import "heating degree day data from WRI CAIT",
+ :url => 'https://docs.google.com/spreadsheet/pub?key=0AoQJbWqPrREqdDN4MkRTSWtWRjdfazhRdWllTkVSMkE&output=csv',
+ :select => Proc.new { |record| record['country'] != 'European Union (27)' },
+ :errata => { :url => 'https://docs.google.com/spreadsheet/pub?key=0AoQJbWqPrREqdDNSMUtCV0h4cUF4UnBKZlNkczlNbFE&output=csv' } do
+ key 'name', :field_name => 'country'
+ store 'heating_degree_days', :units => :degrees_celsius
+ end
+
+ import "cooling degree day data from WRI CAIT",
+ :url => 'https://docs.google.com/spreadsheet/pub?key=0AoQJbWqPrREqdDN4MkRTSWtWRjdfazhRdWllTkVSMkE&output=csv',
+ :select => Proc.new { |record| record['country'] != 'European Union (27)' },
+ :errata => { :url => 'https://docs.google.com/spreadsheet/pub?key=0AoQJbWqPrREqdDNSMUtCV0h4cUF4UnBKZlNkczlNbFE&output=csv' } do
+ key 'name', :field_name => 'country'
+ store 'cooling_degree_days', :units => :degrees_celsius
+ end
+
+ process "set Montenegro's heating and cooling degree days to the same as Serbia's" do
+ montenegro = Country.find 'ME'
+ serbia = Country.find 'RS'
+ montenegro.heating_degree_days = serbia.heating_degree_days
+ montenegro.heating_degree_days_units = serbia.heating_degree_days_units
+ montenegro.cooling_degree_days = serbia.cooling_degree_days
+ montenegro.cooling_degree_days_units = serbia.cooling_degree_days_units
+ montenegro.save!
+ end
+
# AUTOMOBILE
import "automobile-related data for the US",
:url => 'https://spreadsheets.google.com/pub?key=0AoQJbWqPrREqdDdZRm1tNjY0c2dYNG00bXJ3TXRqUVE&gid=0&output=csv' do
key 'iso_3166_code'
store 'automobile_urbanity'
@@ -75,10 +101,10 @@
store 'electricity_emission_factor', :synthesize => lambda { |row|
(
row['electricity_co2_emission_factor'].to_f +
(row['electricity_ch4_emission_factor'].to_f * GreenhouseGas[:ch4].global_warming_potential) +
(row['electricity_n2o_emission_factor'].to_f * GreenhouseGas[:n2o].global_warming_potential)
- ) / (1 - row['loss_factor'].to_f) }, :units_field_name => 'kilograms_co2e_per_kilowatt_hour'
+ ) / (1 - row['loss_factor'].to_f) }, :units => 'kilograms_co2e_per_kilowatt_hour'
end
process "Ensure EgridSubregion is populated" do
EgridSubregion.run_data_miner!
end