baseball 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/baseball.rb +13 -7
- data/lib/baseball/batting.rb +9 -0
- data/lib/baseball/pitching.rb +3 -6
- data/lib/baseball/running.rb +2 -4
- data/lib/baseball/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d02b487ff6f4d5e35050acf27f4343586ee50fe397aa8b16b92a530281470318
|
4
|
+
data.tar.gz: d756307de9cdaa037f6d7ab3b43ec973bd765f6b1ffd0421cf8e362b46411b2c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 66563fa720fb7a89d6e4458be964cd32c7fc78a8c39788f122df64e7c3f3b5bdaf22742cc5fd92bf070bc453068d7aa7034f792d86498b6916ba1bb62eb43f76
|
7
|
+
data.tar.gz: 1b8a25ca4b5e01132ef9c656735845c01bbc5a7dec3dc9bfe2044b1ba387e156a2debede0af135dd8486aa2a0992c5e088ae9597121e97840cfb6a40acd91bd2
|
data/lib/baseball.rb
CHANGED
@@ -8,10 +8,10 @@ require 'baseball/player'
|
|
8
8
|
module Baseball
|
9
9
|
|
10
10
|
#table of contents
|
11
|
-
#
|
12
|
-
#
|
13
|
-
#
|
14
|
-
#
|
11
|
+
#batting stats
|
12
|
+
#pitching stats
|
13
|
+
# fielding stats
|
14
|
+
# running stats
|
15
15
|
|
16
16
|
def self.version_number
|
17
17
|
Baseball::VERSION
|
@@ -43,7 +43,13 @@ module Baseball
|
|
43
43
|
player.ops
|
44
44
|
end
|
45
45
|
|
46
|
-
|
46
|
+
def self.runs_created(player_hash)
|
47
|
+
include Batting
|
48
|
+
player = Batter.new(player_hash)
|
49
|
+
player.runs_created
|
50
|
+
end
|
51
|
+
|
52
|
+
#pitching stats
|
47
53
|
|
48
54
|
def self.era(pitcher_hash)
|
49
55
|
include Pitching
|
@@ -63,7 +69,7 @@ module Baseball
|
|
63
69
|
pitcher.k_per_nine
|
64
70
|
end
|
65
71
|
|
66
|
-
#
|
72
|
+
#fielding stats
|
67
73
|
|
68
74
|
def self.fielding_percentage(fielder_hash)
|
69
75
|
include Fielding
|
@@ -71,7 +77,7 @@ module Baseball
|
|
71
77
|
fielder.fielding_percentage
|
72
78
|
end
|
73
79
|
|
74
|
-
#
|
80
|
+
# running stats
|
75
81
|
|
76
82
|
def self.stolen_base_percentage(runner_hash)
|
77
83
|
include Running
|
data/lib/baseball/batting.rb
CHANGED
@@ -35,6 +35,15 @@ module Batting
|
|
35
35
|
player_ops_string
|
36
36
|
end
|
37
37
|
end
|
38
|
+
|
39
|
+
def runs_created
|
40
|
+
opportunities = @player[:at_bats] + @player[:walks]
|
41
|
+
times_on_base = @player[:hits] + @player[:walks]
|
42
|
+
total_bases = @player[:singles] + (@player[:doubles] * 2) + (@player[:triples] * 3) + @player[:hr] * 4
|
43
|
+
total_production = total_bases * times_on_base
|
44
|
+
runs_created_figure = total_production.to_f / opportunities.to_f
|
45
|
+
runs_created_figure.round(2).to_s
|
46
|
+
end
|
38
47
|
end
|
39
48
|
|
40
49
|
end
|
data/lib/baseball/pitching.rb
CHANGED
@@ -7,23 +7,20 @@ module Pitching
|
|
7
7
|
def era
|
8
8
|
earned_runs = @player[:er] * 9
|
9
9
|
avg = earned_runs / @player[:ip].to_f
|
10
|
-
|
11
|
-
earned_run_average.to_s
|
10
|
+
avg.round(2).to_s
|
12
11
|
end
|
13
12
|
|
14
13
|
def whip
|
15
14
|
corrected_innings = third_of_an_inning_handler(@player[:ip]).to_f
|
16
15
|
walks_plus_hits = @player[:walks] + @player[:hits]
|
17
16
|
figured_whip = walks_plus_hits / corrected_innings
|
18
|
-
figured_whip
|
19
|
-
figured_whip.to_s
|
17
|
+
figured_whip.round(3).to_s
|
20
18
|
end
|
21
19
|
|
22
20
|
def k_per_nine
|
23
21
|
full_games = @player[:ip] / 9
|
24
22
|
so9 = @player[:so] / full_games.to_f
|
25
|
-
|
26
|
-
so9_final.to_s
|
23
|
+
so9.round(1).to_s
|
27
24
|
end
|
28
25
|
|
29
26
|
end
|
data/lib/baseball/running.rb
CHANGED
@@ -7,16 +7,14 @@ module Running
|
|
7
7
|
def stolen_base_percentage
|
8
8
|
player_stolen_base_percentage = @player[:stolen_bases].to_f / (@player[:stolen_bases ].to_f + @player[:caught_stealing].to_f)
|
9
9
|
stealing_average = player_stolen_base_percentage.round(3)
|
10
|
-
|
11
|
-
figure_lead_and_trailing_zeroes(average_string)
|
10
|
+
figure_lead_and_trailing_zeroes(stealing_average)
|
12
11
|
end
|
13
12
|
|
14
13
|
def stolen_base_runs
|
15
14
|
stolen_base_adjustment = @player[:stolen_bases].to_f * 0.3
|
16
15
|
caught_stealing_adjustment = @player[:caught_stealing].to_f * 0.6
|
17
16
|
adjusted_stolen_base_runs = stolen_base_adjustment - caught_stealing_adjustment
|
18
|
-
|
19
|
-
return base_runs.to_s
|
17
|
+
adjusted_stolen_base_runs.round(3).to_s
|
20
18
|
end
|
21
19
|
end
|
22
20
|
|
data/lib/baseball/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: baseball
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brent Busby
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-03-
|
11
|
+
date: 2018-03-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|