Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

[week4] Cleaning data with openrefine2

931 views

Published on

Cleaning data with OpenRefine
https://www.facebook.com/datadesigner2015

Published in: Data & Analytics
  • Be the first to comment

[week4] Cleaning data with openrefine2

  1. 1. 꿈꾸는 데이터 디자이너 Week4 OpenRefine
  2. 2. OpenRefine Facebook Group에서 sample_data.zip를 다운로드 받아주세요
  3. 3. OpenRefine 1 OpenRefine for Beginner •Moving columns around •Renaming and removing columns •Using the project history •Sorting Data •Transposing rows and columns
  4. 4. OpenRefine •Moving columns around •Renaming and removing columns •Using the project history •Sorting Data •Transposing rows and columns
  5. 5. OpenRefine •Move column to beginning •Move column to end •Move column to left •Move column to right
  6. 6. OpenRefine •Moving columns •Move columns to beginning, end, left, right로 구성 •Column의 자리를 교체하기 위한 기능. Drag&Drop으로는 X
  7. 7. OpenRefine •Moving columns Function Content Move column to beginning 해당 Column을 가장 왼쪽 첫번째 열로 이동 Move column to end 해당 Column을 가장 오른쪽 마지막 열로 이동 Move column to left 현재 열의 왼쪽으로 이동 Move column to right 현재 열의 오른쪽으로 이동
  8. 8. OpenRefine •Moving columns around •Renaming and removing columns •Using the project history •Sorting Data •Transposing rows and columns
  9. 9. OpenRefine •Rename this column •Remove this column
  10. 10. OpenRefine •Rename this column •Edit column - Rename this column •Column의 이름을 변경하기 위한 기능
  11. 11. OpenRefine •Rename this column •원하는 칼럼명을 써주고 ‘확인’ •확인 후, 변경된 것을 확인할 수 있음
  12. 12. OpenRefine •Remove this column •Edit column - Remove this column •해당 Column을 제거하기 위한 기능
  13. 13. OpenRefine •Remove this column •해당 column이 제거된 것을 확인 •Undo를 통해 다시 복귀할 수 있음
  14. 14. OpenRefine •Moving columns around •Renaming and removing columns •Using the project history •Sorting Data •Transposing rows and columns
  15. 15. OpenRefine •Using the history project •작업의 과정을 Undo / Redo를 통해서 확인 •실수한 작업과정을 되살릴 수 있다는 장점을 history로 확인 •해당 과정을 선택하면 돌아가거나 다시 복귀가 가능
  16. 16. OpenRefine •Using the history project •Extract Operation History 메뉴 •작업과정을 JSON파일 포맷으로 추출해서 관리 및 향후 사용 가능 •특정한 작업 과정만 선택해서 관리 가능
  17. 17. OpenRefine •Moving columns around •Renaming and removing columns •Using the project history •Sorting Data •Transposing rows and columns
  18. 18. OpenRefine •Sorting Data •Excel의 필터링 기능과 동일 •Sort cell value as 및 Position blanks and errors 선택 가능 •해당 sorting cell마다 순서배열이 다름
  19. 19. OpenRefine •Sorting Data •text, numbers, dates, booleans로 해당 column의 성격 정의 •유효한 값, 오류, 공백 등을 어떤 순서로 나열할 것인지 결정 (Drag & Drop) •목적에 맞는 sorting 성격을 정의한 후, 확인
  20. 20. OpenRefine Function Sorting content text a - z 알파벳 a부터 정렬 z - a 알파벳 z부터 역정렬 numbers smallest first 내림차순 정렬 largest first 오름차순 정렬 Dates earliest first 빠른 날짜 순으로 정렬 latest first 늦은 날짜 순으로 정렬 booleans false then true 참인 값부터 정렬 true then false 거짓인 값부터 정렬 •Sorting Data
  21. 21. OpenRefine •Moving columns around •Renaming and removing columns •Using the project history •Sorting Data •Transposing rows and columns
  22. 22. OpenRefine •Transposing rows and columns •row와 column의 순서(배열)를 바꿈 •Transpose cells across columns into rows •Transpose cells in rows into columns
  23. 23. OpenRefine •From Column, To Column에서 정리할 Columns 영역 선택 •Key column과 Value column에서 column 변수명 설정
  24. 24. OpenRefine •Serial Number 부터 birthplace까지의 열이 행으로 변환 •변환된 형식의 key, value값 확인할 수 있음 •birthprovince 이후로는 이젠 데이터 형식과 동일
  25. 25. 2 Clean & Manage data OpenRefine •Add column based on column •value.split(“”)[index] •value.substring(index) •value + “string” •value.trim().length()
  26. 26. OpenRefine •Add column based on column •value.split(“”)[index] •value.substring(index) •value + “string” •value.trim().length()
  27. 27. OpenRefine •Add columns based on column • 현재 column을 기반으로 새로운 column 추가 •완전히 새로운 데이터를 만드는 것이 아니라 기존의 데이터에서 변형하는 것
  28. 28. OpenRefine •New column name에서 새로운 column 이름 설정 •value[0,4] 입력 •value[index1, index2]는 index1=0부터 4번째 자리까지 추출한다는 의미 •1953-06의 경우 1이 index0부터 시작한다는 것에 유의
  29. 29. OpenRefine •Only Year라는 새로운 Column이 생성 •년도만 추출된 것을 확인할 수 있음
  30. 30. OpenRefine •Only Year라는 새로운 Column이 생성 •년도만 추출된 것을 확인할 수 있음
  31. 31. OpenRefine •Add column based on column •value.split(“”)[index] •value.substring(index) •value + “string” •value.trim().length()
  32. 32. OpenRefine •Value.split(“”)[index] •따음표 사이의 요소로 구분된 해당 index 단락만 추출 •충청북도 보은군 대북면 index0 index1 index2 •Edit cells - Transform
  33. 33. OpenRefine •Add column based on column •value.split(“”)[index] •value.substring(index) •value + “string” •value.trim().length()
  34. 34. OpenRefine •value.substring(“range”) •앞에서부터 해당 범위만큼 값 날리기 •충청북도 보은군 1 •value.substring(5)는 앞에서부터 5번째 글자까지(공백포함) 날림 •따라서 충청북도+띄어쓰기 삭제 2 3 4 5 •Edit cells - Transform
  35. 35. OpenRefine •Add column based on column •value.split(“”)[index] •value.substring(index) •value + “string” •value.trim().length()
  36. 36. OpenRefine •value + “string” •앞에서부터 해당 범위만큼 값 날리기
  37. 37. OpenRefine •Add column based on column •value.split(“”)[index] •value.substring(index) •value + “string” •value.trim().length()
  38. 38. OpenRefine •value.trim().length() •해당 값의 길이 구하기 •나중에 데이터를 가지고 함수값 사용할 때 종종 사용 •띄어쓰기도 포함
  39. 39. OpenRefine 3 Linking Datasets •Reconciling with Linked Data
  40. 40. OpenRefine •Reconcile •http://opencorporates.com/reconcile •두 가지 value를 조화시키는 것 •Reconcile - Start reconciling
  41. 41. OpenRefine •linking 하려고 하는 dataset or API 연결 1 2
  42. 42. OpenRefine •왼쪽 그림과 같이 column이 변화된 것을 확인
  43. 43. OpenRefine •Westminster 도시와 연관된 모든 정보가 연결 •주소, 가게, 학원 등과 같은 데이터가 연결
  44. 44. OpenRefine

×