데이터 이야기/EXCEL

[데이터분석 - Excel] #3. 데이터 전처리 (1) 함수 편

sssoing-k 2022. 9. 15. 17:28
Garbage in, garbage out.

 

강의에서 만난 강사님들 중 3분중에서 2분은 말씀하신 문구다.

그만큼 데이터 분석 과정에서 [데이터 전처리] 작업이 중요하고

가장 많은 시간과 비용이 필요하다.

 

'데이터 전처리' 란?

데이터의 분석 목적과 방법에 맞게 데이터를 가공 또는 처리하는 과정을 말한다.

  • 데이터 및 변수 형태 변환
  • 변수 선정
  • 결측치 및 이상치처리
  • 데이터 분류
  • 데이터 분리 혹은 결합
  • 기타 데이터 가공 및 처리

주로 함수를 사용해서 데이터 전처리를 진행하게 되는데,

기본 함수는 아래와 같다

 

=TODAY() : 오늘 날짜

=SUM(C5:C12) : C5에서 C12까지의 숫자 합

=AVERAGE(C5:C12) : C5에서 C12까지의 숫자의 평균

 

이번 강의에서는 데이터 전처리에 주로 사용하는 함수들에 대해 공부했다.

 

1. COUNT 함수

: 특정 범위에서 '숫자 데이터'가 들어가 있는 셀의 개수를 파악하는 함수다.

번외) 비어 있는 셀의 개수 파악은 =COUNTBLANK()를 사용한다.

 

COUNT함수에서 파생되는 유용한 함수들이 있다.

 

(1) COUNTIF

: 특정 범위에서 하나의 조건을 만족하는 셀의 개수를 파악하는 함수

ex) =COUNTIF(C5:C12, ">=5")

: C5:C12 셀 사이에 숫자 5 이상의 숫자가 있는 셀의 개수를 파악한다.

 

Q1. 꼭 따옴표("")가 필요한가?

: 일반적으로 함수 안에서 부등식을 사용할 때 따옴표를 붙이진 않지만,

함수의 '조건;으로 사용할 때에는 붙인다고 한다.

> 일일히 외우기 어려우니 에러를 파악해 놓는 것도 하나의 팁팁팁-!

 

Q2. 숫자 데이터의 개수만 파악할 수 있나? 문자는?

: 동일하게 문자 데이터도 따옴표를 활용하여 개수를 파악할 수 있다.

ex) =COUNTIF(C5:C12, "A")

: C5:C12 셀 사이에 문자 A가 있는 셀의 개수를 파악한다.

 

(2) COUNTIFS

: 특정 범위에서 2개 이상의 조건을 만족하는 셀의 개수를 파악하는 함수

ex) =COUNTIF(C5:C12, ">=5", C5:C12, "<8")

: C5:C12 사이에 숫자 5 이상, 8 미만의 숫자(5,6,7)가 있는 셀의 개수를 파악한다.

조건이 붙을 때마다 쉼표(,)로 구분하는 것이 특징

 

**COUNTIFS 함수는 조건이 1개일 때도, 2개 이상일 때도 사용가능하다.

따라서 COUNTIFS 함수로 사용하는 것이 편리하겠쥬?

 

 

2. VLOOKUP 함수

Vertical : 공통 기준(열)을 중심으로

Lookup : 데이터를 찾아오다

 

들어는 보았는가..나는 처음 알게된 함수다 ^^ 헷

수천 수만개의 데이터에서 내가 원하는 데이터를 불러올 수 있는 함수로

데이터 분석에서 자주 등장하는 함수이니 필수 메모메모!

 

사용법은 다음과 같다.

*데이터 분석 상황

이름과 사번을 알고 있는데, 담당업무/직급 등의 직원 정보를 찾고 싶을 때,

 

- lookup_value : 기준 데이터 = 사번 - 혼합참조 (열만 Lock) $D5

- table_array : 직원 정보 데이터 = 불러올 데이터의 범위(공통기준) - 절대 참조 $D:$J

- col_index_num: 불러올 데이터의 열번호 = 공통 기준열의 첫번째 열이 1번으로 기준

- [range_lookup] : 0 = 정확히 일치 / 1 = 근사치 **생략 가능

 

Q3. 열 데이터가 수천개, 수만개 일때에 불러올 데이터 열번호를 일일히 셀 순 없지 않을까?

: 맞다. 빅데이터 관점에서 VLOOKUP 조건식인 col_index_num은

=MATCH 함수를 대입하는 것이 편리하다.

 

VLOOKUP 심화 활용:  =MATCH 함수

: 내가 찾고 싶은 값이 한 행/열에서 몇 번째에 있는지를 숫자로 알려주는 함수

**결과가 반드시 숫자이다(몇 번째 인가)

 

3. INDEX 함수

: 특정 범위에서 행번호과 열번호로 원하는 데이터를 불러오는 함수

ex) 전사 매출에서 2월의 총 매출액 - 2월(행) / 총매출액(열)

 

 

4. SUMIF(S) 함수

: 특정 조건을 만족하는 데이터의 합계를 계산하는 함수

 

ex) 전체 내역에서 식비의 합계 / 2030년의 매출액의 합계

(더할 조건의 범위, 조건, 더할 값들의 범위)

조건이 1개일 때에는 SUMIF 함수를

조건이 2개 이상일 때는 SUMIFS 함수를 사용하지만,

COUNTIFS 함수와 동일하게 SUMIFS도 조건 1개 일때에도 사용 가능하니

SUMIFS로 생활화하자. 복수문구 짱

 

 

5. FIND 함수

원하는 텍스트의 위치를 알고 싶을 때 사용하는 함수

긴 텍스트에서 특정 단어나 문장이 시작하는 위치를 숫자로 출력

ex) 리뷰 데이터에서 특정 단어가 포함되어 있는지 파악하거나 특정 리뷰를 보고 싶을 때 활용

 

ㅎㅎㅎ역시 이론은 머리만 이해하고

습득을 위해서는 실습이 필요한 것 같다.

이론 공부 후에 강의에서 실습한 내용들도 모두 기록할 예정-!

 

데이터 전처리 다음편은 [기능]에 대한 내용으로...

아일비붹