데이터 전처리란 Preprocessing이라 한다. 데이터를 분석함에 있어서 전제가 되어야 하는 사항은 데이터가 정확한 내용을 담고 있다는 것이다. 데이터의 정 확도는 서지정보를 제공하는 기관에서 얼마나 잘 정제된 데이터를 공급하는지 에 따라 데이터의 순도가 결정될 수 있다. 그러나 데이터 제공 기관 자체에서 어쩔 수 없는 이유로 하여 온전한 서지정보를 모으지 못하는 경우, 데이터를 다 운로드 받는 과정에서의 중복된 데이터, 다운로드 받은 데이터를 취합하는 과정 에서 발생하는 공백 등을 없애주는 작업을 통해 데이터의 순도를 올릴 수 있다.
이를 전처리라 하며 전처리에는 앞서 이야기한 공백제거와 같은 단순한 작업 뿐 아니라 중요도가 낮은 데이터를 걸러내는 등 데이터 자체의 크기를 적절히 축소하는 것 또한 포함한다. 따라서 다운로드 파일의 통합 작업, 불필요한 정보 를 제거하는 필터링 작업 그리고 데이터 정제 과정인 동의어 정리, 공백 제거,
데이터 축소를 수행하였다. 2010년 데이터 55,875건, 2009년 데이터 51,288건, 2008년 데이터 47,380건, 2007 년 데이터 41,467건, 2006년 데이터 36,526건, 2005년 데이터 31,992건, 2004년
데이터 26,418건, 2003년 데이터 21,411건, 2002년 데이터 17,763건, 2001년 데이 터 14,722건, 2000년 데이터 12,639건이다.
<그림 3-29> 다운로드 받은 정제되지 않은 raw data
각 파일은 연도별로 다운받아 각각의 파일에 모아두었다. 이렇게 데이터베이스를 통해 다운로드 받은 초기 데이터는 공백이나 정렬되지 않은 부분이 존재할 수 있 다. 또한 데이터의 통합과정에서 생긴 잡음도 존재할 수 있다. 이러한 부분을 없 애는 과정을 전처리 중 데이터 필터링 단계로 정의한다. 전처리 과정이 있어야 추 후 분석대상 데이터를 뽑아내는 과정에서 오류를 최대한 줄이고 데이터 분석을 수행할 수 있게 된다.
<그림 3-30> 전처리 대상 데이터
전처리 대상 데이터(로우 데이터)에서 볼 수 있듯이 비어있는 행과 열이 있음 을 쉽게 알 수 있다. 이렇게 비어있는 행과 열이 존재하는 경우 추후 데이터를 분석하는 과정에서 오류가 나거나 정확한 분석결과를 도출할 수 없는 경우가 생기게 되므로 미리 이러한 부분을 정제하는 전처리를 수행한다.
로우데이터 파일을 최초 실행하게 되면 전처리 대상 부분을 선택하여 불필요 한 부분의 경우 미리 없애야 한다. 첫 번째로는 데이터를 취합하는 과정에서 생 긴 비어있는 행으로써 제일 먼저 빈 행을 없애주는 것이 좋다. 두 번째로는 Web Of Science에서 제공하지 않는 범주의 데이터 행을 지워주는 것이 좋다.
세 번째로는 다운로드 받을 때 선택한 문서유형이 있음에도 불구하고 다른 문 서유형이 섞인 경우 이를 없애준다. 첫 번째, 두 번째의 경우 중복제거, 드래그 및 클릭을 통해 간단하게 전처리를 할 수 있다.
세 번째 전처리 과정에서는 엑셀의 기능 중 필터 기능을 이용하면 수월하게 전처리 작업을 할 수 있다. 문서유형을 나타내는 DT 부분의 필터를 걸고 분석 하고자 하는 문헌인 Article, Review, Proceeding Paper를 제외한 나머지 문서유 형만 나타나게 한 뒤 제거하게 되면 정확한 분석 대상 데이터만 남게 된다.
<그림 3-31> 문서 유형 전처리 결과
세 번째 전처리 단계를 마치게 되면 분석대상에 포함되지 않은 문서유형의 데 이터 행이 전체적으로 삭제되게 되는데 해당하는 데이터가 있던 자리가 빈 행 으로 즉 데이터 상에 공백이 발생하게 된다. 이러한 공백은 데이터의 크기를 크 게 만들거나 엑셀에서 다루기에 크고 작은 오류를 만들게 되어 분석 결과의 정
확도가 떨어질 수 있는 원인이 된다. 따라서 삭제작업을 수행한다.
<그림 3-32> 지워진 다른 문서유형으로 생긴 공백
WOS 데이터에서 빈 셀을 효과적으로 지우기 위해서는 빈 셀 지우는 방식 1 과 같이 우선 모든 데이터 범위를 선택해 준다. 이 경우 엑셀 시트의 좌측 상단 의 화살표를 누르면 간단하게 모든 데이터 범위를 선택할 수 있다.
<그림 3-33> 빈 셀 지우는 방식 1
모든 데이터가 선택되어있는 상태에서 엑셀의 중복제거 기능을 활용하면 빈 칸을 간단하게 지울 수 있다. 그러나 중복제거 기능을 이용하게 되는 경우 이와 같이 전체 데이터에서 빈칸을 제거할 목적으로 중복제거를 하는 경우는 두 가 지 경우의 중복제거가 일어나게 되는데 첫 번째로는 전체 행이 모두 공백인 경 우 해당하는 행의 데이터는 모두 동일 데이터로 인식되어 최초 1개 데이터를 제외하고 삭제가 된다. 두 번째로는 서로 다른 행에 입력된 데이터가 동일한 경 우로써 Web of Science에서 데이터를 다운로드 받는 당시에 번호를 잘못 입력 하거나 중복하여 입력한 경우에 중복 다운로드 된 데이터를 걸러내게 된다.
이러한 이유로 전체 데이터를 대상으로 하는 경우에만 공백제거를 위해 중복 제거를 한다.
<그림 3-34> 빈 셀 지우는 방식 2
빈 셀 지우는 방식 2에서 보는바와 같이 엑셀의 메뉴에서 데이터 항목에 들어 가고 중복된 항목제거 버튼을 누르면 중복되는 셀을 찾는 알림창이 뜨게 되는 데 모두 선택부분을 클릭하여 전체 데이터를 대상으로 한다. 이렇게 하면 중복 되지 않는 최초 발생된 공백을 제외한 나머지 공백이 모두 지워지게 된다.
빈 셀이 지워지게 되면 모두 몇 개의 빈 셀이 지워졌는지 빈 셀 지우는 방식 3과 같이 창이 나타난다. 이후 빈 셀 지우는 방식 4와 같이 최조 공백을 찾아
삭제(단축키[shift+ctrl+↓]를 눌러서 공백이 존재하는 행을 찾아낼 수 있다)하면 문서유형을 정제하는 과정에서 발생한 빈칸은 모두 삭제된 것이다.
<그림 3-35> 빈 셀 지우는 방식 3
<그림 3-36> 빈 셀 지우는 방식 4
<그림 3-37> 문서유형, 빈칸 제거 이후 데이터
<그림 3-38> 정제된 데이터 엑셀 파일
정제된 데이터 엑셀파일에는 최종적으로 분석하고자 하는 데이터만을 정제하 여 모아둔 것을 확인할 수 있다. 중간 중간 빈 셀이 존재하는 것은 저자가 제공 하지 않았거나, S에서 모으지 못한 데이터이므로 이러한 데이터는 사회 연결망 분석을 위해 사용할 수 없다. 데이터 색인은 저자 키워드(DE)이며 이러한 경우 데이터 공백이 없는 WOS분류 키워드(ID)를 이용한다. 이러한 데이터는 (DE)뿐 만 아니라 다른 부분에서도 발생할 수 있는데 이러한 경우 해당 셀을 채우거나 채울 수 없는 경우 삭제해야 한다. 또한 데이터 카테고리에 따라서 사회연결망 분석에 이용되지 않는 데이터 카테고리 열은 그대로 놔둬도 분석에 이용하지 않으면 상관없으나 데이터를 많이 차지하는 관계로 삭제하는 방법도 있다.
③ 데이터 입력 및 정제
y2000 <- read.csv("C:/Folder/2000.csv", header=F, stringsAsFactors=FALSE)
<표 3-5> 데이터 입력코드
데이터의 속성 이름을 header=F로 설정하여, 현재 공란이고 데이터의 첫째 행 이 데이터의 속성 이름인 상태이다. 첫째행을 데이터의 속성 이름으로 설정한 이후 첫째행을 제거해야 원래 의도했던 대로 데이터를 설정하게 된다.
colnames(y2000) <- y2000[1, ] y2000 <- y2000[-1,]
<표 3-6> 데이터 속성이름 붙이기 코드 1
<그림 3-39> 데이터 속성이름 완료 화면
저자 풀 네임과 같이 특정 논문의 공동저자 분석을 하게 되는 경우 저자 데이 터를 의미하는 F열의 하나의 셀에는 1명 이상의 저자가 기록되어있다. 그러므로 특정 논문에 함께 등장한 저자의 관계를 나타내기 위해서는 우선 하나의 셀에 함께 기록되어있는 저자를 1명씩 따로 나누는 과정이 필요한데 이 데이터 파싱 단계에서 그 역할을 할 수 있다. 데이터 파싱 코드는 y2000의 AF(저자 풀네임) 을 "; "을 기준으로 잘라내는 것으로써 로우데이터 상에 저자의 데이터가 “;”
를 기준으로 나누어져 있었기 때문에 이렇게 사용한다. 그러므로 저자 풀 네임 이 아닌 다른 데이터를 이용하고 분석을 하고자 하는 경우에 로우데이터를 보 고 데이터가 어떻게 나눠져 있는지 구성을 먼저 파악하여야 다른 분석에도 응 용할 수 있다.
예) 저자명1; 저자명2; 저자명3 [저자명1(주소1)], [저자명2(주소2)]
y2000.AF <- strsplit(y2000[,“AF”],"; ")
<표 3-7> 데이터 파싱 코드
<그림 3-40> 데이터 파싱 코드 입력 화면
데이터 파싱 이후에 상세히 살펴보면, 국가코드 같은 경우는 한국은 ‘South Korea’, 미국은 ‘주이름, USA’, 중국은 ‘성이름, 우편번호, Republic of China’ 등으로 표기되어 동의어 통일 과정이 필요하다. 미국은 모두 USA로 중 국은 모두 China로 변환해야 한다.
연구자 명과 같은 경우도 논문마다, 시기마다 같은 연구자가 다른 연구자로 표 기되는 경우가 있는데, 이에 대한 경우는 데이터 전처리 담당자가 식별해낼 수 없는 수준이기 때문에 인명사전 데이터를 추가적으로 확보하여 이 기준으로 동 일인을 정제하는 과정이 필요하다고 사료된다.
y2000.AF.index <- grep(“USA”, y2000.AF) y2000.AF[y2000.AF.index] <- “USA”
y2000.AF.index <- grep(“China”, y2000.AF) y2000.AF[y2000.AF.index] <- “China”
<표 3-8> 데이터 속성이름 붙이기 코드 2