데이터분석, 인공지능

[데이터분석] 구글 스프레드시트 활용하기 -1

RuBPCase 2022. 3. 3. 09:32
728x90

Intro

데이터 분석을 하기 위해서 ML이나 DL 등의 학습모델을 사용하는 것도 중요하지만, 일단 엑셀과 같은 스프레드시트를 활용해서 분석하는 과정도 중요하다.
다만, 엑셀은 유료이기 때문에, 여기선 무료로 웹에서 설치 없이 구동할 수 있는 구글 스프레드시트를 활용해서 간단한 데이터 탐색을 수행하려 한다.

주로 파이썬이나 R을 활용해서 수행하는 EDA의 기초 과정이라 보면 되겠다.

데이터셋 설명

여기서 다룰 데이터는 자동차 데이터 셋(mtcars)이 되겠다.
해당 사이트의 설명을 읽어보면 데이터 및 속성 정보 등이 나와 있다.

간단하게 정리해보면, 해당 데이터는 1974 Motor Trend 매거진에서 나온 데이터이며, 차종 및 여러가지 관련 정보들을 모아 놓은 자료라고 한다.
32개의 인스턴스(관측치)가 있고 12개의 속성이 있으며, 속성명은 다음과 같다.

  1. model (차 종)
  2. mpg (주행 연비로, 갤런 당 주행 마일을 의미)
  3. cyl (실린더 수)
  4. disp (리터 단위 배기량)
  5. hp (마력)
  6. drat (뒷 축 비; Rear axle ratio)
  7. wt (1000 파운드 단위로 환산한 무게)
  8. qsec (0.25마일을 가기 위해 걸리는 sec)
  9. vs (엔진 방식, V-shaped/straight)
  10. am (변속기 방식, 자동/수동)
  11. gear (기어의 개수)
  12. carb (카뷰레터의 수)

별도의 결측치는 존재하지 않는다.

참고로 결측치란 입력되지 않았거나 측정되지 않아서 값이 없는 경우를 의미한다.
보통은 공백이나 NULL, NA 등으로 표시된다.
(이건 시스템이나 언어, 데이터 수집 방식 등에 따라서 달라진다.)
(심한 경우는 0이 결측치로 자동 환산되는 경우도 있다;;)

구글 스프레드시트 켜기

먼저 구글 스프레드시트가 무엇인지 간단하게 알아보자.
구글이 제공하는 사무용 도구 혹은 플랫폼 중 하나로, 마이크로소프트 프로그램에 비유하자면, 워드는 문서, 엑셀은 스프레드시트, PPT는 프레젠테이션에 해당한다고 보면 되겠다.
구글 계정만 있으면 (드라이브 용량 한도 내에) 자유롭게 쓸 수 있으며, 심지어 여러 사람이 동시에 편집하는 것도 가능하다.
따라서 조별과제 할 때 문서 편집 및 PPT 작성으로도 자주 쓰고 있다.

먼저 구글에 로그인해서 우측 상단의 3 * 3 그리드 아이콘을 누르면 위와 같은 창이 뜬다.
여기에서 초록색 아이콘 스프레드시트를 눌러주자.

그러면 위와 같은 화면으로 넘어가게 된다.
기존에 써본 적이 없는 사람은 아래에 어떤 파일도 안 뜰 것이다.
아무튼, 우리는 새 시트에다가 작업을 할 것 이므로, '내용 없음'을 클릭하자.

그러면 위와 같이 '제목 없는 스프레드시트'가 나온다.
해당 제목을 클릭해서 원하는 제목으로 바꿔줄 수 있으니 참고하자.

데이터 불러오기

본격적으로 스프레드시트에다가 데이터를 불러와보도록 하자.
단순히 복붙하는 방식도 있겠지만, 여기선 csv 파일을 불러오는 방식으로 진행할 것이다.

아까 맨 처음에 있었던 Raw data 링크를 먼저 확인해주자.
링크 - https://gist.githubusercontent.com/seankross/a412dfbd88b3db70b74b/raw/5f23f993cd87c283ce766e7ac6b329ee7cc2e1d1/mtcars.csv

이후 스프레드시트의 가장 첫 칸을 더블클릭하고 다음의 명령어를 입력해주자.

=importdata("링크")

이때, 링크라고 되어있는 문구 대신에 아까 Raw data 링크를 붙여넣어주자.
참고로 절대로 쌍따옴표 생략해선 안된다.
오류난다.

앞선 과정을 거친 형태는 위와 같이 될 것이며, 이후 엔터를 눌러주면 자동으로 데이터가 불러와진다.

이렇게 데이터가 정상적으로 import 되었으면 성공한 것이다.

참고로 importdata말고 로컬에서 파일을 불러오는 방식, 웹 사이트에서 파일을 불러오는 방식 등이 있는데, 여기선 생략하겠다.

정렬 및 조건부 서식 활용하기

이제 주어진 데이터를 정렬하고 간단하게 크기를 파악하는 과정을 해보려 한다.

먼저 위 그림과 같이 A열 항목에서 우클릭한 다음 나오는 '왼쪽에 열 1개 삽입' 을 눌러주자.
열을 삽입하는 이유는, 데이터 순서 보존을 위해 index를 만들어 줄 생각이기 때문이다.

이후 위 그림과 같이 빈칸의 맨 첫 줄에다가 index라고 입력하고, 그 아래에 숫자 1을 넣어주자.
그 다음으로 숫자 1이 들어간 칸을 클릭하고 위 그림에 강조해놓은 파란 사각형위에 커서를 올려주자.
키보드 ctrl키를 누른 상태에서 원하는 칸 까지 드래그해주면 숫자가 자동으로 채워진다.

그냥 숫자를 드래그하면 아마 1 1 1 1 ...로만 채워질 것이다.
이때, Ctrl키를 누르면서 드래그하면 숫자가 1씩 증가하면서 채워지게 된다.
위 움짤과 같이 숫자가 채워지는 것을 확인할 수 있다.

이제 필터를 적용해서 원하는 column을 기준으로 정렬을 해보도록 하자.

위와 같이 먼저 맨 첫 번째 가로줄(혹은 행)을 모두 선택하고 필터 만들기 아이콘을 클릭하자.
그러면 맨 첫 번째 줄의 모양이 조금 바뀐 것을 확인할 수 있다.
해당 줄이 조금 굵은 글씨가 되었으며, 각 칸 마다 옆에 이상한 깔때기(?)가 생긴 것을 확인할 수 있다.

위 그림과 같이 정렬을 하려는 기준 열에 있는 깔때기 아이콘을 클릭하자.
그리고 정렬, A->Z 혹은 Z->A를 눌러주면 해당 데이터를 기준으로 자료가 정리되는 것을 알 수 있다.
참고로 저기에서 A->Z는 오름차순에 해당되고, Z->A는 내림차순에 해당된다.

이번엔 조건부 서식을 적용해보도록 하자.
여기서 기준 열 'drat'을 기준으로 서식을 만들어 볼 것이다.

위 그림과 같이 먼저 'G열'에 해당하는 부분을 눌러주자. (열 전체를 선택)
이후 상단 탭에서 서식에 들어간 다음 조건부 서식을 눌러주면 된다.

정상적으로 위 과정을 거치면 해당 열 전체가 색칠되는 심심한 모습을 볼 것이다.
그러나 우리는 수치에 따라서 색상이 다르게 나오도록 설정할 생각이다.

따라서 위 그림과 같이 우측 탭에서 색상 스케일버튼을 눌러서 수치에 따라 색이 바뀌도록 설정하자.
그러면 위와 같은 모습으로 바뀔 것이다.
여기선 값이 클수록 연해지는 것을 알 수 있다.
그 반대로 색상을 뒤집거나 색을 바꾸려면 아래에 있는 형식 규칙 항목을 이것저것 건드리면 된다.

차트 그리기

이번엔 위 데이터를 활용해서 간단한 차트 or 그래프를 그려볼 생각이다.
hp 열과 wt 열을 활용해서 도식을 그려보도록 하겠다.

먼저 'F행'을 누른 다음 Ctrl키를 누르면서 'H행'을 같이 선택해주자.
이후 상단 탭의 삽입을 누른 다음 차트를 눌러보자.

그러면 위와 같은 뭔가 이상한 도식이 등장하게 된다.
위 형태로는 데이터 관계를 파악하기 힘드므로, 그래프 개형을 바꿔보도록 하자.

위 그림에 나와있는 차트 편집기를 이용해서 차트 개형이나 디자인 등을 바꿀 수 있다.
우리는 hp와 wt의 관계를 알고 싶으므로, 분산형 차트를 활용할 생각이다.

위 사진처럼 차트 유형은 분산형으로, X축에는 hp를, 계열에는 wt를 남겨놓으면 좌측의 그래프가 만들어진다.
가로 축은 hp에 해당되며, 세로 축은 wt에 해당한다.
위 형태를 통해 hp와 wt간에 특정 변수의 값이 클수록 다른 변수의 값도 커진다고 짐작할 수 있겠다.
통계학적으로는 양의 상관관계를 지닌다라고 하나, 상세한 의미는 생략하자.

조금 더 쉬운 이해를 위해 위와 같이 그래프를 조정하고 추세선도 추가로 넣었다.
맞춤설정 탭의 속성들을 조정해서 위와 같이 그래프 개형을 조정할 수 있다.
필요에 따라선 제목이나 축의 이름 변경도 할 수 있다.

마무리

지금까지 스프레드시트를 활용해서 간단하게 데이터를 정리하고 차트도 그려보는 작업을 수행했다.
사실 이 과정은 엑셀을 자주 사용하는 사람들이라면 굳이 볼 필요없이 넘어가도 되는 파트이긴 하다.
하지만, 아예 처음 접하는 사람들을 위해서 이렇게 정보를 기술하게 되었다.

다음 챕터에선 앞선 데이터를 활용해서 몇 가지 함수를 적용해보고, Pivot Table(피벗 테이블)을 추가로 생성할 생각이다.
사실 이런 스프레드시트에서 활용하는 함수가 너무 많아서 모두 다 소개하긴 힘들고, 기억나는 거 몇 가지만 활용해 볼 생각이다.

728x90