1
첫 번째 행과 n 행 사이의 차이/지속 시간을 계산하려고합니다. 그 값을 새로운 기간 "duration"에 넣고 싶습니다. 샘플 데이터 : 아래. 내가 dplyr's group_by and mutate첫 번째 행과 n 행 사이의 열 값이 일치하는 값을 계산하십시오.
y <- y %>% group_by(Country) %>% mutate(duration = Year - lag(Year))
를 사용하려고했습니다
1992 USA 0
1993 USA 1
1994 USA 2
1989 France 0
1990 France 1
1999 Mexico 0
2000 Mexico 1
2001 Mexico 2
하지만 난 단지 실제 지연 년 (예 : 1999)를 얻거나에서만 차이를 계산할 수 있습니다
y <- data.frame(c("USA", "USA", "USA", "France", "France", "Mexico", "Mexico", "Mexico"), c(1992, 1993, 1994, 1989, 1990, 1999, 2000, 2001))
colnames(y) <- c("Country", "Year")
y$Year <- as.integer(y$Year) # this is to match the class of my actual data
내 원하는 결과입니다 순차적 인 행 사이에 나라의 첫 번째 행에 대해 NA 또는 동일한 국가에있는 다른 모든 행에 대해 하나를 가져옵니다. Manyq & a's은 첫 번째와 n 행 사이가 아니라 difference between sequential rows에 중점을 둡니다.
생각?
고마워요, @akrun! 이것은 위대합니다. 나는 R에 새로운 사람이고, 그것을 이해하려고 노력하는 데 몇 시간을 보냈지 만 잘못된 용어/프로세스를 찾고 있었음에 틀림 없다. 다시 한 번 감사드립니다! – user6780841