R 기초문법 - 데이터 프레임 병합

2022. 10. 9. 17:55·기타
  • 데이터프레임 생성
DF2 = data.frame(
    A = c(1,2,3),
    B = c(4,5,6)
)

DF2
  A B
1 1 4
2 2 5
3 3 6
DF3 = data.frame(
  A = c(5,4,1),
  B = c(3,2,1)
)

DF3
  A B
1 5 3
2 4 2
3 1 1

  • 행 기준 병합 - rbind()
rbind(DF2,DF3)
  A B
1 1 4
2 2 5
3 3 6
4 5 3
5 4 2
6 1 1
  • 열 기준 병합 - cbind()
#데이터프레임 생성
DF4 = data.frame(
  A = c(1,2,3),
  B = c(4,5,6)
)

DF4
  A B
1 1 4
2 2 5
3 3 6
DF5 = data.frame(
  C = c(4,5,6),
  D = c(7,8,9)
)

DF5
  C D
1 4 7
2 5 8
3 6 9
cbind(DF4,DF5)
  A B C D
1 1 4 4 7
2 2 5 5 8
3 3 6 6 9
  • key 기준 병합 - merge()

DF6 = data.frame(
  Key = c("A","B","C","D","E"),
  A = c(1,2,3,4,5)
)

DF6
  Key A
1   A 1
2   B 2
3   C 3
4   D 4
5   E 5
DF7 = data.frame(
  Key = c("C","D","E","F","G"),
  B = c(4,1,2,3,4)
)

DF7
  Key B
1   C 4
2   D 1
3   E 2
4   F 3
5   G 4
# all = TRUE

DF8 = merge(DF6, DF7, by = "Key",
            all = TRUE)

DF8
  Key  A  B
1   A  1 NA
2   B  2 NA
3   C  3  4
4   D  4  1
5   E  5  2
6   F NA  3
7   G NA  4
# all.x = TRUE

DF9 = merge(DF6, DF7, by = "Key",
            all.x = TRUE)

DF9
  Key A  B
1   A 1 NA
2   B 2 NA
3   C 3  4
4   D 4  1
5   E 5  2
# all.y = TRUE

DF10 = merge(DF6, DF7, by = "Key",
            all.y = TRUE)

DF10
  Key  A B
1   C  3 4
2   D  4 1
3   E  5 2
4   F NA 3
5   G NA 4
  • key 변수 이름이 다른 경우
DF11 = data.frame(
  Key.x = c("A","B","C","D","E"),
  A = c(1,2,3,4,5)
)

DF11
  Key.x A
1     A 1
2     B 2
3     C 3
4     D 4
5     E 5
DF12 = data.frame(
  Key.y = c("C","D","E","F","G"),
  B = c(4,1,2,3,4)
)

DF13 = merge(DF11, DF12,
             by.x = "Key.x", by.y = "Key.y")

DF13
  Key.x A B
1     C 3 4
2     D 4 1
3     E 5 2
반응형
저작자표시 비영리 변경금지 (새창열림)

'기타' 카테고리의 다른 글

[Python] 문자열 특징 - 인덱싱, 슬라이싱  (0) 2023.01.17
[R] 리스트, 데이터프레임 (list,Data Frames)  (0) 2022.10.09
[R] 데이터 프레임 생성 및 인덱싱  (0) 2022.10.09
[R] 행렬의 연산  (0) 2022.10.08
[R] 행렬  (0) 2022.10.08
'기타' 카테고리의 다른 글
  • [Python] 문자열 특징 - 인덱싱, 슬라이싱
  • [R] 리스트, 데이터프레임 (list,Data Frames)
  • [R] 데이터 프레임 생성 및 인덱싱
  • [R] 행렬의 연산
생각 기록실
생각 기록실
AI(LLM)와 서비스 기획을 공부하며 작성하는 기술 블로그입니다. (feat. 영화리뷰를 곁들인..)
    반응형
  • 생각 기록실
    이러쿵 저러쿵
    생각 기록실
  • 전체
    오늘
    어제
  • 링크

    • Github
    • LindeIn
    • 분류 전체보기 (115)
      • 이러쿵 저러쿵 (5)
      • 정보통계 (7)
        • 데이터마이닝 (2)
        • 금융공학 (4)
      • IT (26)
        • Python (10)
        • AWS (5)
        • Github (2)
        • Project (8)
      • 리뷰 (29)
        • 영화 (22)
        • 책 (7)
      • 기타 (48)
  • hELLO· Designed By정상우.v4.10.3
생각 기록실
R 기초문법 - 데이터 프레임 병합
상단으로

티스토리툴바