census_for 0.1.3 → 0.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/data/2014-census-data.csv +8 -8
- data/lib/census_for.rb +50 -35
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 815ad82d694c0339e41b96823a50fe96766a4394
|
|
4
|
+
data.tar.gz: f20e6c474501790176e702b70b3e785c5a6a76ba
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: dacc3c03b89b6a9c7c8c0a601702f917df42b51b730e0c0691a50140a9cc71ffd6bea87b56ce580c04d90bfef462c3dcfd3fbd0ebdaf3ed57a66e5c54ef39ce3
|
|
7
|
+
data.tar.gz: b85d4870ce525cda7df93621af7de2a55392c90554886087db69bd1866f0e065beb2ad1f8900ea38c330cdd7f51e114e0f828e116b61875f6c49c987b00c7639
|
data/data/2014-census-data.csv
CHANGED
|
@@ -75,26 +75,26 @@ GEO.id,GEO.id2,GEO.display-label,rescen42010,resbase42010,respop72010,respop7201
|
|
|
75
75
|
0500000US02070,2070,"Dillingham Census Area, Alaska",4847,4847,4869,4969,4968,4988,4988
|
|
76
76
|
0500000US02090,2090,"Fairbanks North Star Borough, Alaska",97581,97581,98174,98029,100227,100807,99357
|
|
77
77
|
0500000US02100,2100,"Haines Borough, Alaska",2508,2508,2504,2572,2572,2569,2566
|
|
78
|
-
0500000US02105,2105,"Hoonah-
|
|
78
|
+
0500000US02105,2105,"Hoonah-angoon Census Area, Alaska",2150,2149,2149,2124,2140,2134,2082
|
|
79
79
|
0500000US02110,2110,"Juneau City and Borough, Alaska",31275,31275,31386,32170,32411,32626,32406
|
|
80
80
|
0500000US02122,2122,"Kenai Peninsula Borough, Alaska",55400,55400,55566,56369,56958,57067,57477
|
|
81
81
|
0500000US02130,2130,"Ketchikan Gateway Borough, Alaska",13477,13477,13536,13654,13709,13695,13787
|
|
82
82
|
0500000US02150,2150,"Kodiak Island Borough, Alaska",13592,13606,13637,13807,14075,14115,13986
|
|
83
83
|
0500000US02164,2164,"Lake and Peninsula Borough, Alaska",1631,1635,1638,1656,1643,1662,1631
|
|
84
|
-
0500000US02170,2170,"Matanuska-
|
|
84
|
+
0500000US02170,2170,"Matanuska-susitna Borough, Alaska",88995,88995,89783,91858,93798,95892,97882
|
|
85
85
|
0500000US02180,2180,"Nome Census Area, Alaska",9492,9492,9543,9844,9873,9884,9817
|
|
86
86
|
0500000US02185,2185,"North Slope Borough, Alaska",9430,9430,9467,9534,9655,9733,9703
|
|
87
87
|
0500000US02188,2188,"Northwest Arctic Borough, Alaska",7523,7523,7531,7708,7709,7697,7717
|
|
88
88
|
0500000US02195,2195,"Petersburg Borough, Alaska",3815,3207,3209,3235,3241,3213,3160
|
|
89
|
-
0500000US02198,2198,"Prince
|
|
89
|
+
0500000US02198,2198,"Prince Of Wales-hyder Census Area, Alaska",5559,6172,6214,6379,6387,6402,6396
|
|
90
90
|
0500000US02220,2220,"Sitka City and Borough, Alaska",8881,8881,8897,8913,9060,9014,8900
|
|
91
91
|
0500000US02230,2230,"Skagway Municipality, Alaska",968,968,965,960,994,1012,1036
|
|
92
92
|
0500000US02240,2240,"Southeast Fairbanks Census Area, Alaska",7029,7029,7053,7120,7149,6969,6931
|
|
93
|
-
|
|
93
|
+
r500000US02261,2261,"Valdez-cordova Census Area, Alaska",9636,9636,9678,9752,9736,9770,9488
|
|
94
94
|
0500000US02270,2270,"Wade Hampton Census Area, Alaska",7459,7459,7473,7662,7795,7952,8010
|
|
95
95
|
0500000US02275,2275,"Wrangell City and Borough, Alaska",2369,2365,2366,2381,2398,2404,2364
|
|
96
96
|
0500000US02282,2282,"Yakutat City and Borough, Alaska",662,662,661,647,651,634,635
|
|
97
|
-
0500000US02290,2290,"Yukon-
|
|
97
|
+
0500000US02290,2290,"Yukon-koyukuk Census Area, Alaska",5588,5588,5589,5733,5731,5654,5547
|
|
98
98
|
0500000US04001,4001,"Apache County, Arizona",71518,71518,71749,72354,72911,71867,71828
|
|
99
99
|
0500000US04003,4003,"Cochise County, Arizona",131346,131357,131868,133058,131919,129744,127448
|
|
100
100
|
0500000US04005,4005,"Coconino County, Arizona",134421,134437,134603,134159,135949,136690,137682
|
|
@@ -362,7 +362,7 @@ GEO.id,GEO.id2,GEO.display-label,rescen42010,resbase42010,respop72010,respop7201
|
|
|
362
362
|
0500000US12081,12081,"Manatee County, Florida",322833,322833,323510,327458,334071,342417,351746
|
|
363
363
|
0500000US12083,12083,"Marion County, Florida",331298,331303,331527,332507,334495,336159,339167
|
|
364
364
|
0500000US12085,12085,"Martin County, Florida",146318,146850,146978,147595,148846,151478,153392
|
|
365
|
-
0500000US12086,12086,"Miami-
|
|
365
|
+
0500000US12086,12086,"Miami-dade County, Florida",2496435,2498017,2508689,2579916,2610960,2641866,2662874
|
|
366
366
|
0500000US12087,12087,"Monroe County, Florida",73090,73090,73226,74151,74991,76536,77136
|
|
367
367
|
0500000US12089,12089,"Nassau County, Florida",73314,73314,73543,74159,74640,75628,76619
|
|
368
368
|
0500000US12091,12091,"Okaloosa County, Florida",180822,180822,180751,183314,190437,193906,196512
|
|
@@ -1355,7 +1355,7 @@ GEO.id,GEO.id2,GEO.display-label,rescen42010,resbase42010,respop72010,respop7201
|
|
|
1355
1355
|
0500000US27071,27071,"Koochiching County, Minnesota",13311,13311,13301,13236,13180,13117,12856
|
|
1356
1356
|
0500000US27073,27073,"Lac qui Parle County, Minnesota",7259,7259,7233,7231,7116,7010,6891
|
|
1357
1357
|
0500000US27075,27075,"Lake County, Minnesota",10866,10866,10863,10805,10830,10778,10680
|
|
1358
|
-
0500000US27077,27077,"Lake
|
|
1358
|
+
0500000US27077,27077,"Lake Of The Woods County, Minnesota",4045,4045,4041,4023,3968,3931,3918
|
|
1359
1359
|
0500000US27079,27079,"Le Sueur County, Minnesota",27703,27703,27690,27802,27647,27678,27770
|
|
1360
1360
|
0500000US27081,27081,"Lincoln County, Minnesota",5896,5896,5877,5846,5800,5792,5788
|
|
1361
1361
|
0500000US27083,27083,"Lyon County, Minnesota",25857,25857,25856,25808,25618,25674,25665
|
|
@@ -2870,7 +2870,7 @@ GEO.id,GEO.id2,GEO.display-label,rescen42010,resbase42010,respop72010,respop7201
|
|
|
2870
2870
|
0500000US51087,51087,"Henrico County, Virginia",306935,306906,307542,310550,315431,318943,321924
|
|
2871
2871
|
0500000US51089,51089,"Henry County, Virginia",54151,54143,54094,53274,52824,52527,52081
|
|
2872
2872
|
0500000US51091,51091,"Highland County, Virginia",2321,2319,2294,2279,2249,2219,2248
|
|
2873
|
-
0500000US51093,51093,"Isle
|
|
2873
|
+
0500000US51093,51093,"Isle Of Wight County, Virginia",35270,35270,35288,35274,35380,35643,36007
|
|
2874
2874
|
0500000US51095,51095,"James City County, Virginia",67009,67401,67751,68329,69532,70964,72583
|
|
2875
2875
|
0500000US51097,51097,"King and Queen County, Virginia",6945,6945,6970,7032,7068,7118,7175
|
|
2876
2876
|
0500000US51099,51099,"King George County, Virginia",23584,23584,23676,24279,24608,24950,25371
|
data/lib/census_for.rb
CHANGED
|
@@ -2,7 +2,7 @@ require 'smarter_csv'
|
|
|
2
2
|
|
|
3
3
|
class CensusFor
|
|
4
4
|
|
|
5
|
-
VERSION = "0.1.
|
|
5
|
+
VERSION = "0.1.5"
|
|
6
6
|
|
|
7
7
|
STATES =
|
|
8
8
|
{
|
|
@@ -49,37 +49,63 @@ class CensusFor
|
|
|
49
49
|
end
|
|
50
50
|
|
|
51
51
|
class County
|
|
52
|
+
|
|
52
53
|
def self.population(request)
|
|
53
|
-
|
|
54
|
-
return population_lookup(parsed_request)
|
|
54
|
+
self.new(request).population
|
|
55
55
|
end
|
|
56
56
|
|
|
57
|
-
def self.parse_county_state(
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
57
|
+
def self.parse_county_state(request)
|
|
58
|
+
self.new(request).parse_county_state
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
def initialize(request)
|
|
62
|
+
@request = request
|
|
63
|
+
@request_array = request_to_array_minus_countystring
|
|
64
|
+
match_state_and_county
|
|
65
|
+
end
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
def match_state_and_county
|
|
69
|
+
if @state = Abbrev.converter(@request_array.last)
|
|
70
|
+
@county = @request_array[0...-1].join(' ')
|
|
71
|
+
elsif @state = Abbrev.converter(@request_array.last(2).join(' '))
|
|
72
|
+
@county = @request_array[0...-2].join(' ')
|
|
73
|
+
elsif @state = Abbrev.converter(@request_array.last(3).join(' '))
|
|
74
|
+
@county = @request_array[0...-3].join(' ')
|
|
69
75
|
end
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
76
|
+
@county = titleize(@county)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
def population
|
|
80
|
+
parsed_request = parse_county_state
|
|
81
|
+
return County.population_lookup(parsed_request)
|
|
82
|
+
end
|
|
83
|
+
|
|
84
|
+
def parse_county_state
|
|
85
|
+
result = CensusData.data.find do |x|
|
|
86
|
+
x[:"geo.display_label"] == "#{@county} County, #{@state}" ||
|
|
87
|
+
x[:"geo.display_label"] == "#{@county} Parish, #{@state}" ||
|
|
88
|
+
x[:"geo.display_label"] == "#{@county} Municipio, #{@state}" ||
|
|
89
|
+
x[:"geo.display_label"] == "#{@county} Municipality, #{@state}" ||
|
|
90
|
+
x[:"geo.display_label"] == "#{@county} Borough, #{@state}" ||
|
|
91
|
+
x[:"geo.display_label"] == "#{@county} Census Area, #{@state}" ||
|
|
92
|
+
x[:"geo.display_label"] == "#{@county} City County, #{@state}" ||
|
|
93
|
+
x[:"geo.display_label"] == "#{@county} City and Borough, #{@state}"
|
|
94
|
+
end
|
|
95
|
+
if result
|
|
96
|
+
return result[:"geo.display_label"]
|
|
79
97
|
end
|
|
80
98
|
return "not found"
|
|
81
99
|
end
|
|
82
100
|
|
|
101
|
+
def titleize(string)
|
|
102
|
+
string.split.map(&:capitalize).join(' ')
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def request_to_array_minus_countystring
|
|
106
|
+
@request.downcase.split(/[\s,]+/) - ["county"] - ["parish"] - ["borough"] - ["municipio"] - ["municipality"] - ["census"] - ["area"] - ["city"] - ["and"]
|
|
107
|
+
end
|
|
108
|
+
|
|
83
109
|
def self.population_lookup(parsed_county_state)
|
|
84
110
|
if parsed_county_state == "not found"
|
|
85
111
|
return "not found"
|
|
@@ -87,17 +113,6 @@ class CensusFor
|
|
|
87
113
|
return CensusData.data.find { |x| x[:"geo.display_label"] == parsed_county_state }[:respop72014]
|
|
88
114
|
end
|
|
89
115
|
end
|
|
90
|
-
|
|
91
|
-
def self.coeff(county_state)
|
|
92
|
-
coefficient = (population(county_state) * 1000 / highest_county_pop).to_f
|
|
93
|
-
coefficient < 1 ? 1 : coefficient
|
|
94
|
-
end
|
|
95
|
-
|
|
96
|
-
def self.highest_county_pop
|
|
97
|
-
most_populous_county = CensusData.data.max_by { |x| x[:respop72014] }
|
|
98
|
-
most_populous_county[:respop72014]
|
|
99
|
-
#for 2014, this is Los Angeles County, CA: pop 10,116,705
|
|
100
|
-
end
|
|
101
116
|
end
|
|
102
117
|
|
|
103
118
|
class State
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: census_for
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.5
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Evan Koch
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-01-
|
|
11
|
+
date: 2016-01-20 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: smarter_csv
|
|
@@ -80,8 +80,8 @@ dependencies:
|
|
|
80
80
|
- - "~>"
|
|
81
81
|
- !ruby/object:Gem::Version
|
|
82
82
|
version: '0'
|
|
83
|
-
description: Gem returns population data for US States, Counties,
|
|
84
|
-
|
|
83
|
+
description: Gem returns population data for US States, Counties, including Puerto
|
|
84
|
+
Rico, US territories.
|
|
85
85
|
email:
|
|
86
86
|
- evankoch@gmail.com
|
|
87
87
|
executables: []
|