2019년 10월 13일 일요일

데이터 멍잉(data munging)

'데이터 멍잉(data munging)'이라는 말을 들어 보았는가? 내가 웹에서 이 낱말을 본 것은 불과 며칠 되지 않았다. 처음에는 오타인줄 알았다. 어디서 개가 짖나? 멍멍, 멍잉...

한빛미디어에서 출간한 전희원 저 [R로 하는 데이터 시각화] 52쪽에는 이렇게 설명을 했다고 한다.
멍잉(munging)은 전처리, 파싱, 필터링과 같이 데이터를 이리저리 핸들링한다는 뜻이다..사실 이 단어는 컴퓨터로 데이터를 처리하는 사람들 사이에서 많이 쓰이는 따끈따끈한 신조어이다.
데이터 멍잉은 데이터 랭글링(data wrangling)과 같은 뜻이라 한다. 그런데 이 신조어의 발음이 과연 '멍잉'이 맞을까? 구글에서 발음을 검색해 보면 '먼깅', '먼징' 등 일정하지가 않다. 신뢰도가 높아 보이는 웹 영어사전(Cambridge Dictionary)에서 munging이라는 표제어를 찾아보니 '멍잉'으로 발음한다. 의미는 the process of changing data into another format (=arrangement) so that it can be used or processed라고 하였다. munging이 현재 진행형이라면 원형은 mung이 되어야 한다. 그러나 같은 사전에 mung이라는 표제어는 없다. Merriam-Webster 사전에도 mung 혹은 munging은 올라와 있지 않으니 어지간히 최근에 생겨난 신조어임에 틀림이 없다. 다음 사전에서 mung은 '(미 속어) [프로그램 등을] 개조하다, 대폭 변경하다. 망가뜨리다'로 풀이하였다. 데이터 멍잉은 일부러 일을 망치려고 하는 것은 아닌데 말이다. 어쨌든 데이터 멍잉은 데이터 파싱(parsing, 구문 분석) 또는 데이터 프리프로세싱(preprocessing)과는 약간 다른 의미를 갖는다.

지난주에는 일주일이 넘게 계산을 했던 local InterProScan 결과물을 R로 분석하여 그래프를 그리는 일을 했었다. TSV 파일이 만들어지기는 하지만 컬럼의 수가 각 줄에 대하여 똑같지를 않아서 R의 read.table() 함수를 처음부터 쓸 수는 없었다. 대신 awk와 wc 등의 명령을 적절히 사용하여 텍스트 파일로 전환하는 일을 먼저 진행했는데, 바로 이것이 데이터 멍잉에 해당하는 일이 되겠다.

O'Reilly에서 출간한 Paul Teener의 [R Cookbook] 72쪽을 보면 이런 내용이 나온다.
R is not a great tool for preprocessing data files, however. The authors of S assumed you would perform that munging with some other tool: perl, awk, sed, cut, paste, whatever floats your boats. Why should you they duplicate that capability? ... Let R do what R does best.
나도 이 글에 100% 동의한다.

'data wrangling R'로 구글에서 검색을 해 보면 꽤 많은 유튜브 동영상이 나온다. 몇 개를 골라서 공부해 보는 것도 좋을 것이다. R Studio Inc.의 Garrett Grolemund가 만든 다음 4개의 연속 동영상에서 시작해 보겠다. Garret은 R for Data Science 및 R Markdown의 공저자이며, 해들리 위컴이 그의 박사과정 지도교수였다고 한다!

Pt. 1: What is data wrangling? Intro, motivation, outline, setup(여기에서는 munging을 분명히 '먼징'으로 발음하였다)


Pt. 2: Tidy data and tidyr


Pt. 3: Data manipulation tools: `dplyr`


Pt. 4: Working with two datasets: b ind, set operations, and joins


댓글 1개:

Anneli Jäätteenmäki :
블로그 관리자가 댓글을 삭제했습니다.