Я использую данные о численности населения во времени и хочу определить первый год, в который популяция достигает нуля. Мои данные выглядят примерно так:
population<- c(500,50,25,2,0,0,0,0)
year<-(1:8)
dat<-data.frame(year,population)
Я хочу получить значение, показывающее год, когда численность населения впервые достигает нуля, поэтому в данном случае это будет 5. Я пробовал использовать функции if и ifelse так что, когда численность населения выше нуля, это NA, а когда оно равно нулю, это эквивалентно «году», но это просто начинает печатать номера года по порядку, а не выбирать год, который соответствует первой нулевой строке населения. Это также немного сбивает с толку, поскольку существует несколько лет с нулевым населением, но меня интересует только первый.
Любые предложения / идеи о том, как сделать это лучше и заставить это работать, будут очень признательны!