:SUMIFS - 특정 열을 여러 기준의 오프 하위 집합을 만들고 합산 I 유사한 패널 데이터 세트가
city <- c("ARI", "ATL", "BAL", "BUF", "CAR", "ARI", "ATL", "BAL", "BUF", "CAR", "ARI", "ATL", "BAL", "BUF", "CAR", "ARI", "ATL", "BAL", "BUF", "CAR", "ARI", "ATL", "BAL", "BUF", "CAR")
week <- c(1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5)
df <- as.data.frame(cbind(city, week))
df$week <- as.numeric(df$week)
df$x <- c(6, 3, 9, 12, 4, 3, 7, 8, 2, 12, 15, 6, 3, 9, 0, 14, 18, 2, 21, 15, 17, 9, 10, 1, 22)
내가, df$y
을 새 변수를 만들고 싶습니다, 그 df$x
을 요약 각 도시에 대해, 그리고 매주, 현재 관찰되는 주 전에. 따라서 이 31이므로 df$y[25]
은 31
과 같아야합니다.
내 질문은 자동으로 수행하는 함수에 어떻게 써야합니까?
sum(df[df$city == "CAR" & df$week < 5, 3])
을 각 팀과 주간 조합에 사용하는 것은 지루한 작업입니다. 내 자연스러운 성향은 df$y <- sum(df[df$city == df$city & df$week < df$week, 3])
과 같은 것을 쓰는 것이지만 그건 의미가 없습니다. 나는 R에 익숙하지 않고 기능을 완전히 이해하지 못한다. 하지만, 내가하려는 일을위한 최선의 경로인가?
도움 주셔서 감사합니다.
data.table
와 함께'만들려면 자료. 논리 비교가 정확하지 않습니다. 데이터를 생성하려면'data.frame()'을 사용해야합니다. –