Mam ramkę danych z danymi tygodniowymi według sekcji. Każda sekcja ma dane o długości 104 tygodni i zawiera 83 sekcje.Scalanie/dołączanie ramki danych/tabeli na podstawie kryteriów -> lub <
Mam drugą ramkę danych z początkiem i końcem tygodnia według sekcji, którą chcę filtrować główną ramkę danych.
W obu tabelach Tydzień jest kombinacją roku i tygodnia, np. 201501 i jest zawsze od tygodni 1 do 52.
Dlatego w poniższym przykładzie chcę filtrować Sekcji A przez tygodnie 201401 do 201404, Sekcja B od tygodni 201551 do 201603.
I początkowo myślałem, że mogę dodać dodatkową kolumnę do ramki danych Weeks_Filter, która jest kolejnym numerem od początku i końca tygodnia dla każdej sekcji (duplikowanie każdego wiersza dla każdego tygodnia), a następnie scalenie 2 tabel i zachowanie wszystkich danych z tabeli Weeks_Filter (wszystkie. y = TRUE), ponieważ działało to na małej próbce, którą zrobiłem, ale nie wiem, jak dodać sekwencyjne tygodnie, ponieważ mogą one obejmować różne lata.
Week <- c("201401","201402","201403","201404","201405", "201451", "201552", "201601", "201602", "201603")
Section <- c(rep("A",5),rep("B",5))
df <- data.frame(cbind(Week, Section))
Section <- c("A", "B")
Start <- c("201401","201551")
End <- c("201404","201603")
Weeks_Filter <- data.frame(cbind(Section, Start, End))
Dziękuję. Działało idealnie. – MidnightDataGeek
Zastanawiam się, dlaczego odpowiedź brzmi, jak zdobyć głos. Czy ludzie lubią złożone rozwiązania, a nie prostsze. – TheRimalaya
Odpowiedź działała dobrze dla mnie. Jestem nowy w R i pomimo tego, że korzystałem z linku podanego poniżej, nie byłem w stanie uzyskać odpowiedzi. – MidnightDataGeek