Во-первых, вы берете $ t $ в качестве аргумента функции, но затем определяете $ t $ через цикл $ 1: 365 $ , так что $ t $ циклически повторяется.значения от $ 1,2, \ dots, 365 $ .Удалите цикл for (), он не имеет смысла.
Во-вторых, вы сравниваете число $ t $ со строками "1", "59" и т. Д.Уберите цитаты, вы должны сравнивать $ t $ с целыми числами, а не символами / строками.Вот правильный код
nhpp_lambda <- function(t) {
if (t >= 1 && t <= 59)
lambda = 20.83
else if (t >= 60 && t <= 151)
lambda = 11.02
else if (t >= 152 && t <= 243)
lambda = 11.68
else if (t >= 244 && t <= 334)
lambda = 26.41
else if (t >= 335 && t <= 365)
lambda = 20.83
return(lambda)
}