Создайте переменную подсчета, которую я могу использовать для группировки моих данных по безработице в R
У меня есть данные, как показано ниже, где я создал переменную "B" с помощью функции:
index <- which(Count$unemploymentduration ==1)
Count$B[index]<-1:length(index)
ID unemployment B
1 1 1
1 2 NA
1 3 NA
1 4 NA
2 1 2
2 2 NA
2 0 NA
2 1 3
2 2 NA
2 3 NA
2 4 NA
2 5 NA
И я хочу, чтобы мои данные были такими, и я не имею ни малейшего представления, как их получить таким образом. Мысль о "если-функция", но никогда не использовал его в R.
ID unemployment B
1 1 1
1 2 1
1 3 1
1 4 1
2 1 2
2 2 2
2 0 2
2 1 3
2 2 3
2 3 3
2 4 3
2 5 3
Может ли кто-нибудь помочь мне?
1 ответ
Решение
Мы можем использовать na.locf
от library(zoo)
library(zoo)
Count$B <- na.locf(Count$B)
Но это может быть создано непосредственно без использования "индекса"
Count$B <- cumsum(Count$unemployment==1)