0. 키(Key)
- 정의 : 각 테이블 쌍을 연결하는데 사용되는 변수들의 집합으로 관측값을 고유하게 식별
- 기본키(primary key) : 자신의 테이블에서 관측값을 고유하게 식별하는 키
- 기본키는 중북되거나 NA값이 존재하면 안됨
- 변수 tailnum은 테이블 planes의 기본키
- 외래키(foreign key) : 다른 테이블의 기본키를 참조하는 키
- 외래키는 중복되거나 NA값이 존재해도 됨
- 변수 tailnum은 테이블 flights의 외래키
1. 뮤테이팅 조인 (Mutating Join)
inner_join(x, y, by) | 내부 조인 | 두 테이블의 키값이 같으면 매칭 |
left_join(x, y, by) | 왼쪽 외부 조인 | 왼쪽 테이블의 키를 중심으로 매칭 |
right_join(x, y, by) | 오른쪽 외부 조인 | 오른쪽 테이블의 키를 중심으로 매칭 |
full_join(x, y, by) | 전체 외부 조인 | 두 테이블의 모든 키를 중심으로 매칭 |
- base::merge( )를 이용해 뮤테이팅 조인 수행 가능
- 키 값이 중복된 경우 중복된 키의 가능한 모든 조합인 데카르트곱에서 조건 확인
- 조인의 파라미터 by로 어떤 변수(들)로 조인할지 정할 수 있다.
- by = c("a"=b")를 통해 테이블 x의 a변수와 테이블 y의 b변수를 매칭
- by = join_by함수를 사용해 non-equi join 수행할 수 있음
2. 필터링 조인 (Filtering Join)
semi_join(x, y, by) | 세미조인 | y와 매칭되는 x의 모든 관측값을 보존 |
anti_join(x, y, by) | 안티조인 | y와 매칭되는 x의 모든 관측값을 삭제 |
- 세미조인 : 필터링된 요약 테이블을 기존 테이블 어떤 행에서 출력되었는지 확인
- 안티조인 : 조인 불일치를 진단하는데 유용
3. 집합 연산
intersect(x, y) | x, y 모두에 있는 관측값만 반환 |
union(x, y) | x와 y의 고유한 관측값을 반환 |
setdiff(x, y) | x에 있지만 y에 없는 관측값만을 반환 |
'Data Science > Manipulation' 카테고리의 다른 글
[Data Science With R] 10. 범주형 데이터 조작 with forcats (202406) (0) | 2023.04.08 |
---|---|
[Data Science With R] 9. 정규표현식(Regular Expression) with Stringr (202406) (0) | 2023.04.04 |
[Data Science With R] 7. 데이터 변형 with tidyr (202405) (1) | 2023.04.01 |
[Data Science With R] 6. 파싱(Parsing) (202405) (0) | 2023.03.31 |
[Data Science With R] 5. readr로 파일 읽기 (202503) (0) | 2023.03.31 |