rubyvis 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
data.tar.gz.sig CHANGED
@@ -1 +1,2 @@
1
- ������������p��ta4(RxԺd!� ���� �6µ6*m���Ӂ�d�`n�t��6<�O!�ҫ�lȃ1��y��-��R*�3.�X��-(?�iax����)��cmm߷�|C '����
1
+ �:�Kpڿ}7"k�h
2
+ �õ,�ްa5�T"��2���ˬ���1����f��=��~7�&�S�C#һ��J�C$߶�����C�5
@@ -1,3 +1,17 @@
1
+ === 0.2.1 / 2010-11-11
2
+
3
+ * Added Rubyvis.dict()
4
+ * Added Rubyvis::Scale::Ordinal.split_flush()
5
+ * New example: parallel coordinates on /examples/cars/cars.rb
6
+ * New example: pie chart on /examples/antibiotics/antibiotics_wedge.rb
7
+ * New spec for readme examples (sort of smoke test)
8
+ * Better implementation of Layout
9
+ * Bug fix: raise error Proc.js_apply on Ruby1.9.2 (doesn't accept instance_eval with &proc)
10
+ * Ahhh... how I hate differences on return inside lambdas! Resolved bug on AreaPrototype::area_build_instance removing return inside a lambda
11
+ * Bug fix: Rubyvis::Scale::Linear.scale() returns a value when nil is passed. Now, returns nil
12
+ * Bug fix: Calling Mark.instance() of a parent mark inside a children returns only the last instance, not the currently parsed instance
13
+
14
+
1
15
  === 0.2.0 / 2010-11-02
2
16
 
3
17
  * IMPORTANT: Added 'ruby best practices' API. See README and examples/first_rbp_api.rb to learn how to use
@@ -2,13 +2,16 @@ History.txt
2
2
  Manifest.txt
3
3
  README.txt
4
4
  Rakefile
5
- examples/antibiotics/antibiotics.rb
6
5
  examples/antibiotics/antibiotics_data.rb
6
+ examples/antibiotics/antibiotics_scatter.rb
7
+ examples/antibiotics/antibiotics_wedge.rb
7
8
  examples/area.rb
8
9
  examples/area_interpolation.rb
9
10
  examples/bar_column_chart.rb
10
11
  examples/barley/barley.rb
11
12
  examples/barley/barley_data.rb
13
+ examples/cars/cars.rb
14
+ examples/cars/cars_data.rb
12
15
  examples/crimea/crimea_data.rb
13
16
  examples/crimea/crimea_grouped_bar.rb
14
17
  examples/crimea/crimea_line.rb
@@ -18,7 +21,6 @@ examples/first_rbp_api.rb
18
21
  examples/fixtures/tipsy.gif
19
22
  examples/grouped_charts.rb
20
23
  examples/image.rb
21
- examples/image.svg
22
24
  examples/line.rb
23
25
  examples/line_and_step.rb
24
26
  examples/line_interpolation.rb
@@ -80,6 +82,7 @@ spec/line_spec.rb
80
82
  spec/mark_spec.rb
81
83
  spec/nest_spec.rb
82
84
  spec/panel_spec.rb
85
+ spec/readme_spec.rb
83
86
  spec/ruby_api_spec.rb
84
87
  spec/scale_linear_datetime_spec.rb
85
88
  spec/scale_linear_spec.rb
data/README.txt CHANGED
@@ -1,4 +1,4 @@
1
- = protoruby
1
+ = Rubyvis
2
2
 
3
3
  * http://rubyvis.rubyforge.org/
4
4
 
@@ -104,11 +104,17 @@ The library allows you to use chain methods API, like original protovis
104
104
 
105
105
  See examples directory for original protovis examples adaptations and others graphics
106
106
 
107
+ == THE MOST FREQUENT QUESTION (MFQ)
107
108
 
109
+ ¿Why use a server-side technology if I can use a client-side, which is faster and more economic for developer?
110
+
111
+ If you want to present graphs: (a) complex and/or dynamically generated, (b) only on the web and (c) on modern browsers, Protovis[http://vis.stanford.edu/protovis/] is an excellent option. For simpler charts, Protovis is overkill. I recomend jqPlot[http://www.jqplot.com/]
112
+
113
+ Rubyvis is designed mainly for off-line operation, like batch creation of graphs for use on printed documents (rtf-pdf), with possibility of use easily the script for on-line use.
108
114
 
109
115
  == REQUIREMENTS:
110
116
 
111
- Ruby 1.8.7 or 1.9.1
117
+ Ruby 1.9.1. Working on total Ruby 1.8.7 compatibility
112
118
 
113
119
  == INSTALL:
114
120
 
@@ -1,3 +1,4 @@
1
+ # = Antibiotic Effectiveness : Scatterplot
1
2
  $:.unshift(File.dirname(__FILE__)+"/../../lib")
2
3
  require 'rubyvis'
3
4
  load(File.dirname(__FILE__)+"/antibiotics_data.rb")
@@ -0,0 +1,121 @@
1
+ # = Antibiotic Effectiveness : Pie chart
2
+ $:.unshift(File.dirname(__FILE__)+"/../../lib")
3
+ require 'rubyvis'
4
+ load(File.dirname(__FILE__)+"/antibiotics_data.rb")
5
+
6
+ width = 700
7
+ height = 700
8
+ inner_radius = 90
9
+ outer_radius = 300 - 10
10
+
11
+ drug_color = {
12
+ :penicillin=> "rgb(10, 50, 100)",
13
+ :streptomycin=> "rgb(200, 70, 50)",
14
+ :neomycin=> "black"
15
+ }
16
+ gram_color = {
17
+ :positive=> "rgba(174, 174, 184, .8)",
18
+ :negative=> "rgba(230, 130, 110, .8)"
19
+ }
20
+
21
+ #/* Burtin's radius encoding is, as far as I can tell, sqrt(log(mic)). */
22
+ min = Math.sqrt(Math.log(0.001 * 1e4))
23
+ max = Math.sqrt(Math.log(1000 * 1e4))
24
+ a = (outer_radius - inner_radius) / (min - max.to_f)
25
+ b = inner_radius - a * max
26
+
27
+ radius = lambda {|mic| a * Math.sqrt(Math.log(mic * 1e4)) + b}
28
+ #
29
+ # The pie is split into equal sections for each bacteria, with a blank
30
+ # section at the top for the grid labels. Each wedge is further
31
+ # subdivided to make room for the three antibiotics, equispaced.
32
+
33
+ big_angle = 2.0 * Math::PI / ($bacteria.length + 1.0)
34
+ small_angle = big_angle / 7.0
35
+ #/* The root panel. */
36
+ vis = Rubyvis::Panel.new.
37
+ width(width).
38
+ height(height).
39
+ bottom(100);
40
+
41
+
42
+
43
+ #/* Background wedges to indicate gram staining color. */
44
+ bg = vis.add(Rubyvis::Wedge).
45
+ data($bacteria). # assumes Burtin's order
46
+ left(lambda {|i| width / 2.0}).
47
+ top(height / 2.0).
48
+ inner_radius(inner_radius).
49
+ outer_radius(outer_radius).
50
+ angle(big_angle).
51
+ start_angle(lambda {|d| self.index * big_angle + big_angle / 2.0 - Math::PI / 2.0}).
52
+ fill_style(lambda {|d| Rubyvis.color(gram_color[d[:gram].to_sym])})
53
+
54
+ # Antibiotics.
55
+ bg.add(Rubyvis::Wedge).
56
+ angle(small_angle).
57
+ start_angle(lambda {|d| bg.start_angle() + small_angle}).
58
+ outer_radius(lambda {|d| radius.call(d[:penicillin])}).
59
+ fill_style(drug_color[:penicillin]).
60
+ add(Rubyvis::Wedge).
61
+ start_angle(lambda {|d| self.proto.start_angle() + 2 * small_angle}).
62
+ outer_radius(lambda {|d| radius.call(d[:streptomycin])}).
63
+ fill_style(drug_color[:streptomycin]).
64
+ add(Rubyvis::Wedge).
65
+ outer_radius(lambda {|d| radius.call(d[:neomycin])}).
66
+ fill_style(drug_color[:neomycin])
67
+
68
+ #/* Circular grid lines. */
69
+
70
+ bg.add(Rubyvis::Dot)
71
+ .data(Rubyvis.range(-3, 4))
72
+ .fill_style(nil)
73
+ .stroke_style("#eee")
74
+ .line_width(1)
75
+ .shape_size(lambda {|i| radius.call(10**i)** 2})
76
+ .anchor("top").add(Rubyvis::Label).
77
+ visible(lambda {|i| i < 3})
78
+ .text_baseline("middle")
79
+ .text(lambda {|i| i<0 ? (10** i).to_f : (10**i).to_i})
80
+
81
+ #/* Radial grid lines. */
82
+ bg.add(Rubyvis::Wedge)
83
+ .data(Rubyvis.range($bacteria.size + 1))
84
+ .inner_radius(inner_radius - 10)
85
+ .outer_radius(outer_radius + 10)
86
+ .fill_style(nil)
87
+ .stroke_style("black")
88
+ .angle(0)
89
+
90
+ #/* Labels. */
91
+ bg.anchor("outer").add(Rubyvis::Label)
92
+ .text_align("center")
93
+ .text(lambda {|d| d[:bacteria]})
94
+
95
+ #/* Antibiotic legend. */
96
+ vis.add(Rubyvis::Bar)
97
+ .data(Rubyvis.keys(drug_color))
98
+ .right(width / 2 + 3)
99
+ .top(lambda { height / 2.0 - 28 + self.index * 18})
100
+ .fill_style(lambda {|d| drug_color[d]})
101
+ .width(36)
102
+ .height(12)
103
+ .anchor("right").add(Rubyvis::Label)
104
+ .textMargin(6)
105
+ .textAlign("left");
106
+
107
+ #/* Gram-stain legend. */
108
+ vis.add(pv.Dot)
109
+ .data([:positive, :negative])
110
+ .left(width / 2.0 - 20)
111
+ .bottom(lambda { -60 + self.index * 18})
112
+ .fill_style(lambda {|d| gram_color[d]})
113
+ .stroke_style(nil)
114
+ .shape_size(30)
115
+ .anchor("right").add(Rubyvis::Label)
116
+ .text_margin(6)
117
+ .text_align("left")
118
+ .text(lambda {|d| "Gram-#{d}"})
119
+
120
+ vis.render
121
+ puts vis.to_svg
@@ -1,7 +1,8 @@
1
1
  # = Area Charts
2
2
  # This simple area chart is constructed using an area mark, with an added line for emphasis on the top edge. Next, rules and labels are added for reference values.
3
- # Although this example is basic, it provides a good starting point for adding more complex features. For instance, mouseover interaction can be added to allow precise reading of data values. Or multiple series of data can be added to produce a stacked area chart.
4
- # Protovis version: http://vis.stanford.edu/protovis/ex/area.html
3
+ # Although this example is basic, it provides a good starting point for adding more complex features. For instance, multiple series of data can be added to produce a stacked area chart.
4
+ # * Protovis version: http://vis.stanford.edu/protovis/ex/area.html
5
+ # * Syntax: RBP
5
6
  $:.unshift(File.dirname(__FILE__)+"/../lib")
6
7
  require 'rubyvis'
7
8
 
@@ -17,43 +18,49 @@ x = pv.Scale.linear(data, lambda {|d| d.x}).range(0, w)
17
18
 
18
19
  y = pv.Scale.linear(0, 4).range(0, h);
19
20
 
20
- #/* The root panel. */
21
- vis = pv.Panel.new()
22
- .width(w)
23
- .height(h)
24
- .bottom(20)
25
- .left(20)
26
- .right(10)
27
- .top(5)
28
-
29
- # Y-axis and ticks.
30
- vis.add(pv.Rule)
31
- .data(y.ticks(5))
32
- .bottom(y)
33
- .stroke_style(lambda {|d| d!=0 ? "#eee" : "#000"})
34
- .anchor("left").add(pv.Label)
35
- .text(y.tick_format)
21
+ #The root panel
22
+ vis = pv.Panel.new() do
23
+ width w
24
+ height h
25
+ bottom 20
26
+ left 20
27
+ right 10
28
+ top 5
36
29
 
30
+ # Y-axis and ticks
31
+ rule do
32
+ data y.ticks(5)
33
+ bottom(y)
34
+ stroke_style {|d| d!=0 ? "#eee" : "#000"}
35
+ label(:anchor=>"left") {
36
+ text y.tick_format
37
+ }
38
+ end
39
+
37
40
  # X-axis and ticks.
38
- vis.add(pv.Rule)
39
- .data(x.ticks())
40
- .visible(lambda {|d| d!=0})
41
- .left(x)
42
- .bottom(-5)
43
- .height(5)
44
- .anchor("bottom").add(pv.Label)
45
- .text(x.tick_format)
41
+ rule do
42
+ data x.ticks()
43
+ visible {|d| d!=0}
44
+ left(x)
45
+ bottom(-5)
46
+ height(5)
47
+ label(:anchor=>'bottom') {
48
+ text(x.tick_format)
49
+ }
50
+ end
46
51
 
47
52
  #/* The area with top line. */
48
- vis.add(pv.Area)
49
- .data(data)
50
- .bottom(1)
51
- .left(lambda {|d| x.scale(d.x)})
52
- .height(lambda {|d| y.scale(d.y)})
53
- .fill_style("rgb(121,173,210)")
54
- .anchor("top").add(pv.Line)
55
- .line_width(3)
56
-
53
+ area do |a|
54
+ a.data data
55
+ a.bottom(1)
56
+ a.left {|d| x.scale(d.x)}
57
+ a.height {|d| y.scale(d.y)}
58
+ a.fill_style("rgb(121,173,210)")
59
+ a.line(:anchor=>'top') {
60
+ line_width(3)
61
+ }
62
+ end
63
+ end
57
64
  vis.render();
58
65
 
59
66
 
@@ -3,7 +3,7 @@
3
3
  $:.unshift(File.dirname(__FILE__)+"/../lib")
4
4
  require 'rubyvis'
5
5
 
6
- data = pv.range(0, 10, 0.5).map {|x|
6
+ data = Rubyvis.range(0, 10, 0.5).map {|x|
7
7
  OpenStruct.new({:x=> x, :y=> Math.sin(x) + 2+rand()*0.3})
8
8
  }
9
9
 
@@ -13,8 +13,8 @@ p_h=150
13
13
  w = 20+p_w*2
14
14
  h = 20+p_h*3
15
15
 
16
- x = pv.Scale.linear(data, lambda {|d| d.x}).range(0, p_w-30)
17
- y = pv.Scale.linear(data, lambda {|d| d.y}).range(0, p_h-20);
16
+ x = Rubyvis.Scale.linear(data, lambda {|d| d.x}).range(0, p_w-30)
17
+ y = Rubyvis.Scale.linear(data, lambda {|d| d.y}).range(0, p_h-20);
18
18
  interpolations=["linear","step-before","step-after", "basis", "cardinal"]
19
19
 
20
20
  vis = Rubyvis::Panel.new do |pan|
@@ -4,9 +4,13 @@ load(File.dirname(__FILE__)+"/barley_data.rb")
4
4
  # Nest yields data by site then year. */
5
5
 
6
6
  # Compute yield medians by site and by variety. */
7
- median=lambda {|data| pv.median(data, lambda {|d| d[:yield]}) }
7
+ median=lambda {|data|
8
+ pv.median(data, lambda {|d| d[:yield]})
9
+ }
8
10
 
9
- site = pv.nest($barley).key(lambda {|d| d[:site]}).rollup(median)
11
+ site = pv.nest($barley).
12
+ key(lambda {|d| d[:site]}).
13
+ rollup(median)
10
14
 
11
15
  variety = pv.nest($barley).key(lambda {|d| d[:variety]}).rollup(median);
12
16
 
@@ -0,0 +1,90 @@
1
+ # = Parallel Coordinates
2
+ # Parallel coordinates is a popular method of visualizing high-dimensional data using dynamic queries.
3
+ # On static setting, you could choose an attribute and colour each datum which belongs to an attribute differently. On this example, we choose to color :cylinders attribute and highlight the cars with 8 cylinders
4
+
5
+ $:.unshift(File.dirname(__FILE__)+"/../../lib")
6
+ require 'rubyvis'
7
+ load(File.dirname(__FILE__)+"/cars_data.rb")
8
+ attr_to_color=:cylinders
9
+ highlighted=lambda {|d|
10
+ d[:cylinders].to_i==8
11
+ }
12
+
13
+ dims = [
14
+ :cylinders,
15
+ :displacement,
16
+ :weight,
17
+ :horsepower,
18
+ :acceleration,
19
+ :mpg,
20
+ :year,
21
+ :origin
22
+ ];
23
+
24
+ # Sizing and scales. */
25
+ w = 840
26
+ h = 420
27
+ color = Rubyvis.Colors.category10()
28
+ car_color = Rubyvis.Colors.category10()
29
+ x = Rubyvis.Scale.ordinal(dims).split_flush(0, w)
30
+ y = Rubyvis.dict(dims, lambda {|t|
31
+ Rubyvis.Scale.linear().
32
+ domain($cars.find_all {|d| !d[t].nil?} ,
33
+ lambda {|d| d[t]}).range(0, h)
34
+ })
35
+
36
+ #/* The root panel. */
37
+ vis=Rubyvis::Panel.new do
38
+ width w
39
+ height h
40
+ margin 20
41
+ bottom 40
42
+ # Rule and labels per dimension
43
+ rule do
44
+ data(dims)
45
+ left(x)
46
+ stroke_style(lambda {|d| color.scale(index)})
47
+ line_width(2)
48
+ # Min value
49
+ label(:anchor=>'bottom') do
50
+ text {|t|
51
+ y[t].tick_format.call(y[t].domain()[0])
52
+ }
53
+ end
54
+ # Max value
55
+ label(:anchor=>'top') do
56
+ text {
57
+ |t| y[t].tick_format.call(y[t].domain()[1])
58
+ }
59
+ end
60
+ # Dim name
61
+ label(:anchor=>'bottom') do
62
+ text_style {color.scale(index).darker}
63
+ text_margin 14
64
+ end
65
+ end
66
+ # Parallel coordinates.
67
+ panel do
68
+ # Each car generate a panel
69
+ data($cars)
70
+ line do
71
+ # Inside each car, every dimension generate a point
72
+ data(dims)
73
+ left {|t, d| x.scale(t)}
74
+ bottom {|t, d| y[t].scale(d[t])}
75
+ line_width {|t,d|
76
+ highlighted.call(d) ? 4 : 1
77
+ }
78
+ stroke_style {|t,d|
79
+ # Highlighted items will be opaquer
80
+ alpha=highlighted.call(d) ? 0.4 : 0.1
81
+ car_color.scale(d[attr_to_color]).alpha(alpha)
82
+ }
83
+ line_width(1)
84
+ end
85
+ end
86
+ end
87
+
88
+
89
+ vis.render()
90
+ puts vis.to_svg
@@ -0,0 +1,409 @@
1
+ $cars = [
2
+ {:name=>"chevrolet chevelle malibu", :mpg=>18, :cylinders=>8, :displacement=>307, :horsepower=>130, :weight=>3504, :acceleration=>12, :year=>70, :origin=>1},
3
+ {:name=>"buick skylark 320", :mpg=>15, :cylinders=>8, :displacement=>350, :horsepower=>165, :weight=>3693, :acceleration=>11.5, :year=>70, :origin=>1},
4
+ {:name=>"plymouth satellite", :mpg=>18, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>3436, :acceleration=>11, :year=>70, :origin=>1},
5
+ {:name=>"amc rebel sst", :mpg=>16, :cylinders=>8, :displacement=>304, :horsepower=>150, :weight=>3433, :acceleration=>12, :year=>70, :origin=>1},
6
+ {:name=>"ford torino", :mpg=>17, :cylinders=>8, :displacement=>302, :horsepower=>140, :weight=>3449, :acceleration=>10.5, :year=>70, :origin=>1},
7
+ {:name=>"ford galaxie 500", :mpg=>15, :cylinders=>8, :displacement=>429, :horsepower=>198, :weight=>4341, :acceleration=>10, :year=>70, :origin=>1},
8
+ {:name=>"chevrolet impala", :mpg=>14, :cylinders=>8, :displacement=>454, :horsepower=>220, :weight=>4354, :acceleration=>9, :year=>70, :origin=>1},
9
+ {:name=>"plymouth fury iii", :mpg=>14, :cylinders=>8, :displacement=>440, :horsepower=>215, :weight=>4312, :acceleration=>8.5, :year=>70, :origin=>1},
10
+ {:name=>"pontiac catalina", :mpg=>14, :cylinders=>8, :displacement=>455, :horsepower=>225, :weight=>4425, :acceleration=>10, :year=>70, :origin=>1},
11
+ {:name=>"amc ambassador dpl", :mpg=>15, :cylinders=>8, :displacement=>390, :horsepower=>190, :weight=>3850, :acceleration=>8.5, :year=>70, :origin=>1},
12
+ {:name=>"citroen ds-21 pallas", :mpg=>nil, :cylinders=>4, :displacement=>133, :horsepower=>115, :weight=>3090, :acceleration=>17.5, :year=>70, :origin=>2},
13
+ {:name=>"chevrolet chevelle concours (sw)", :mpg=>nil, :cylinders=>8, :displacement=>350, :horsepower=>165, :weight=>4142, :acceleration=>11.5, :year=>70, :origin=>1},
14
+ {:name=>"ford torino (sw)", :mpg=>nil, :cylinders=>8, :displacement=>351, :horsepower=>153, :weight=>4034, :acceleration=>11, :year=>70, :origin=>1},
15
+ {:name=>"plymouth satellite (sw)", :mpg=>nil, :cylinders=>8, :displacement=>383, :horsepower=>175, :weight=>4166, :acceleration=>10.5, :year=>70, :origin=>1},
16
+ {:name=>"amc rebel sst (sw)", :mpg=>nil, :cylinders=>8, :displacement=>360, :horsepower=>175, :weight=>3850, :acceleration=>11, :year=>70, :origin=>1},
17
+ {:name=>"dodge challenger se", :mpg=>15, :cylinders=>8, :displacement=>383, :horsepower=>170, :weight=>3563, :acceleration=>10, :year=>70, :origin=>1},
18
+ {:name=>"plymouth 'cuda 340", :mpg=>14, :cylinders=>8, :displacement=>340, :horsepower=>160, :weight=>3609, :acceleration=>8, :year=>70, :origin=>1},
19
+ {:name=>"ford mustang boss 302", :mpg=>nil, :cylinders=>8, :displacement=>302, :horsepower=>140, :weight=>3353, :acceleration=>8, :year=>70, :origin=>1},
20
+ {:name=>"chevrolet monte carlo", :mpg=>15, :cylinders=>8, :displacement=>400, :horsepower=>150, :weight=>3761, :acceleration=>9.5, :year=>70, :origin=>1},
21
+ {:name=>"buick estate wagon (sw)", :mpg=>14, :cylinders=>8, :displacement=>455, :horsepower=>225, :weight=>3086, :acceleration=>10, :year=>70, :origin=>1},
22
+ {:name=>"toyota corona mark ii", :mpg=>24, :cylinders=>4, :displacement=>113, :horsepower=>95, :weight=>2372, :acceleration=>15, :year=>70, :origin=>3},
23
+ {:name=>"plymouth duster", :mpg=>22, :cylinders=>6, :displacement=>198, :horsepower=>95, :weight=>2833, :acceleration=>15.5, :year=>70, :origin=>1},
24
+ {:name=>"amc hornet", :mpg=>18, :cylinders=>6, :displacement=>199, :horsepower=>97, :weight=>2774, :acceleration=>15.5, :year=>70, :origin=>1},
25
+ {:name=>"ford maverick", :mpg=>21, :cylinders=>6, :displacement=>200, :horsepower=>85, :weight=>2587, :acceleration=>16, :year=>70, :origin=>1},
26
+ {:name=>"datsun pl510", :mpg=>27, :cylinders=>4, :displacement=>97, :horsepower=>88, :weight=>2130, :acceleration=>14.5, :year=>70, :origin=>3},
27
+ {:name=>"volkswagen 1131 deluxe sedan", :mpg=>26, :cylinders=>4, :displacement=>97, :horsepower=>46, :weight=>1835, :acceleration=>20.5, :year=>70, :origin=>2},
28
+ {:name=>"peugeot 504", :mpg=>25, :cylinders=>4, :displacement=>110, :horsepower=>87, :weight=>2672, :acceleration=>17.5, :year=>70, :origin=>2},
29
+ {:name=>"audi 100 ls", :mpg=>24, :cylinders=>4, :displacement=>107, :horsepower=>90, :weight=>2430, :acceleration=>14.5, :year=>70, :origin=>2},
30
+ {:name=>"saab 99e", :mpg=>25, :cylinders=>4, :displacement=>104, :horsepower=>95, :weight=>2375, :acceleration=>17.5, :year=>70, :origin=>2},
31
+ {:name=>"bmw 2002", :mpg=>26, :cylinders=>4, :displacement=>121, :horsepower=>113, :weight=>2234, :acceleration=>12.5, :year=>70, :origin=>2},
32
+ {:name=>"amc gremlin", :mpg=>21, :cylinders=>6, :displacement=>199, :horsepower=>90, :weight=>2648, :acceleration=>15, :year=>70, :origin=>1},
33
+ {:name=>"ford f250", :mpg=>10, :cylinders=>8, :displacement=>360, :horsepower=>215, :weight=>4615, :acceleration=>14, :year=>70, :origin=>1},
34
+ {:name=>"chevy c20", :mpg=>10, :cylinders=>8, :displacement=>307, :horsepower=>200, :weight=>4376, :acceleration=>15, :year=>70, :origin=>1},
35
+ {:name=>"dodge d200", :mpg=>11, :cylinders=>8, :displacement=>318, :horsepower=>210, :weight=>4382, :acceleration=>13.5, :year=>70, :origin=>1},
36
+ {:name=>"hi 1200d", :mpg=>9, :cylinders=>8, :displacement=>304, :horsepower=>193, :weight=>4732, :acceleration=>18.5, :year=>70, :origin=>1},
37
+ {:name=>"datsun pl510", :mpg=>27, :cylinders=>4, :displacement=>97, :horsepower=>88, :weight=>2130, :acceleration=>14.5, :year=>71, :origin=>3},
38
+ {:name=>"chevrolet vega 2300", :mpg=>28, :cylinders=>4, :displacement=>140, :horsepower=>90, :weight=>2264, :acceleration=>15.5, :year=>71, :origin=>1},
39
+ {:name=>"toyota corona", :mpg=>25, :cylinders=>4, :displacement=>113, :horsepower=>95, :weight=>2228, :acceleration=>14, :year=>71, :origin=>3},
40
+ {:name=>"ford pinto", :mpg=>25, :cylinders=>4, :displacement=>98, :horsepower=>nil, :weight=>2046, :acceleration=>19, :year=>71, :origin=>1},
41
+ {:name=>"volkswagen super beetle 117", :mpg=>nil, :cylinders=>4, :displacement=>97, :horsepower=>48, :weight=>1978, :acceleration=>20, :year=>71, :origin=>2},
42
+ {:name=>"amc gremlin", :mpg=>19, :cylinders=>6, :displacement=>232, :horsepower=>100, :weight=>2634, :acceleration=>13, :year=>71, :origin=>1},
43
+ {:name=>"plymouth satellite custom", :mpg=>16, :cylinders=>6, :displacement=>225, :horsepower=>105, :weight=>3439, :acceleration=>15.5, :year=>71, :origin=>1},
44
+ {:name=>"chevrolet chevelle malibu", :mpg=>17, :cylinders=>6, :displacement=>250, :horsepower=>100, :weight=>3329, :acceleration=>15.5, :year=>71, :origin=>1},
45
+ {:name=>"ford torino 500", :mpg=>19, :cylinders=>6, :displacement=>250, :horsepower=>88, :weight=>3302, :acceleration=>15.5, :year=>71, :origin=>1},
46
+ {:name=>"amc matador", :mpg=>18, :cylinders=>6, :displacement=>232, :horsepower=>100, :weight=>3288, :acceleration=>15.5, :year=>71, :origin=>1},
47
+ {:name=>"chevrolet impala", :mpg=>14, :cylinders=>8, :displacement=>350, :horsepower=>165, :weight=>4209, :acceleration=>12, :year=>71, :origin=>1},
48
+ {:name=>"pontiac catalina brougham", :mpg=>14, :cylinders=>8, :displacement=>400, :horsepower=>175, :weight=>4464, :acceleration=>11.5, :year=>71, :origin=>1},
49
+ {:name=>"ford galaxie 500", :mpg=>14, :cylinders=>8, :displacement=>351, :horsepower=>153, :weight=>4154, :acceleration=>13.5, :year=>71, :origin=>1},
50
+ {:name=>"plymouth fury iii", :mpg=>14, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4096, :acceleration=>13, :year=>71, :origin=>1},
51
+ {:name=>"dodge monaco (sw)", :mpg=>12, :cylinders=>8, :displacement=>383, :horsepower=>180, :weight=>4955, :acceleration=>11.5, :year=>71, :origin=>1},
52
+ {:name=>"ford country squire (sw)", :mpg=>13, :cylinders=>8, :displacement=>400, :horsepower=>170, :weight=>4746, :acceleration=>12, :year=>71, :origin=>1},
53
+ {:name=>"pontiac safari (sw)", :mpg=>13, :cylinders=>8, :displacement=>400, :horsepower=>175, :weight=>5140, :acceleration=>12, :year=>71, :origin=>1},
54
+ {:name=>"amc hornet sportabout (sw)", :mpg=>18, :cylinders=>6, :displacement=>258, :horsepower=>110, :weight=>2962, :acceleration=>13.5, :year=>71, :origin=>1},
55
+ {:name=>"chevrolet vega (sw)", :mpg=>22, :cylinders=>4, :displacement=>140, :horsepower=>72, :weight=>2408, :acceleration=>19, :year=>71, :origin=>1},
56
+ {:name=>"pontiac firebird", :mpg=>19, :cylinders=>6, :displacement=>250, :horsepower=>100, :weight=>3282, :acceleration=>15, :year=>71, :origin=>1},
57
+ {:name=>"ford mustang", :mpg=>18, :cylinders=>6, :displacement=>250, :horsepower=>88, :weight=>3139, :acceleration=>14.5, :year=>71, :origin=>1},
58
+ {:name=>"mercury capri 2000", :mpg=>23, :cylinders=>4, :displacement=>122, :horsepower=>86, :weight=>2220, :acceleration=>14, :year=>71, :origin=>1},
59
+ {:name=>"opel 1900", :mpg=>28, :cylinders=>4, :displacement=>116, :horsepower=>90, :weight=>2123, :acceleration=>14, :year=>71, :origin=>2},
60
+ {:name=>"peugeot 304", :mpg=>30, :cylinders=>4, :displacement=>79, :horsepower=>70, :weight=>2074, :acceleration=>19.5, :year=>71, :origin=>2},
61
+ {:name=>"fiat 124b", :mpg=>30, :cylinders=>4, :displacement=>88, :horsepower=>76, :weight=>2065, :acceleration=>14.5, :year=>71, :origin=>2},
62
+ {:name=>"toyota corolla 1200", :mpg=>31, :cylinders=>4, :displacement=>71, :horsepower=>65, :weight=>1773, :acceleration=>19, :year=>71, :origin=>3},
63
+ {:name=>"datsun 1200", :mpg=>35, :cylinders=>4, :displacement=>72, :horsepower=>69, :weight=>1613, :acceleration=>18, :year=>71, :origin=>3},
64
+ {:name=>"volkswagen model 111", :mpg=>27, :cylinders=>4, :displacement=>97, :horsepower=>60, :weight=>1834, :acceleration=>19, :year=>71, :origin=>2},
65
+ {:name=>"plymouth cricket", :mpg=>26, :cylinders=>4, :displacement=>91, :horsepower=>70, :weight=>1955, :acceleration=>20.5, :year=>71, :origin=>1},
66
+ {:name=>"toyota corona hardtop", :mpg=>24, :cylinders=>4, :displacement=>113, :horsepower=>95, :weight=>2278, :acceleration=>15.5, :year=>72, :origin=>3},
67
+ {:name=>"dodge colt hardtop", :mpg=>25, :cylinders=>4, :displacement=>97.5, :horsepower=>80, :weight=>2126, :acceleration=>17, :year=>72, :origin=>1},
68
+ {:name=>"volkswagen type 3", :mpg=>23, :cylinders=>4, :displacement=>97, :horsepower=>54, :weight=>2254, :acceleration=>23.5, :year=>72, :origin=>2},
69
+ {:name=>"chevrolet vega", :mpg=>20, :cylinders=>4, :displacement=>140, :horsepower=>90, :weight=>2408, :acceleration=>19.5, :year=>72, :origin=>1},
70
+ {:name=>"ford pinto runabout", :mpg=>21, :cylinders=>4, :displacement=>122, :horsepower=>86, :weight=>2226, :acceleration=>16.5, :year=>72, :origin=>1},
71
+ {:name=>"chevrolet impala", :mpg=>13, :cylinders=>8, :displacement=>350, :horsepower=>165, :weight=>4274, :acceleration=>12, :year=>72, :origin=>1},
72
+ {:name=>"pontiac catalina", :mpg=>14, :cylinders=>8, :displacement=>400, :horsepower=>175, :weight=>4385, :acceleration=>12, :year=>72, :origin=>1},
73
+ {:name=>"plymouth fury iii", :mpg=>15, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4135, :acceleration=>13.5, :year=>72, :origin=>1},
74
+ {:name=>"ford galaxie 500", :mpg=>14, :cylinders=>8, :displacement=>351, :horsepower=>153, :weight=>4129, :acceleration=>13, :year=>72, :origin=>1},
75
+ {:name=>"amc ambassador sst", :mpg=>17, :cylinders=>8, :displacement=>304, :horsepower=>150, :weight=>3672, :acceleration=>11.5, :year=>72, :origin=>1},
76
+ {:name=>"mercury marquis", :mpg=>11, :cylinders=>8, :displacement=>429, :horsepower=>208, :weight=>4633, :acceleration=>11, :year=>72, :origin=>1},
77
+ {:name=>"buick lesabre custom", :mpg=>13, :cylinders=>8, :displacement=>350, :horsepower=>155, :weight=>4502, :acceleration=>13.5, :year=>72, :origin=>1},
78
+ {:name=>"oldsmobile delta 88 royale", :mpg=>12, :cylinders=>8, :displacement=>350, :horsepower=>160, :weight=>4456, :acceleration=>13.5, :year=>72, :origin=>1},
79
+ {:name=>"chrysler newport royal", :mpg=>13, :cylinders=>8, :displacement=>400, :horsepower=>190, :weight=>4422, :acceleration=>12.5, :year=>72, :origin=>1},
80
+ {:name=>"mazda rx2 coupe", :mpg=>19, :cylinders=>3, :displacement=>70, :horsepower=>97, :weight=>2330, :acceleration=>13.5, :year=>72, :origin=>3},
81
+ {:name=>"amc matador (sw)", :mpg=>15, :cylinders=>8, :displacement=>304, :horsepower=>150, :weight=>3892, :acceleration=>12.5, :year=>72, :origin=>1},
82
+ {:name=>"chevrolet chevelle concours (sw)", :mpg=>13, :cylinders=>8, :displacement=>307, :horsepower=>130, :weight=>4098, :acceleration=>14, :year=>72, :origin=>1},
83
+ {:name=>"ford gran torino (sw)", :mpg=>13, :cylinders=>8, :displacement=>302, :horsepower=>140, :weight=>4294, :acceleration=>16, :year=>72, :origin=>1},
84
+ {:name=>"plymouth satellite custom (sw)", :mpg=>14, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4077, :acceleration=>14, :year=>72, :origin=>1},
85
+ {:name=>"volvo 145e (sw)", :mpg=>18, :cylinders=>4, :displacement=>121, :horsepower=>112, :weight=>2933, :acceleration=>14.5, :year=>72, :origin=>2},
86
+ {:name=>"volkswagen 411 (sw)", :mpg=>22, :cylinders=>4, :displacement=>121, :horsepower=>76, :weight=>2511, :acceleration=>18, :year=>72, :origin=>2},
87
+ {:name=>"peugeot 504 (sw)", :mpg=>21, :cylinders=>4, :displacement=>120, :horsepower=>87, :weight=>2979, :acceleration=>19.5, :year=>72, :origin=>2},
88
+ {:name=>"renault 12 (sw)", :mpg=>26, :cylinders=>4, :displacement=>96, :horsepower=>69, :weight=>2189, :acceleration=>18, :year=>72, :origin=>2},
89
+ {:name=>"ford pinto (sw)", :mpg=>22, :cylinders=>4, :displacement=>122, :horsepower=>86, :weight=>2395, :acceleration=>16, :year=>72, :origin=>1},
90
+ {:name=>"datsun 510 (sw)", :mpg=>28, :cylinders=>4, :displacement=>97, :horsepower=>92, :weight=>2288, :acceleration=>17, :year=>72, :origin=>3},
91
+ {:name=>"toyouta corona mark ii (sw)", :mpg=>23, :cylinders=>4, :displacement=>120, :horsepower=>97, :weight=>2506, :acceleration=>14.5, :year=>72, :origin=>3},
92
+ {:name=>"dodge colt (sw)", :mpg=>28, :cylinders=>4, :displacement=>98, :horsepower=>80, :weight=>2164, :acceleration=>15, :year=>72, :origin=>1},
93
+ {:name=>"toyota corolla 1600 (sw)", :mpg=>27, :cylinders=>4, :displacement=>97, :horsepower=>88, :weight=>2100, :acceleration=>16.5, :year=>72, :origin=>3},
94
+ {:name=>"buick century 350", :mpg=>13, :cylinders=>8, :displacement=>350, :horsepower=>175, :weight=>4100, :acceleration=>13, :year=>73, :origin=>1},
95
+ {:name=>"amc matador", :mpg=>14, :cylinders=>8, :displacement=>304, :horsepower=>150, :weight=>3672, :acceleration=>11.5, :year=>73, :origin=>1},
96
+ {:name=>"chevrolet malibu", :mpg=>13, :cylinders=>8, :displacement=>350, :horsepower=>145, :weight=>3988, :acceleration=>13, :year=>73, :origin=>1},
97
+ {:name=>"ford gran torino", :mpg=>14, :cylinders=>8, :displacement=>302, :horsepower=>137, :weight=>4042, :acceleration=>14.5, :year=>73, :origin=>1},
98
+ {:name=>"dodge coronet custom", :mpg=>15, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>3777, :acceleration=>12.5, :year=>73, :origin=>1},
99
+ {:name=>"mercury marquis brougham", :mpg=>12, :cylinders=>8, :displacement=>429, :horsepower=>198, :weight=>4952, :acceleration=>11.5, :year=>73, :origin=>1},
100
+ {:name=>"chevrolet caprice classic", :mpg=>13, :cylinders=>8, :displacement=>400, :horsepower=>150, :weight=>4464, :acceleration=>12, :year=>73, :origin=>1},
101
+ {:name=>"ford ltd", :mpg=>13, :cylinders=>8, :displacement=>351, :horsepower=>158, :weight=>4363, :acceleration=>13, :year=>73, :origin=>1},
102
+ {:name=>"plymouth fury gran sedan", :mpg=>14, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4237, :acceleration=>14.5, :year=>73, :origin=>1},
103
+ {:name=>"chrysler new yorker brougham", :mpg=>13, :cylinders=>8, :displacement=>440, :horsepower=>215, :weight=>4735, :acceleration=>11, :year=>73, :origin=>1},
104
+ {:name=>"buick electra 225 custom", :mpg=>12, :cylinders=>8, :displacement=>455, :horsepower=>225, :weight=>4951, :acceleration=>11, :year=>73, :origin=>1},
105
+ {:name=>"amc ambassador brougham", :mpg=>13, :cylinders=>8, :displacement=>360, :horsepower=>175, :weight=>3821, :acceleration=>11, :year=>73, :origin=>1},
106
+ {:name=>"plymouth valiant", :mpg=>18, :cylinders=>6, :displacement=>225, :horsepower=>105, :weight=>3121, :acceleration=>16.5, :year=>73, :origin=>1},
107
+ {:name=>"chevrolet nova custom", :mpg=>16, :cylinders=>6, :displacement=>250, :horsepower=>100, :weight=>3278, :acceleration=>18, :year=>73, :origin=>1},
108
+ {:name=>"amc hornet", :mpg=>18, :cylinders=>6, :displacement=>232, :horsepower=>100, :weight=>2945, :acceleration=>16, :year=>73, :origin=>1},
109
+ {:name=>"ford maverick", :mpg=>18, :cylinders=>6, :displacement=>250, :horsepower=>88, :weight=>3021, :acceleration=>16.5, :year=>73, :origin=>1},
110
+ {:name=>"plymouth duster", :mpg=>23, :cylinders=>6, :displacement=>198, :horsepower=>95, :weight=>2904, :acceleration=>16, :year=>73, :origin=>1},
111
+ {:name=>"volkswagen super beetle", :mpg=>26, :cylinders=>4, :displacement=>97, :horsepower=>46, :weight=>1950, :acceleration=>21, :year=>73, :origin=>2},
112
+ {:name=>"chevrolet impala", :mpg=>11, :cylinders=>8, :displacement=>400, :horsepower=>150, :weight=>4997, :acceleration=>14, :year=>73, :origin=>1},
113
+ {:name=>"ford country", :mpg=>12, :cylinders=>8, :displacement=>400, :horsepower=>167, :weight=>4906, :acceleration=>12.5, :year=>73, :origin=>1},
114
+ {:name=>"plymouth custom suburb", :mpg=>13, :cylinders=>8, :displacement=>360, :horsepower=>170, :weight=>4654, :acceleration=>13, :year=>73, :origin=>1},
115
+ {:name=>"oldsmobile vista cruiser", :mpg=>12, :cylinders=>8, :displacement=>350, :horsepower=>180, :weight=>4499, :acceleration=>12.5, :year=>73, :origin=>1},
116
+ {:name=>"amc gremlin", :mpg=>18, :cylinders=>6, :displacement=>232, :horsepower=>100, :weight=>2789, :acceleration=>15, :year=>73, :origin=>1},
117
+ {:name=>"toyota carina", :mpg=>20, :cylinders=>4, :displacement=>97, :horsepower=>88, :weight=>2279, :acceleration=>19, :year=>73, :origin=>3},
118
+ {:name=>"chevrolet vega", :mpg=>21, :cylinders=>4, :displacement=>140, :horsepower=>72, :weight=>2401, :acceleration=>19.5, :year=>73, :origin=>1},
119
+ {:name=>"datsun 610", :mpg=>22, :cylinders=>4, :displacement=>108, :horsepower=>94, :weight=>2379, :acceleration=>16.5, :year=>73, :origin=>3},
120
+ {:name=>"maxda rx3", :mpg=>18, :cylinders=>3, :displacement=>70, :horsepower=>90, :weight=>2124, :acceleration=>13.5, :year=>73, :origin=>3},
121
+ {:name=>"ford pinto", :mpg=>19, :cylinders=>4, :displacement=>122, :horsepower=>85, :weight=>2310, :acceleration=>18.5, :year=>73, :origin=>1},
122
+ {:name=>"mercury capri v6", :mpg=>21, :cylinders=>6, :displacement=>155, :horsepower=>107, :weight=>2472, :acceleration=>14, :year=>73, :origin=>1},
123
+ {:name=>"fiat 124 sport coupe", :mpg=>26, :cylinders=>4, :displacement=>98, :horsepower=>90, :weight=>2265, :acceleration=>15.5, :year=>73, :origin=>2},
124
+ {:name=>"chevrolet monte carlo s", :mpg=>15, :cylinders=>8, :displacement=>350, :horsepower=>145, :weight=>4082, :acceleration=>13, :year=>73, :origin=>1},
125
+ {:name=>"pontiac grand prix", :mpg=>16, :cylinders=>8, :displacement=>400, :horsepower=>230, :weight=>4278, :acceleration=>9.5, :year=>73, :origin=>1},
126
+ {:name=>"fiat 128", :mpg=>29, :cylinders=>4, :displacement=>68, :horsepower=>49, :weight=>1867, :acceleration=>19.5, :year=>73, :origin=>2},
127
+ {:name=>"opel manta", :mpg=>24, :cylinders=>4, :displacement=>116, :horsepower=>75, :weight=>2158, :acceleration=>15.5, :year=>73, :origin=>2},
128
+ {:name=>"audi 100ls", :mpg=>20, :cylinders=>4, :displacement=>114, :horsepower=>91, :weight=>2582, :acceleration=>14, :year=>73, :origin=>2},
129
+ {:name=>"volvo 144ea", :mpg=>19, :cylinders=>4, :displacement=>121, :horsepower=>112, :weight=>2868, :acceleration=>15.5, :year=>73, :origin=>2},
130
+ {:name=>"dodge dart custom", :mpg=>15, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>3399, :acceleration=>11, :year=>73, :origin=>1},
131
+ {:name=>"saab 99le", :mpg=>24, :cylinders=>4, :displacement=>121, :horsepower=>110, :weight=>2660, :acceleration=>14, :year=>73, :origin=>2},
132
+ {:name=>"toyota mark ii", :mpg=>20, :cylinders=>6, :displacement=>156, :horsepower=>122, :weight=>2807, :acceleration=>13.5, :year=>73, :origin=>3},
133
+ {:name=>"oldsmobile omega", :mpg=>11, :cylinders=>8, :displacement=>350, :horsepower=>180, :weight=>3664, :acceleration=>11, :year=>73, :origin=>1},
134
+ {:name=>"plymouth duster", :mpg=>20, :cylinders=>6, :displacement=>198, :horsepower=>95, :weight=>3102, :acceleration=>16.5, :year=>74, :origin=>1},
135
+ {:name=>"ford maverick", :mpg=>21, :cylinders=>6, :displacement=>200, :horsepower=>nil, :weight=>2875, :acceleration=>17, :year=>74, :origin=>1},
136
+ {:name=>"amc hornet", :mpg=>19, :cylinders=>6, :displacement=>232, :horsepower=>100, :weight=>2901, :acceleration=>16, :year=>74, :origin=>1},
137
+ {:name=>"chevrolet nova", :mpg=>15, :cylinders=>6, :displacement=>250, :horsepower=>100, :weight=>3336, :acceleration=>17, :year=>74, :origin=>1},
138
+ {:name=>"datsun b210", :mpg=>31, :cylinders=>4, :displacement=>79, :horsepower=>67, :weight=>1950, :acceleration=>19, :year=>74, :origin=>3},
139
+ {:name=>"ford pinto", :mpg=>26, :cylinders=>4, :displacement=>122, :horsepower=>80, :weight=>2451, :acceleration=>16.5, :year=>74, :origin=>1},
140
+ {:name=>"toyota corolla 1200", :mpg=>32, :cylinders=>4, :displacement=>71, :horsepower=>65, :weight=>1836, :acceleration=>21, :year=>74, :origin=>3},
141
+ {:name=>"chevrolet vega", :mpg=>25, :cylinders=>4, :displacement=>140, :horsepower=>75, :weight=>2542, :acceleration=>17, :year=>74, :origin=>1},
142
+ {:name=>"chevrolet chevelle malibu classic", :mpg=>16, :cylinders=>6, :displacement=>250, :horsepower=>100, :weight=>3781, :acceleration=>17, :year=>74, :origin=>1},
143
+ {:name=>"amc matador", :mpg=>16, :cylinders=>6, :displacement=>258, :horsepower=>110, :weight=>3632, :acceleration=>18, :year=>74, :origin=>1},
144
+ {:name=>"plymouth satellite sebring", :mpg=>18, :cylinders=>6, :displacement=>225, :horsepower=>105, :weight=>3613, :acceleration=>16.5, :year=>74, :origin=>1},
145
+ {:name=>"ford gran torino", :mpg=>16, :cylinders=>8, :displacement=>302, :horsepower=>140, :weight=>4141, :acceleration=>14, :year=>74, :origin=>1},
146
+ {:name=>"buick century luxus (sw)", :mpg=>13, :cylinders=>8, :displacement=>350, :horsepower=>150, :weight=>4699, :acceleration=>14.5, :year=>74, :origin=>1},
147
+ {:name=>"dodge coronet custom (sw)", :mpg=>14, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4457, :acceleration=>13.5, :year=>74, :origin=>1},
148
+ {:name=>"ford gran torino (sw)", :mpg=>14, :cylinders=>8, :displacement=>302, :horsepower=>140, :weight=>4638, :acceleration=>16, :year=>74, :origin=>1},
149
+ {:name=>"amc matador (sw)", :mpg=>14, :cylinders=>8, :displacement=>304, :horsepower=>150, :weight=>4257, :acceleration=>15.5, :year=>74, :origin=>1},
150
+ {:name=>"audi fox", :mpg=>29, :cylinders=>4, :displacement=>98, :horsepower=>83, :weight=>2219, :acceleration=>16.5, :year=>74, :origin=>2},
151
+ {:name=>"volkswagen dasher", :mpg=>26, :cylinders=>4, :displacement=>79, :horsepower=>67, :weight=>1963, :acceleration=>15.5, :year=>74, :origin=>2},
152
+ {:name=>"opel manta", :mpg=>26, :cylinders=>4, :displacement=>97, :horsepower=>78, :weight=>2300, :acceleration=>14.5, :year=>74, :origin=>2},
153
+ {:name=>"toyota corona", :mpg=>31, :cylinders=>4, :displacement=>76, :horsepower=>52, :weight=>1649, :acceleration=>16.5, :year=>74, :origin=>3},
154
+ {:name=>"datsun 710", :mpg=>32, :cylinders=>4, :displacement=>83, :horsepower=>61, :weight=>2003, :acceleration=>19, :year=>74, :origin=>3},
155
+ {:name=>"dodge colt", :mpg=>28, :cylinders=>4, :displacement=>90, :horsepower=>75, :weight=>2125, :acceleration=>14.5, :year=>74, :origin=>1},
156
+ {:name=>"fiat 128", :mpg=>24, :cylinders=>4, :displacement=>90, :horsepower=>75, :weight=>2108, :acceleration=>15.5, :year=>74, :origin=>2},
157
+ {:name=>"fiat 124 tc", :mpg=>26, :cylinders=>4, :displacement=>116, :horsepower=>75, :weight=>2246, :acceleration=>14, :year=>74, :origin=>2},
158
+ {:name=>"honda civic", :mpg=>24, :cylinders=>4, :displacement=>120, :horsepower=>97, :weight=>2489, :acceleration=>15, :year=>74, :origin=>3},
159
+ {:name=>"subaru", :mpg=>26, :cylinders=>4, :displacement=>108, :horsepower=>93, :weight=>2391, :acceleration=>15.5, :year=>74, :origin=>3},
160
+ {:name=>"fiat x1.9", :mpg=>31, :cylinders=>4, :displacement=>79, :horsepower=>67, :weight=>2000, :acceleration=>16, :year=>74, :origin=>2},
161
+ {:name=>"plymouth valiant custom", :mpg=>19, :cylinders=>6, :displacement=>225, :horsepower=>95, :weight=>3264, :acceleration=>16, :year=>75, :origin=>1},
162
+ {:name=>"chevrolet nova", :mpg=>18, :cylinders=>6, :displacement=>250, :horsepower=>105, :weight=>3459, :acceleration=>16, :year=>75, :origin=>1},
163
+ {:name=>"mercury monarch", :mpg=>15, :cylinders=>6, :displacement=>250, :horsepower=>72, :weight=>3432, :acceleration=>21, :year=>75, :origin=>1},
164
+ {:name=>"ford maverick", :mpg=>15, :cylinders=>6, :displacement=>250, :horsepower=>72, :weight=>3158, :acceleration=>19.5, :year=>75, :origin=>1},
165
+ {:name=>"pontiac catalina", :mpg=>16, :cylinders=>8, :displacement=>400, :horsepower=>170, :weight=>4668, :acceleration=>11.5, :year=>75, :origin=>1},
166
+ {:name=>"chevrolet bel air", :mpg=>15, :cylinders=>8, :displacement=>350, :horsepower=>145, :weight=>4440, :acceleration=>14, :year=>75, :origin=>1},
167
+ {:name=>"plymouth grand fury", :mpg=>16, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4498, :acceleration=>14.5, :year=>75, :origin=>1},
168
+ {:name=>"ford ltd", :mpg=>14, :cylinders=>8, :displacement=>351, :horsepower=>148, :weight=>4657, :acceleration=>13.5, :year=>75, :origin=>1},
169
+ {:name=>"buick century", :mpg=>17, :cylinders=>6, :displacement=>231, :horsepower=>110, :weight=>3907, :acceleration=>21, :year=>75, :origin=>1},
170
+ {:name=>"chevroelt chevelle malibu", :mpg=>16, :cylinders=>6, :displacement=>250, :horsepower=>105, :weight=>3897, :acceleration=>18.5, :year=>75, :origin=>1},
171
+ {:name=>"amc matador", :mpg=>15, :cylinders=>6, :displacement=>258, :horsepower=>110, :weight=>3730, :acceleration=>19, :year=>75, :origin=>1},
172
+ {:name=>"plymouth fury", :mpg=>18, :cylinders=>6, :displacement=>225, :horsepower=>95, :weight=>3785, :acceleration=>19, :year=>75, :origin=>1},
173
+ {:name=>"buick skyhawk", :mpg=>21, :cylinders=>6, :displacement=>231, :horsepower=>110, :weight=>3039, :acceleration=>15, :year=>75, :origin=>1},
174
+ {:name=>"chevrolet monza 2+2", :mpg=>20, :cylinders=>8, :displacement=>262, :horsepower=>110, :weight=>3221, :acceleration=>13.5, :year=>75, :origin=>1},
175
+ {:name=>"ford mustang ii", :mpg=>13, :cylinders=>8, :displacement=>302, :horsepower=>129, :weight=>3169, :acceleration=>12, :year=>75, :origin=>1},
176
+ {:name=>"toyota corolla", :mpg=>29, :cylinders=>4, :displacement=>97, :horsepower=>75, :weight=>2171, :acceleration=>16, :year=>75, :origin=>3},
177
+ {:name=>"ford pinto", :mpg=>23, :cylinders=>4, :displacement=>140, :horsepower=>83, :weight=>2639, :acceleration=>17, :year=>75, :origin=>1},
178
+ {:name=>"amc gremlin", :mpg=>20, :cylinders=>6, :displacement=>232, :horsepower=>100, :weight=>2914, :acceleration=>16, :year=>75, :origin=>1},
179
+ {:name=>"pontiac astro", :mpg=>23, :cylinders=>4, :displacement=>140, :horsepower=>78, :weight=>2592, :acceleration=>18.5, :year=>75, :origin=>1},
180
+ {:name=>"toyota corona", :mpg=>24, :cylinders=>4, :displacement=>134, :horsepower=>96, :weight=>2702, :acceleration=>13.5, :year=>75, :origin=>3},
181
+ {:name=>"volkswagen dasher", :mpg=>25, :cylinders=>4, :displacement=>90, :horsepower=>71, :weight=>2223, :acceleration=>16.5, :year=>75, :origin=>2},
182
+ {:name=>"datsun 710", :mpg=>24, :cylinders=>4, :displacement=>119, :horsepower=>97, :weight=>2545, :acceleration=>17, :year=>75, :origin=>3},
183
+ {:name=>"ford pinto", :mpg=>18, :cylinders=>6, :displacement=>171, :horsepower=>97, :weight=>2984, :acceleration=>14.5, :year=>75, :origin=>1},
184
+ {:name=>"volkswagen rabbit", :mpg=>29, :cylinders=>4, :displacement=>90, :horsepower=>70, :weight=>1937, :acceleration=>14, :year=>75, :origin=>2},
185
+ {:name=>"amc pacer", :mpg=>19, :cylinders=>6, :displacement=>232, :horsepower=>90, :weight=>3211, :acceleration=>17, :year=>75, :origin=>1},
186
+ {:name=>"audi 100ls", :mpg=>23, :cylinders=>4, :displacement=>115, :horsepower=>95, :weight=>2694, :acceleration=>15, :year=>75, :origin=>2},
187
+ {:name=>"peugeot 504", :mpg=>23, :cylinders=>4, :displacement=>120, :horsepower=>88, :weight=>2957, :acceleration=>17, :year=>75, :origin=>2},
188
+ {:name=>"volvo 244dl", :mpg=>22, :cylinders=>4, :displacement=>121, :horsepower=>98, :weight=>2945, :acceleration=>14.5, :year=>75, :origin=>2},
189
+ {:name=>"saab 99le", :mpg=>25, :cylinders=>4, :displacement=>121, :horsepower=>115, :weight=>2671, :acceleration=>13.5, :year=>75, :origin=>2},
190
+ {:name=>"honda civic cvcc", :mpg=>33, :cylinders=>4, :displacement=>91, :horsepower=>53, :weight=>1795, :acceleration=>17.5, :year=>75, :origin=>3},
191
+ {:name=>"fiat 131", :mpg=>28, :cylinders=>4, :displacement=>107, :horsepower=>86, :weight=>2464, :acceleration=>15.5, :year=>76, :origin=>2},
192
+ {:name=>"opel 1900", :mpg=>25, :cylinders=>4, :displacement=>116, :horsepower=>81, :weight=>2220, :acceleration=>16.9, :year=>76, :origin=>2},
193
+ {:name=>"capri ii", :mpg=>25, :cylinders=>4, :displacement=>140, :horsepower=>92, :weight=>2572, :acceleration=>14.9, :year=>76, :origin=>1},
194
+ {:name=>"dodge colt", :mpg=>26, :cylinders=>4, :displacement=>98, :horsepower=>79, :weight=>2255, :acceleration=>17.7, :year=>76, :origin=>1},
195
+ {:name=>"renault 12tl", :mpg=>27, :cylinders=>4, :displacement=>101, :horsepower=>83, :weight=>2202, :acceleration=>15.3, :year=>76, :origin=>2},
196
+ {:name=>"chevrolet chevelle malibu classic", :mpg=>17.5, :cylinders=>8, :displacement=>305, :horsepower=>140, :weight=>4215, :acceleration=>13, :year=>76, :origin=>1},
197
+ {:name=>"dodge coronet brougham", :mpg=>16, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>4190, :acceleration=>13, :year=>76, :origin=>1},
198
+ {:name=>"amc matador", :mpg=>15.5, :cylinders=>8, :displacement=>304, :horsepower=>120, :weight=>3962, :acceleration=>13.9, :year=>76, :origin=>1},
199
+ {:name=>"ford gran torino", :mpg=>14.5, :cylinders=>8, :displacement=>351, :horsepower=>152, :weight=>4215, :acceleration=>12.8, :year=>76, :origin=>1},
200
+ {:name=>"plymouth valiant", :mpg=>22, :cylinders=>6, :displacement=>225, :horsepower=>100, :weight=>3233, :acceleration=>15.4, :year=>76, :origin=>1},
201
+ {:name=>"chevrolet nova", :mpg=>22, :cylinders=>6, :displacement=>250, :horsepower=>105, :weight=>3353, :acceleration=>14.5, :year=>76, :origin=>1},
202
+ {:name=>"ford maverick", :mpg=>24, :cylinders=>6, :displacement=>200, :horsepower=>81, :weight=>3012, :acceleration=>17.6, :year=>76, :origin=>1},
203
+ {:name=>"amc hornet", :mpg=>22.5, :cylinders=>6, :displacement=>232, :horsepower=>90, :weight=>3085, :acceleration=>17.6, :year=>76, :origin=>1},
204
+ {:name=>"chevrolet chevette", :mpg=>29, :cylinders=>4, :displacement=>85, :horsepower=>52, :weight=>2035, :acceleration=>22.2, :year=>76, :origin=>1},
205
+ {:name=>"chevrolet woody", :mpg=>24.5, :cylinders=>4, :displacement=>98, :horsepower=>60, :weight=>2164, :acceleration=>22.1, :year=>76, :origin=>1},
206
+ {:name=>"vw rabbit", :mpg=>29, :cylinders=>4, :displacement=>90, :horsepower=>70, :weight=>1937, :acceleration=>14.2, :year=>76, :origin=>2},
207
+ {:name=>"honda civic", :mpg=>33, :cylinders=>4, :displacement=>91, :horsepower=>53, :weight=>1795, :acceleration=>17.4, :year=>76, :origin=>3},
208
+ {:name=>"dodge aspen se", :mpg=>20, :cylinders=>6, :displacement=>225, :horsepower=>100, :weight=>3651, :acceleration=>17.7, :year=>76, :origin=>1},
209
+ {:name=>"ford granada ghia", :mpg=>18, :cylinders=>6, :displacement=>250, :horsepower=>78, :weight=>3574, :acceleration=>21, :year=>76, :origin=>1},
210
+ {:name=>"pontiac ventura sj", :mpg=>18.5, :cylinders=>6, :displacement=>250, :horsepower=>110, :weight=>3645, :acceleration=>16.2, :year=>76, :origin=>1},
211
+ {:name=>"amc pacer d/l", :mpg=>17.5, :cylinders=>6, :displacement=>258, :horsepower=>95, :weight=>3193, :acceleration=>17.8, :year=>76, :origin=>1},
212
+ {:name=>"volkswagen rabbit", :mpg=>29.5, :cylinders=>4, :displacement=>97, :horsepower=>71, :weight=>1825, :acceleration=>12.2, :year=>76, :origin=>2},
213
+ {:name=>"datsun b-210", :mpg=>32, :cylinders=>4, :displacement=>85, :horsepower=>70, :weight=>1990, :acceleration=>17, :year=>76, :origin=>3},
214
+ {:name=>"toyota corolla", :mpg=>28, :cylinders=>4, :displacement=>97, :horsepower=>75, :weight=>2155, :acceleration=>16.4, :year=>76, :origin=>3},
215
+ {:name=>"ford pinto", :mpg=>26.5, :cylinders=>4, :displacement=>140, :horsepower=>72, :weight=>2565, :acceleration=>13.6, :year=>76, :origin=>1},
216
+ {:name=>"volvo 245", :mpg=>20, :cylinders=>4, :displacement=>130, :horsepower=>102, :weight=>3150, :acceleration=>15.7, :year=>76, :origin=>2},
217
+ {:name=>"plymouth volare premier v8", :mpg=>13, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>3940, :acceleration=>13.2, :year=>76, :origin=>1},
218
+ {:name=>"peugeot 504", :mpg=>19, :cylinders=>4, :displacement=>120, :horsepower=>88, :weight=>3270, :acceleration=>21.9, :year=>76, :origin=>2},
219
+ {:name=>"toyota mark ii", :mpg=>19, :cylinders=>6, :displacement=>156, :horsepower=>108, :weight=>2930, :acceleration=>15.5, :year=>76, :origin=>3},
220
+ {:name=>"mercedes-benz 280s", :mpg=>16.5, :cylinders=>6, :displacement=>168, :horsepower=>120, :weight=>3820, :acceleration=>16.7, :year=>76, :origin=>2},
221
+ {:name=>"cadillac seville", :mpg=>16.5, :cylinders=>8, :displacement=>350, :horsepower=>180, :weight=>4380, :acceleration=>12.1, :year=>76, :origin=>1},
222
+ {:name=>"chevy c10", :mpg=>13, :cylinders=>8, :displacement=>350, :horsepower=>145, :weight=>4055, :acceleration=>12, :year=>76, :origin=>1},
223
+ {:name=>"ford f108", :mpg=>13, :cylinders=>8, :displacement=>302, :horsepower=>130, :weight=>3870, :acceleration=>15, :year=>76, :origin=>1},
224
+ {:name=>"dodge d100", :mpg=>13, :cylinders=>8, :displacement=>318, :horsepower=>150, :weight=>3755, :acceleration=>14, :year=>76, :origin=>1},
225
+ {:name=>"honda accord cvcc", :mpg=>31.5, :cylinders=>4, :displacement=>98, :horsepower=>68, :weight=>2045, :acceleration=>18.5, :year=>77, :origin=>3},
226
+ {:name=>"buick opel isuzu deluxe", :mpg=>30, :cylinders=>4, :displacement=>111, :horsepower=>80, :weight=>2155, :acceleration=>14.8, :year=>77, :origin=>1},
227
+ {:name=>"renault 5 gtl", :mpg=>36, :cylinders=>4, :displacement=>79, :horsepower=>58, :weight=>1825, :acceleration=>18.6, :year=>77, :origin=>2},
228
+ {:name=>"plymouth arrow gs", :mpg=>25.5, :cylinders=>4, :displacement=>122, :horsepower=>96, :weight=>2300, :acceleration=>15.5, :year=>77, :origin=>1},
229
+ {:name=>"datsun f-10 hatchback", :mpg=>33.5, :cylinders=>4, :displacement=>85, :horsepower=>70, :weight=>1945, :acceleration=>16.8, :year=>77, :origin=>3},
230
+ {:name=>"chevrolet caprice classic", :mpg=>17.5, :cylinders=>8, :displacement=>305, :horsepower=>145, :weight=>3880, :acceleration=>12.5, :year=>77, :origin=>1},
231
+ {:name=>"oldsmobile cutlass supreme", :mpg=>17, :cylinders=>8, :displacement=>260, :horsepower=>110, :weight=>4060, :acceleration=>19, :year=>77, :origin=>1},
232
+ {:name=>"dodge monaco brougham", :mpg=>15.5, :cylinders=>8, :displacement=>318, :horsepower=>145, :weight=>4140, :acceleration=>13.7, :year=>77, :origin=>1},
233
+ {:name=>"mercury cougar brougham", :mpg=>15, :cylinders=>8, :displacement=>302, :horsepower=>130, :weight=>4295, :acceleration=>14.9, :year=>77, :origin=>1},
234
+ {:name=>"chevrolet concours", :mpg=>17.5, :cylinders=>6, :displacement=>250, :horsepower=>110, :weight=>3520, :acceleration=>16.4, :year=>77, :origin=>1},
235
+ {:name=>"buick skylark", :mpg=>20.5, :cylinders=>6, :displacement=>231, :horsepower=>105, :weight=>3425, :acceleration=>16.9, :year=>77, :origin=>1},
236
+ {:name=>"plymouth volare custom", :mpg=>19, :cylinders=>6, :displacement=>225, :horsepower=>100, :weight=>3630, :acceleration=>17.7, :year=>77, :origin=>1},
237
+ {:name=>"ford granada", :mpg=>18.5, :cylinders=>6, :displacement=>250, :horsepower=>98, :weight=>3525, :acceleration=>19, :year=>77, :origin=>1},
238
+ {:name=>"pontiac grand prix lj", :mpg=>16, :cylinders=>8, :displacement=>400, :horsepower=>180, :weight=>4220, :acceleration=>11.1, :year=>77, :origin=>1},
239
+ {:name=>"chevrolet monte carlo landau", :mpg=>15.5, :cylinders=>8, :displacement=>350, :horsepower=>170, :weight=>4165, :acceleration=>11.4, :year=>77, :origin=>1},
240
+ {:name=>"chrysler cordoba", :mpg=>15.5, :cylinders=>8, :displacement=>400, :horsepower=>190, :weight=>4325, :acceleration=>12.2, :year=>77, :origin=>1},
241
+ {:name=>"ford thunderbird", :mpg=>16, :cylinders=>8, :displacement=>351, :horsepower=>149, :weight=>4335, :acceleration=>14.5, :year=>77, :origin=>1},
242
+ {:name=>"volkswagen rabbit custom", :mpg=>29, :cylinders=>4, :displacement=>97, :horsepower=>78, :weight=>1940, :acceleration=>14.5, :year=>77, :origin=>2},
243
+ {:name=>"pontiac sunbird coupe", :mpg=>24.5, :cylinders=>4, :displacement=>151, :horsepower=>88, :weight=>2740, :acceleration=>16, :year=>77, :origin=>1},
244
+ {:name=>"toyota corolla liftback", :mpg=>26, :cylinders=>4, :displacement=>97, :horsepower=>75, :weight=>2265, :acceleration=>18.2, :year=>77, :origin=>3},
245
+ {:name=>"ford mustang ii 2+2", :mpg=>25.5, :cylinders=>4, :displacement=>140, :horsepower=>89, :weight=>2755, :acceleration=>15.8, :year=>77, :origin=>1},
246
+ {:name=>"chevrolet chevette", :mpg=>30.5, :cylinders=>4, :displacement=>98, :horsepower=>63, :weight=>2051, :acceleration=>17, :year=>77, :origin=>1},
247
+ {:name=>"dodge colt m/m", :mpg=>33.5, :cylinders=>4, :displacement=>98, :horsepower=>83, :weight=>2075, :acceleration=>15.9, :year=>77, :origin=>1},
248
+ {:name=>"subaru dl", :mpg=>30, :cylinders=>4, :displacement=>97, :horsepower=>67, :weight=>1985, :acceleration=>16.4, :year=>77, :origin=>3},
249
+ {:name=>"volkswagen dasher", :mpg=>30.5, :cylinders=>4, :displacement=>97, :horsepower=>78, :weight=>2190, :acceleration=>14.1, :year=>77, :origin=>2},
250
+ {:name=>"datsun 810", :mpg=>22, :cylinders=>6, :displacement=>146, :horsepower=>97, :weight=>2815, :acceleration=>14.5, :year=>77, :origin=>3},
251
+ {:name=>"bmw 320i", :mpg=>21.5, :cylinders=>4, :displacement=>121, :horsepower=>110, :weight=>2600, :acceleration=>12.8, :year=>77, :origin=>2},
252
+ {:name=>"mazda rx-4", :mpg=>21.5, :cylinders=>3, :displacement=>80, :horsepower=>110, :weight=>2720, :acceleration=>13.5, :year=>77, :origin=>3},
253
+ {:name=>"volkswagen rabbit custom diesel", :mpg=>43.1, :cylinders=>4, :displacement=>90, :horsepower=>48, :weight=>1985, :acceleration=>21.5, :year=>78, :origin=>2},
254
+ {:name=>"ford fiesta", :mpg=>36.1, :cylinders=>4, :displacement=>98, :horsepower=>66, :weight=>1800, :acceleration=>14.4, :year=>78, :origin=>1},
255
+ {:name=>"mazda glc deluxe", :mpg=>32.8, :cylinders=>4, :displacement=>78, :horsepower=>52, :weight=>1985, :acceleration=>19.4, :year=>78, :origin=>3},
256
+ {:name=>"datsun b210 gx", :mpg=>39.4, :cylinders=>4, :displacement=>85, :horsepower=>70, :weight=>2070, :acceleration=>18.6, :year=>78, :origin=>3},
257
+ {:name=>"honda civic cvcc", :mpg=>36.1, :cylinders=>4, :displacement=>91, :horsepower=>60, :weight=>1800, :acceleration=>16.4, :year=>78, :origin=>3},
258
+ {:name=>"oldsmobile cutlass salon brougham", :mpg=>19.9, :cylinders=>8, :displacement=>260, :horsepower=>110, :weight=>3365, :acceleration=>15.5, :year=>78, :origin=>1},
259
+ {:name=>"dodge diplomat", :mpg=>19.4, :cylinders=>8, :displacement=>318, :horsepower=>140, :weight=>3735, :acceleration=>13.2, :year=>78, :origin=>1},
260
+ {:name=>"mercury monarch ghia", :mpg=>20.2, :cylinders=>8, :displacement=>302, :horsepower=>139, :weight=>3570, :acceleration=>12.8, :year=>78, :origin=>1},
261
+ {:name=>"pontiac phoenix lj", :mpg=>19.2, :cylinders=>6, :displacement=>231, :horsepower=>105, :weight=>3535, :acceleration=>19.2, :year=>78, :origin=>1},
262
+ {:name=>"chevrolet malibu", :mpg=>20.5, :cylinders=>6, :displacement=>200, :horsepower=>95, :weight=>3155, :acceleration=>18.2, :year=>78, :origin=>1},
263
+ {:name=>"ford fairmont (auto)", :mpg=>20.2, :cylinders=>6, :displacement=>200, :horsepower=>85, :weight=>2965, :acceleration=>15.8, :year=>78, :origin=>1},
264
+ {:name=>"ford fairmont (man)", :mpg=>25.1, :cylinders=>4, :displacement=>140, :horsepower=>88, :weight=>2720, :acceleration=>15.4, :year=>78, :origin=>1},
265
+ {:name=>"plymouth volare", :mpg=>20.5, :cylinders=>6, :displacement=>225, :horsepower=>100, :weight=>3430, :acceleration=>17.2, :year=>78, :origin=>1},
266
+ {:name=>"amc concord", :mpg=>19.4, :cylinders=>6, :displacement=>232, :horsepower=>90, :weight=>3210, :acceleration=>17.2, :year=>78, :origin=>1},
267
+ {:name=>"buick century special", :mpg=>20.6, :cylinders=>6, :displacement=>231, :horsepower=>105, :weight=>3380, :acceleration=>15.8, :year=>78, :origin=>1},
268
+ {:name=>"mercury zephyr", :mpg=>20.8, :cylinders=>6, :displacement=>200, :horsepower=>85, :weight=>3070, :acceleration=>16.7, :year=>78, :origin=>1},
269
+ {:name=>"dodge aspen", :mpg=>18.6, :cylinders=>6, :displacement=>225, :horsepower=>110, :weight=>3620, :acceleration=>18.7, :year=>78, :origin=>1},
270
+ {:name=>"amc concord d/l", :mpg=>18.1, :cylinders=>6, :displacement=>258, :horsepower=>120, :weight=>3410, :acceleration=>15.1, :year=>78, :origin=>1},
271
+ {:name=>"chevrolet monte carlo landau", :mpg=>19.2, :cylinders=>8, :displacement=>305, :horsepower=>145, :weight=>3425, :acceleration=>13.2, :year=>78, :origin=>1},
272
+ {:name=>"buick regal sport coupe (turbo)", :mpg=>17.7, :cylinders=>6, :displacement=>231, :horsepower=>165, :weight=>3445, :acceleration=>13.4, :year=>78, :origin=>1},
273
+ {:name=>"ford futura", :mpg=>18.1, :cylinders=>8, :displacement=>302, :horsepower=>139, :weight=>3205, :acceleration=>11.2, :year=>78, :origin=>1},
274
+ {:name=>"dodge magnum xe", :mpg=>17.5, :cylinders=>8, :displacement=>318, :horsepower=>140, :weight=>4080, :acceleration=>13.7, :year=>78, :origin=>1},
275
+ {:name=>"chevrolet chevette", :mpg=>30, :cylinders=>4, :displacement=>98, :horsepower=>68, :weight=>2155, :acceleration=>16.5, :year=>78, :origin=>1},
276
+ {:name=>"toyota corona", :mpg=>27.5, :cylinders=>4, :displacement=>134, :horsepower=>95, :weight=>2560, :acceleration=>14.2, :year=>78, :origin=>3},
277
+ {:name=>"datsun 510", :mpg=>27.2, :cylinders=>4, :displacement=>119, :horsepower=>97, :weight=>2300, :acceleration=>14.7, :year=>78, :origin=>3},
278
+ {:name=>"dodge omni", :mpg=>30.9, :cylinders=>4, :displacement=>105, :horsepower=>75, :weight=>2230, :acceleration=>14.5, :year=>78, :origin=>1},
279
+ {:name=>"toyota celica gt liftback", :mpg=>21.1, :cylinders=>4, :displacement=>134, :horsepower=>95, :weight=>2515, :acceleration=>14.8, :year=>78, :origin=>3},
280
+ {:name=>"plymouth sapporo", :mpg=>23.2, :cylinders=>4, :displacement=>156, :horsepower=>105, :weight=>2745, :acceleration=>16.7, :year=>78, :origin=>1},
281
+ {:name=>"oldsmobile starfire sx", :mpg=>23.8, :cylinders=>4, :displacement=>151, :horsepower=>85, :weight=>2855, :acceleration=>17.6, :year=>78, :origin=>1},
282
+ {:name=>"datsun 200-sx", :mpg=>23.9, :cylinders=>4, :displacement=>119, :horsepower=>97, :weight=>2405, :acceleration=>14.9, :year=>78, :origin=>3},
283
+ {:name=>"audi 5000", :mpg=>20.3, :cylinders=>5, :displacement=>131, :horsepower=>103, :weight=>2830, :acceleration=>15.9, :year=>78, :origin=>2},
284
+ {:name=>"volvo 264gl", :mpg=>17, :cylinders=>6, :displacement=>163, :horsepower=>125, :weight=>3140, :acceleration=>13.6, :year=>78, :origin=>2},
285
+ {:name=>"saab 99gle", :mpg=>21.6, :cylinders=>4, :displacement=>121, :horsepower=>115, :weight=>2795, :acceleration=>15.7, :year=>78, :origin=>2},
286
+ {:name=>"peugeot 604sl", :mpg=>16.2, :cylinders=>6, :displacement=>163, :horsepower=>133, :weight=>3410, :acceleration=>15.8, :year=>78, :origin=>2},
287
+ {:name=>"volkswagen scirocco", :mpg=>31.5, :cylinders=>4, :displacement=>89, :horsepower=>71, :weight=>1990, :acceleration=>14.9, :year=>78, :origin=>2},
288
+ {:name=>"honda accord lx", :mpg=>29.5, :cylinders=>4, :displacement=>98, :horsepower=>68, :weight=>2135, :acceleration=>16.6, :year=>78, :origin=>3},
289
+ {:name=>"pontiac lemans v6", :mpg=>21.5, :cylinders=>6, :displacement=>231, :horsepower=>115, :weight=>3245, :acceleration=>15.4, :year=>79, :origin=>1},
290
+ {:name=>"mercury zephyr 6", :mpg=>19.8, :cylinders=>6, :displacement=>200, :horsepower=>85, :weight=>2990, :acceleration=>18.2, :year=>79, :origin=>1},
291
+ {:name=>"ford fairmont 4", :mpg=>22.3, :cylinders=>4, :displacement=>140, :horsepower=>88, :weight=>2890, :acceleration=>17.3, :year=>79, :origin=>1},
292
+ {:name=>"amc concord dl 6", :mpg=>20.2, :cylinders=>6, :displacement=>232, :horsepower=>90, :weight=>3265, :acceleration=>18.2, :year=>79, :origin=>1},
293
+ {:name=>"dodge aspen 6", :mpg=>20.6, :cylinders=>6, :displacement=>225, :horsepower=>110, :weight=>3360, :acceleration=>16.6, :year=>79, :origin=>1},
294
+ {:name=>"chevrolet caprice classic", :mpg=>17, :cylinders=>8, :displacement=>305, :horsepower=>130, :weight=>3840, :acceleration=>15.4, :year=>79, :origin=>1},
295
+ {:name=>"ford ltd landau", :mpg=>17.6, :cylinders=>8, :displacement=>302, :horsepower=>129, :weight=>3725, :acceleration=>13.4, :year=>79, :origin=>1},
296
+ {:name=>"mercury grand marquis", :mpg=>16.5, :cylinders=>8, :displacement=>351, :horsepower=>138, :weight=>3955, :acceleration=>13.2, :year=>79, :origin=>1},
297
+ {:name=>"dodge st. regis", :mpg=>18.2, :cylinders=>8, :displacement=>318, :horsepower=>135, :weight=>3830, :acceleration=>15.2, :year=>79, :origin=>1},
298
+ {:name=>"buick estate wagon (sw)", :mpg=>16.9, :cylinders=>8, :displacement=>350, :horsepower=>155, :weight=>4360, :acceleration=>14.9, :year=>79, :origin=>1},
299
+ {:name=>"ford country squire (sw)", :mpg=>15.5, :cylinders=>8, :displacement=>351, :horsepower=>142, :weight=>4054, :acceleration=>14.3, :year=>79, :origin=>1},
300
+ {:name=>"chevrolet malibu classic (sw)", :mpg=>19.2, :cylinders=>8, :displacement=>267, :horsepower=>125, :weight=>3605, :acceleration=>15, :year=>79, :origin=>1},
301
+ {:name=>"chrysler lebaron town @ country (sw)", :mpg=>18.5, :cylinders=>8, :displacement=>360, :horsepower=>150, :weight=>3940, :acceleration=>13, :year=>79, :origin=>1},
302
+ {:name=>"vw rabbit custom", :mpg=>31.9, :cylinders=>4, :displacement=>89, :horsepower=>71, :weight=>1925, :acceleration=>14, :year=>79, :origin=>2},
303
+ {:name=>"maxda glc deluxe", :mpg=>34.1, :cylinders=>4, :displacement=>86, :horsepower=>65, :weight=>1975, :acceleration=>15.2, :year=>79, :origin=>3},
304
+ {:name=>"dodge colt hatchback custom", :mpg=>35.7, :cylinders=>4, :displacement=>98, :horsepower=>80, :weight=>1915, :acceleration=>14.4, :year=>79, :origin=>1},
305
+ {:name=>"amc spirit dl", :mpg=>27.4, :cylinders=>4, :displacement=>121, :horsepower=>80, :weight=>2670, :acceleration=>15, :year=>79, :origin=>1},
306
+ {:name=>"mercedes benz 300d", :mpg=>25.4, :cylinders=>5, :displacement=>183, :horsepower=>77, :weight=>3530, :acceleration=>20.1, :year=>79, :origin=>2},
307
+ {:name=>"cadillac eldorado", :mpg=>23, :cylinders=>8, :displacement=>350, :horsepower=>125, :weight=>3900, :acceleration=>17.4, :year=>79, :origin=>1},
308
+ {:name=>"peugeot 504", :mpg=>27.2, :cylinders=>4, :displacement=>141, :horsepower=>71, :weight=>3190, :acceleration=>24.8, :year=>79, :origin=>2},
309
+ {:name=>"oldsmobile cutlass salon brougham", :mpg=>23.9, :cylinders=>8, :displacement=>260, :horsepower=>90, :weight=>3420, :acceleration=>22.2, :year=>79, :origin=>1},
310
+ {:name=>"plymouth horizon", :mpg=>34.2, :cylinders=>4, :displacement=>105, :horsepower=>70, :weight=>2200, :acceleration=>13.2, :year=>79, :origin=>1},
311
+ {:name=>"plymouth horizon tc3", :mpg=>34.5, :cylinders=>4, :displacement=>105, :horsepower=>70, :weight=>2150, :acceleration=>14.9, :year=>79, :origin=>1},
312
+ {:name=>"datsun 210", :mpg=>31.8, :cylinders=>4, :displacement=>85, :horsepower=>65, :weight=>2020, :acceleration=>19.2, :year=>79, :origin=>3},
313
+ {:name=>"fiat strada custom", :mpg=>37.3, :cylinders=>4, :displacement=>91, :horsepower=>69, :weight=>2130, :acceleration=>14.7, :year=>79, :origin=>2},
314
+ {:name=>"buick skylark limited", :mpg=>28.4, :cylinders=>4, :displacement=>151, :horsepower=>90, :weight=>2670, :acceleration=>16, :year=>79, :origin=>1},
315
+ {:name=>"chevrolet citation", :mpg=>28.8, :cylinders=>6, :displacement=>173, :horsepower=>115, :weight=>2595, :acceleration=>11.3, :year=>79, :origin=>1},
316
+ {:name=>"oldsmobile omega brougham", :mpg=>26.8, :cylinders=>6, :displacement=>173, :horsepower=>115, :weight=>2700, :acceleration=>12.9, :year=>79, :origin=>1},
317
+ {:name=>"pontiac phoenix", :mpg=>33.5, :cylinders=>4, :displacement=>151, :horsepower=>90, :weight=>2556, :acceleration=>13.2, :year=>79, :origin=>1},
318
+ {:name=>"vw rabbit", :mpg=>41.5, :cylinders=>4, :displacement=>98, :horsepower=>76, :weight=>2144, :acceleration=>14.7, :year=>80, :origin=>2},
319
+ {:name=>"toyota corolla tercel", :mpg=>38.1, :cylinders=>4, :displacement=>89, :horsepower=>60, :weight=>1968, :acceleration=>18.8, :year=>80, :origin=>3},
320
+ {:name=>"chevrolet chevette", :mpg=>32.1, :cylinders=>4, :displacement=>98, :horsepower=>70, :weight=>2120, :acceleration=>15.5, :year=>80, :origin=>1},
321
+ {:name=>"datsun 310", :mpg=>37.2, :cylinders=>4, :displacement=>86, :horsepower=>65, :weight=>2019, :acceleration=>16.4, :year=>80, :origin=>3},
322
+ {:name=>"chevrolet citation", :mpg=>28, :cylinders=>4, :displacement=>151, :horsepower=>90, :weight=>2678, :acceleration=>16.5, :year=>80, :origin=>1},
323
+ {:name=>"ford fairmont", :mpg=>26.4, :cylinders=>4, :displacement=>140, :horsepower=>88, :weight=>2870, :acceleration=>18.1, :year=>80, :origin=>1},
324
+ {:name=>"amc concord", :mpg=>24.3, :cylinders=>4, :displacement=>151, :horsepower=>90, :weight=>3003, :acceleration=>20.1, :year=>80, :origin=>1},
325
+ {:name=>"dodge aspen", :mpg=>19.1, :cylinders=>6, :displacement=>225, :horsepower=>90, :weight=>3381, :acceleration=>18.7, :year=>80, :origin=>1},
326
+ {:name=>"audi 4000", :mpg=>34.3, :cylinders=>4, :displacement=>97, :horsepower=>78, :weight=>2188, :acceleration=>15.8, :year=>80, :origin=>2},
327
+ {:name=>"toyota corona liftback", :mpg=>29.8, :cylinders=>4, :displacement=>134, :horsepower=>90, :weight=>2711, :acceleration=>15.5, :year=>80, :origin=>3},
328
+ {:name=>"mazda 626", :mpg=>31.3, :cylinders=>4, :displacement=>120, :horsepower=>75, :weight=>2542, :acceleration=>17.5, :year=>80, :origin=>3},
329
+ {:name=>"datsun 510 hatchback", :mpg=>37, :cylinders=>4, :displacement=>119, :horsepower=>92, :weight=>2434, :acceleration=>15, :year=>80, :origin=>3},
330
+ {:name=>"toyota corolla", :mpg=>32.2, :cylinders=>4, :displacement=>108, :horsepower=>75, :weight=>2265, :acceleration=>15.2, :year=>80, :origin=>3},
331
+ {:name=>"mazda glc", :mpg=>46.6, :cylinders=>4, :displacement=>86, :horsepower=>65, :weight=>2110, :acceleration=>17.9, :year=>80, :origin=>3},
332
+ {:name=>"dodge colt", :mpg=>27.9, :cylinders=>4, :displacement=>156, :horsepower=>105, :weight=>2800, :acceleration=>14.4, :year=>80, :origin=>1},
333
+ {:name=>"datsun 210", :mpg=>40.8, :cylinders=>4, :displacement=>85, :horsepower=>65, :weight=>2110, :acceleration=>19.2, :year=>80, :origin=>3},
334
+ {:name=>"vw rabbit c (diesel)", :mpg=>44.3, :cylinders=>4, :displacement=>90, :horsepower=>48, :weight=>2085, :acceleration=>21.7, :year=>80, :origin=>2},
335
+ {:name=>"vw dasher (diesel)", :mpg=>43.4, :cylinders=>4, :displacement=>90, :horsepower=>48, :weight=>2335, :acceleration=>23.7, :year=>80, :origin=>2},
336
+ {:name=>"audi 5000s (diesel)", :mpg=>36.4, :cylinders=>5, :displacement=>121, :horsepower=>67, :weight=>2950, :acceleration=>19.9, :year=>80, :origin=>2},
337
+ {:name=>"mercedes-benz 240d", :mpg=>30, :cylinders=>4, :displacement=>146, :horsepower=>67, :weight=>3250, :acceleration=>21.8, :year=>80, :origin=>2},
338
+ {:name=>"honda civic 1500 gl", :mpg=>44.6, :cylinders=>4, :displacement=>91, :horsepower=>67, :weight=>1850, :acceleration=>13.8, :year=>80, :origin=>3},
339
+ {:name=>"renault lecar deluxe", :mpg=>40.9, :cylinders=>4, :displacement=>85, :horsepower=>nil, :weight=>1835, :acceleration=>17.3, :year=>80, :origin=>2},
340
+ {:name=>"subaru dl", :mpg=>33.8, :cylinders=>4, :displacement=>97, :horsepower=>67, :weight=>2145, :acceleration=>18, :year=>80, :origin=>3},
341
+ {:name=>"vokswagen rabbit", :mpg=>29.8, :cylinders=>4, :displacement=>89, :horsepower=>62, :weight=>1845, :acceleration=>15.3, :year=>80, :origin=>2},
342
+ {:name=>"datsun 280-zx", :mpg=>32.7, :cylinders=>6, :displacement=>168, :horsepower=>132, :weight=>2910, :acceleration=>11.4, :year=>80, :origin=>3},
343
+ {:name=>"mazda rx-7 gs", :mpg=>23.7, :cylinders=>3, :displacement=>70, :horsepower=>100, :weight=>2420, :acceleration=>12.5, :year=>80, :origin=>3},
344
+ {:name=>"triumph tr7 coupe", :mpg=>35, :cylinders=>4, :displacement=>122, :horsepower=>88, :weight=>2500, :acceleration=>15.1, :year=>80, :origin=>2},
345
+ {:name=>"ford mustang cobra", :mpg=>23.6, :cylinders=>4, :displacement=>140, :horsepower=>nil, :weight=>2905, :acceleration=>14.3, :year=>80, :origin=>1},
346
+ {:name=>"honda accord", :mpg=>32.4, :cylinders=>4, :displacement=>107, :horsepower=>72, :weight=>2290, :acceleration=>17, :year=>80, :origin=>3},
347
+ {:name=>"plymouth reliant", :mpg=>27.2, :cylinders=>4, :displacement=>135, :horsepower=>84, :weight=>2490, :acceleration=>15.7, :year=>81, :origin=>1},
348
+ {:name=>"buick skylark", :mpg=>26.6, :cylinders=>4, :displacement=>151, :horsepower=>84, :weight=>2635, :acceleration=>16.4, :year=>81, :origin=>1},
349
+ {:name=>"dodge aries wagon (sw)", :mpg=>25.8, :cylinders=>4, :displacement=>156, :horsepower=>92, :weight=>2620, :acceleration=>14.4, :year=>81, :origin=>1},
350
+ {:name=>"chevrolet citation", :mpg=>23.5, :cylinders=>6, :displacement=>173, :horsepower=>110, :weight=>2725, :acceleration=>12.6, :year=>81, :origin=>1},
351
+ {:name=>"plymouth reliant", :mpg=>30, :cylinders=>4, :displacement=>135, :horsepower=>84, :weight=>2385, :acceleration=>12.9, :year=>81, :origin=>1},
352
+ {:name=>"toyota starlet", :mpg=>39.1, :cylinders=>4, :displacement=>79, :horsepower=>58, :weight=>1755, :acceleration=>16.9, :year=>81, :origin=>3},
353
+ {:name=>"plymouth champ", :mpg=>39, :cylinders=>4, :displacement=>86, :horsepower=>64, :weight=>1875, :acceleration=>16.4, :year=>81, :origin=>1},
354
+ {:name=>"honda civic 1300", :mpg=>35.1, :cylinders=>4, :displacement=>81, :horsepower=>60, :weight=>1760, :acceleration=>16.1, :year=>81, :origin=>3},
355
+ {:name=>"subaru", :mpg=>32.3, :cylinders=>4, :displacement=>97, :horsepower=>67, :weight=>2065, :acceleration=>17.8, :year=>81, :origin=>3},
356
+ {:name=>"datsun 210 mpg", :mpg=>37, :cylinders=>4, :displacement=>85, :horsepower=>65, :weight=>1975, :acceleration=>19.4, :year=>81, :origin=>3},
357
+ {:name=>"toyota tercel", :mpg=>37.7, :cylinders=>4, :displacement=>89, :horsepower=>62, :weight=>2050, :acceleration=>17.3, :year=>81, :origin=>3},
358
+ {:name=>"mazda glc 4", :mpg=>34.1, :cylinders=>4, :displacement=>91, :horsepower=>68, :weight=>1985, :acceleration=>16, :year=>81, :origin=>3},
359
+ {:name=>"plymouth horizon 4", :mpg=>34.7, :cylinders=>4, :displacement=>105, :horsepower=>63, :weight=>2215, :acceleration=>14.9, :year=>81, :origin=>1},
360
+ {:name=>"ford escort 4w", :mpg=>34.4, :cylinders=>4, :displacement=>98, :horsepower=>65, :weight=>2045, :acceleration=>16.2, :year=>81, :origin=>1},
361
+ {:name=>"ford escort 2h", :mpg=>29.9, :cylinders=>4, :displacement=>98, :horsepower=>65, :weight=>2380, :acceleration=>20.7, :year=>81, :origin=>1},
362
+ {:name=>"volkswagen jetta", :mpg=>33, :cylinders=>4, :displacement=>105, :horsepower=>74, :weight=>2190, :acceleration=>14.2, :year=>81, :origin=>2},
363
+ {:name=>"renault 18i", :mpg=>34.5, :cylinders=>4, :displacement=>100, :horsepower=>nil, :weight=>2320, :acceleration=>15.8, :year=>81, :origin=>2},
364
+ {:name=>"honda prelude", :mpg=>33.7, :cylinders=>4, :displacement=>107, :horsepower=>75, :weight=>2210, :acceleration=>14.4, :year=>81, :origin=>3},
365
+ {:name=>"toyota corolla", :mpg=>32.4, :cylinders=>4, :displacement=>108, :horsepower=>75, :weight=>2350, :acceleration=>16.8, :year=>81, :origin=>3},
366
+ {:name=>"datsun 200sx", :mpg=>32.9, :cylinders=>4, :displacement=>119, :horsepower=>100, :weight=>2615, :acceleration=>14.8, :year=>81, :origin=>3},
367
+ {:name=>"mazda 626", :mpg=>31.6, :cylinders=>4, :displacement=>120, :horsepower=>74, :weight=>2635, :acceleration=>18.3, :year=>81, :origin=>3},
368
+ {:name=>"peugeot 505s turbo diesel", :mpg=>28.1, :cylinders=>4, :displacement=>141, :horsepower=>80, :weight=>3230, :acceleration=>20.4, :year=>81, :origin=>2},
369
+ {:name=>"saab 900s", :mpg=>nil, :cylinders=>4, :displacement=>121, :horsepower=>110, :weight=>2800, :acceleration=>15.4, :year=>81, :origin=>2},
370
+ {:name=>"volvo diesel", :mpg=>30.7, :cylinders=>6, :displacement=>145, :horsepower=>76, :weight=>3160, :acceleration=>19.6, :year=>81, :origin=>2},
371
+ {:name=>"toyota cressida", :mpg=>25.4, :cylinders=>6, :displacement=>168, :horsepower=>116, :weight=>2900, :acceleration=>12.6, :year=>81, :origin=>3},
372
+ {:name=>"datsun 810 maxima", :mpg=>24.2, :cylinders=>6, :displacement=>146, :horsepower=>120, :weight=>2930, :acceleration=>13.8, :year=>81, :origin=>3},
373
+ {:name=>"buick century", :mpg=>22.4, :cylinders=>6, :displacement=>231, :horsepower=>110, :weight=>3415, :acceleration=>15.8, :year=>81, :origin=>1},
374
+ {:name=>"oldsmobile cutlass ls", :mpg=>26.6, :cylinders=>8, :displacement=>350, :horsepower=>105, :weight=>3725, :acceleration=>19, :year=>81, :origin=>1},
375
+ {:name=>"ford granada gl", :mpg=>20.2, :cylinders=>6, :displacement=>200, :horsepower=>88, :weight=>3060, :acceleration=>17.1, :year=>81, :origin=>1},
376
+ {:name=>"chrysler lebaron salon", :mpg=>17.6, :cylinders=>6, :displacement=>225, :horsepower=>85, :weight=>3465, :acceleration=>16.6, :year=>81, :origin=>1},
377
+ {:name=>"chevrolet cavalier", :mpg=>28, :cylinders=>4, :displacement=>112, :horsepower=>88, :weight=>2605, :acceleration=>19.6, :year=>82, :origin=>1},
378
+ {:name=>"chevrolet cavalier wagon", :mpg=>27, :cylinders=>4, :displacement=>112, :horsepower=>88, :weight=>2640, :acceleration=>18.6, :year=>82, :origin=>1},
379
+ {:name=>"chevrolet cavalier 2-door", :mpg=>34, :cylinders=>4, :displacement=>112, :horsepower=>88, :weight=>2395, :acceleration=>18, :year=>82, :origin=>1},
380
+ {:name=>"pontiac j2000 se hatchback", :mpg=>31, :cylinders=>4, :displacement=>112, :horsepower=>85, :weight=>2575, :acceleration=>16.2, :year=>82, :origin=>1},
381
+ {:name=>"dodge aries se", :mpg=>29, :cylinders=>4, :displacement=>135, :horsepower=>84, :weight=>2525, :acceleration=>16, :year=>82, :origin=>1},
382
+ {:name=>"pontiac phoenix", :mpg=>27, :cylinders=>4, :displacement=>151, :horsepower=>90, :weight=>2735, :acceleration=>18, :year=>82, :origin=>1},
383
+ {:name=>"ford fairmont futura", :mpg=>24, :cylinders=>4, :displacement=>140, :horsepower=>92, :weight=>2865, :acceleration=>16.4, :year=>82, :origin=>1},
384
+ {:name=>"amc concord dl", :mpg=>23, :cylinders=>4, :displacement=>151, :horsepower=>nil, :weight=>3035, :acceleration=>20.5, :year=>82, :origin=>1},
385
+ {:name=>"volkswagen rabbit l", :mpg=>36, :cylinders=>4, :displacement=>105, :horsepower=>74, :weight=>1980, :acceleration=>15.3, :year=>82, :origin=>2},
386
+ {:name=>"mazda glc custom l", :mpg=>37, :cylinders=>4, :displacement=>91, :horsepower=>68, :weight=>2025, :acceleration=>18.2, :year=>82, :origin=>3},
387
+ {:name=>"mazda glc custom", :mpg=>31, :cylinders=>4, :displacement=>91, :horsepower=>68, :weight=>1970, :acceleration=>17.6, :year=>82, :origin=>3},
388
+ {:name=>"plymouth horizon miser", :mpg=>38, :cylinders=>4, :displacement=>105, :horsepower=>63, :weight=>2125, :acceleration=>14.7, :year=>82, :origin=>1},
389
+ {:name=>"mercury lynx l", :mpg=>36, :cylinders=>4, :displacement=>98, :horsepower=>70, :weight=>2125, :acceleration=>17.3, :year=>82, :origin=>1},
390
+ {:name=>"nissan stanza xe", :mpg=>36, :cylinders=>4, :displacement=>120, :horsepower=>88, :weight=>2160, :acceleration=>14.5, :year=>82, :origin=>3},
391
+ {:name=>"honda accord", :mpg=>36, :cylinders=>4, :displacement=>107, :horsepower=>75, :weight=>2205, :acceleration=>14.5, :year=>82, :origin=>3},
392
+ {:name=>"toyota corolla", :mpg=>34, :cylinders=>4, :displacement=>108, :horsepower=>70, :weight=>2245, :acceleration=>16.9, :year=>82, :origin=>3},
393
+ {:name=>"honda civic", :mpg=>38, :cylinders=>4, :displacement=>91, :horsepower=>67, :weight=>1965, :acceleration=>15, :year=>82, :origin=>3},
394
+ {:name=>"honda civic (auto)", :mpg=>32, :cylinders=>4, :displacement=>91, :horsepower=>67, :weight=>1965, :acceleration=>15.7, :year=>82, :origin=>3},
395
+ {:name=>"datsun 310 gx", :mpg=>38, :cylinders=>4, :displacement=>91, :horsepower=>67, :weight=>1995, :acceleration=>16.2, :year=>82, :origin=>3},
396
+ {:name=>"buick century limited", :mpg=>25, :cylinders=>6, :displacement=>181, :horsepower=>110, :weight=>2945, :acceleration=>16.4, :year=>82, :origin=>1},
397
+ {:name=>"oldsmobile cutlass ciera (diesel)", :mpg=>38, :cylinders=>6, :displacement=>262, :horsepower=>85, :weight=>3015, :acceleration=>17, :year=>82, :origin=>1},
398
+ {:name=>"chrysler lebaron medallion", :mpg=>26, :cylinders=>4, :displacement=>156, :horsepower=>92, :weight=>2585, :acceleration=>14.5, :year=>82, :origin=>1},
399
+ {:name=>"ford granada l", :mpg=>22, :cylinders=>6, :displacement=>232, :horsepower=>112, :weight=>2835, :acceleration=>14.7, :year=>82, :origin=>1},
400
+ {:name=>"toyota celica gt", :mpg=>32, :cylinders=>4, :displacement=>144, :horsepower=>96, :weight=>2665, :acceleration=>13.9, :year=>82, :origin=>3},
401
+ {:name=>"dodge charger 2.2", :mpg=>36, :cylinders=>4, :displacement=>135, :horsepower=>84, :weight=>2370, :acceleration=>13, :year=>82, :origin=>1},
402
+ {:name=>"chevrolet camaro", :mpg=>27, :cylinders=>4, :displacement=>151, :horsepower=>90, :weight=>2950, :acceleration=>17.3, :year=>82, :origin=>1},
403
+ {:name=>"ford mustang gl", :mpg=>27, :cylinders=>4, :displacement=>140, :horsepower=>86, :weight=>2790, :acceleration=>15.6, :year=>82, :origin=>1},
404
+ {:name=>"vw pickup", :mpg=>44, :cylinders=>4, :displacement=>97, :horsepower=>52, :weight=>2130, :acceleration=>24.6, :year=>82, :origin=>2},
405
+ {:name=>"dodge rampage", :mpg=>32, :cylinders=>4, :displacement=>135, :horsepower=>84, :weight=>2295, :acceleration=>11.6, :year=>82, :origin=>1},
406
+ {:name=>"ford ranger", :mpg=>28, :cylinders=>4, :displacement=>120, :horsepower=>79, :weight=>2625, :acceleration=>18.6, :year=>82, :origin=>1},
407
+ {:name=>"chevy s-10", :mpg=>31, :cylinders=>4, :displacement=>119, :horsepower=>82, :weight=>2720, :acceleration=>19.4, :year=>82, :origin=>1}
408
+ ]
409
+