Hide stuff and correct sorting of SouthCarolina and Syracuse.
This commit is contained in:
@@ -96,36 +96,36 @@ impl Game {
|
||||
}
|
||||
|
||||
/// The average number of plays in a quarter.
|
||||
pub fn avg_plays_per_quarter(&self, team: Team) -> f32 {
|
||||
pub fn avg_plays_per_quarter(&self, team: Team) -> f64 {
|
||||
let periods: Vec<Period> = Quarter::iter()
|
||||
.filter_map(|quarter| self.get_period(quarter.to_owned()))
|
||||
.to_owned()
|
||||
.collect();
|
||||
|
||||
let quarterly_avgs: Vec<f32> = periods
|
||||
let quarterly_avgs: Vec<f64> = periods
|
||||
.iter()
|
||||
.filter_map(|period| {
|
||||
if !period.is_overtime() {
|
||||
Some(period.team_plays(team.to_owned()) as f32)
|
||||
Some(period.team_plays(team.to_owned()) as f64)
|
||||
} else {
|
||||
None
|
||||
}
|
||||
})
|
||||
.collect::<Vec<f32>>();
|
||||
.collect::<Vec<f64>>();
|
||||
|
||||
quarterly_avgs.iter().sum::<f32>() / quarterly_avgs.len() as f32
|
||||
quarterly_avgs.iter().sum::<f64>() / quarterly_avgs.len() as f64
|
||||
}
|
||||
|
||||
/// Returns the average delta of a team.
|
||||
pub fn avg_delta(&self, team: Team) -> f32 {
|
||||
pub fn avg_delta(&self, team: Team) -> f64 {
|
||||
let deltas = self.deltas(team);
|
||||
|
||||
// Summation doesn't like directly returning f32 from i8.
|
||||
deltas.iter().sum::<i8>() as f32 / deltas.len() as f32
|
||||
// Summation doesn't like directly returning f64 from i8.
|
||||
deltas.iter().sum::<i8>() as f64 / deltas.len() as f64
|
||||
}
|
||||
|
||||
/// Returns the average delta for a team's positive deltas.
|
||||
pub fn avg_gain(&self, team: Team) -> f32 {
|
||||
pub fn avg_gain(&self, team: Team) -> f64 {
|
||||
let deltas: Vec<u8> = self
|
||||
.deltas(team)
|
||||
.iter()
|
||||
@@ -138,12 +138,12 @@ impl Game {
|
||||
})
|
||||
.collect();
|
||||
|
||||
// Summation doesn't like directly returning f32 from u8.
|
||||
deltas.iter().sum::<u8>() as f32 / deltas.len() as f32
|
||||
// Summation doesn't like directly returning f64 from u8.
|
||||
deltas.iter().sum::<u8>() as f64 / deltas.len() as f64
|
||||
}
|
||||
|
||||
/// Returns the average delta for a team's negative deltas.
|
||||
pub fn avg_loss(&self, team: Team) -> f32 {
|
||||
pub fn avg_loss(&self, team: Team) -> f64 {
|
||||
let deltas: Vec<i8> = self
|
||||
.deltas(team)
|
||||
.iter()
|
||||
@@ -156,7 +156,7 @@ impl Game {
|
||||
})
|
||||
.collect();
|
||||
|
||||
deltas.iter().sum::<i8>() as f32 / deltas.len() as f32
|
||||
deltas.iter().sum::<i8>() as f64 / deltas.len() as f64
|
||||
}
|
||||
|
||||
/// Returns the number of penalties that a team experienced.
|
||||
@@ -381,8 +381,8 @@ mod tests {
|
||||
dbg!(a.avg_plays_per_quarter(Team::Nebraska));
|
||||
dbg!(b.avg_plays_per_quarter(Team::Nebraska));
|
||||
|
||||
assert!(a.avg_plays_per_quarter(Team::Nebraska) == ((1_f32 + 6_f32) / 2_f32));
|
||||
assert!(b.avg_plays_per_quarter(Team::Nebraska) == 1_f32)
|
||||
assert!(a.avg_plays_per_quarter(Team::Nebraska) == ((1_f64 + 6_f64) / 2_f64));
|
||||
assert!(b.avg_plays_per_quarter(Team::Nebraska) == 1_f64)
|
||||
}
|
||||
|
||||
#[test]
|
||||
|
||||
Reference in New Issue
Block a user