Hide stuff and correct sorting of SouthCarolina and Syracuse.

This commit is contained in:
Olivia Brooks
2025-06-13 12:27:22 -04:00
parent d591d2ed0d
commit b11f6037c2
2 changed files with 28 additions and 26 deletions

View File

@@ -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]