빅데이터7일차 - 데이터 병합

2020. 7. 28. 13:06·데이터과학/R
728x90

데이터 병합

  • x와 u는 name을 공통 열로 갖고 있어서 name을 중심으로 두 파일을 병합한다.
  • 두 개의 데이터프레임 x와 y를 name을 기준으로 병합하기 위해 merge()함수를 사용한다.
  • 병합의 기준이 되는 열의 값이 일치되지 않는 경우에도 출력이 가능하다.
  • all.x = T : 첫 번재 데이터셋의 행들은 일단 모두 출력하고, 이 행들과 대응되는 행이 두 번째 데이터셋에 있으면 병합해서 출력하고, 없으면 NA로 출력
  • all.y = T : 두 번째 데이터셋의 행들은 일단 모두 출력하고, 이 행들과 대응되는 행이 첫 번재 데이터셋에 있으면 병합해서 출력하고, 없으면 NA로 출력
# 데이터 병합
x <- data.frame(name=c("a","b","c"),math=c(90,80,100))
y <- data.frame(name=c("a","b","d"), korean=c(75,60,90))
x
y

x_y <- merge(x,y,by=c("name")) # name 중심 x와 y 를 x_y에 저장'
x_y
merge(x,y, all.x=T) # 첫 번째 데이터셋의 행들은 모두 표시되도록
merge(x,y, all.y=T) # 두 번째 데이터셋의 행들은 모두 표시되도록
merge(x,y, all=T) # 두 데이터셋의 모든 행들이 표시되로록

 

 

[그림1] x,y 데이터 프레임 생성

 

[그림2] x와 y 데이터 x_y에 병합
[그림3] 첫 번째 데이터셋의 행 모두 출력
[그림4] 두 번째 데이터셋 행 모두 출력
[그림5] 두 데이터셋 모든 행 출력

 

병합의 기준이 되는 열의 이름이 서로 다른 경우 병합하는 방법

# 병합의 기준이 되는 열의 이름이 서로 다른 경우 병합하는 방법 
x <- data.frame(name=c("a","b","c"),math=c(90,70,100))
y <- data.frame(sname=c("a","b","c"),korean=c(75,60,90))
x
y
merge(x,y,by.x=c("name"),by.y=c("sname"))

 

 

[그림6] 병합 기준 열의 이름이 서로 다른 경우

 

출처 : 모두를 위한 R 데이터 분석 입문 한빛아카데미

728x90
저작자표시 비영리 변경금지 (새창열림)
'데이터과학/R' 카테고리의 다른 글
  • 빅데이터 8일차 - 주행속도와 제동거리 사이의 회귀모델 구하기, 실제 제동거리, 예상 제동거리, 오차 구하기
  • 빅데이터 8일차 - 회귀분석 관련 용어,회귀의 어원, 단순선형 회귀분석
  • 빅데이터 7일차 - 데이터 집계
  • 빅데이터 7일차 - set.seed(), 데이터 조합
포장빵
포장빵
IT공부 및 프로그래밍
  • 포장빵
    포장빵의 IT
    포장빵
  • 전체
    오늘
    어제
    • AI 학습 노트 (113)
      • 기초 수학 (4)
        • 선형대수 (0)
        • 확률통계 (4)
        • 미적분 (0)
        • 최적화 이론 (0)
      • AI & 딥러닝 (1)
        • 이론 (0)
        • 컴퓨터 비전 (0)
        • 자연어 처리 (0)
        • 생성AI (0)
        • 강화학습 (0)
      • 데이터과학 (70)
        • R (47)
        • ADSP (21)
      • 연구 & 자료 (15)
        • 논문 (6)
        • 수료증 (3)
      • 프로그래밍 & 개발 환경 (22)
        • Python (22)
        • 개발도구 (0)
        • 알고리즘 (0)
      • 면접 자료 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      R 원 그래프 퍼센트
      주성분 분석(PCA)
      k-평균 군집
      R 원 그래프
      Python Regular Expression Quick Guide
      통계량에 의한 자료 분석
      yolov9
      시퀀스형
      확률
      지수분포
      Coursera 1
      str lib
      논문
      CV
      python 주요 데이터 타입
      시계열 모형
      yolov10
      none타입
      매핑형(딕셔너리)
      자료의 종류
      Python 크롤링 기초
      stylegan2
      베르누이분포
      확률 분포
      Coursera Python Data Structures
      R 도수분포표
      k-means clustering
      다차원 척보법
      상관분석
      단순선형 회귀분석
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    포장빵
    빅데이터7일차 - 데이터 병합
    상단으로

    티스토리툴바