Я работаю над набором данных, который требует, чтобы я разбил данные по типу шага. В идеале, я пытаюсь найти частоту удара свинга для каждого типа шага (свинг удара / общее количество брошенных шагов).
Код, который я использую для разделения типов шагов, следующий:
FFB16 <- Regseason2016 %>%
group_by(MLBID) %>%
filter(Pitch == "FF") %>%
summarise(avg16FFBeffectivesp = mean(effective_speed, na.rm = TRUE),
avg16FFBspinrate = mean(release_spin_rate, na.rm = TRUE),
avg16FFBpfx_x = mean(pfx_x, na.rm = TRUE),
avg16FFBpfx_z = mean(pfx_z, na.rm = TRUE))
Это выплевывает все необходимое кроме скорости удара на шаг
Но как мне рассчитать частоту ударов? Мне известна функция мутации, но я не уверен, как правильно ее использовать.
В идеале мне нужно что-то вычислить, если IF description = "swinging_strike", затем подсчитать общее число для каждого идентификатора, а затем разделить его на общее количество шагов, выбрасываемых каждым идентификатором.
Описание события (независимо от того, было ли это колебание или нет) в моей таблице отформатировано следующим образом:
**Description**
foul
swinging_strike
ball
called_strike
hit
swinging_strike
Я ожидаю, что мои результаты будут выглядеть следующим образом
MLBID avgeffectivesp avgspinrate avgpfx_x avgpfx_z SwStr
1111 88.84 2500 -4.03 2.01 .45