200812 DB분석 실무 과정 1일차

2020. 8. 12. 17:15포트폴리오/자격증

이번에도 방학 때 학교에서 하는 특강을 듣게 되었다. 

8/12-13일 10:00~18:00

8/14일 10:00~12:00

 

가자마자 새로운 책도 받고, 학교 교직원 식당 식권이랑 11호관 커피에서 4천원까지 사용할 수 있다고 하셨다. 

무료로 이걸 해준다니!

언니한테 얘기하니까, 학교 등록금 안아깝네 라고 했다 .ㅋㅋ

 

 

<수업 내용 정리>

월 마트
장바구니 분석 => 마트에서 누가 뭘 샀는지 데이터화
기저귀 - 맥주 관련이 있음

위치정보
- 서울 심야버스 노선 만드는데 사용
- 사람들의 이동 경로를 파악 (GPS)
(처음)GPS가 많은 곳끼리 연결=> 실패 => 빅데이터 사용해서 이동경로를 파악

2. 데이터의 변화
DATA: 가공하지 않은 순수한 값
정보: 유의미하게 가공된 2차데이터
지식: 이용할 수 있는 가치있는 정보
지혜: 해결방안을 제시할 수 있는 지식

EX) 휴대폰 가게
A: 100만원에 판매
B: 150만원에 판매
=> 판매 금액 자체가 DATA
=> 정보: 'A가 싸게 판다' 
=> 지식: 'A에서 사야지'
=> 지혜: 특정 종 하나를 싸게 파는중=> 다른 기종도 A가 더 싸게 팔겟지?

3. DATA SCIENTIST (DB분석 전문가) 역할
- 많은 양의 비정형 데이터(숫자가 아닌 데이터)를 수집하여 보다 유용한 형식으로 변환한다.
....

1. R 프로그래밍 
- 비용이 무료!!인 데이터 분석 프로그램 (가장 큰 장점)
- 오픈소스 프로그램
- 파이썬같은 인터프리터 방식
- 불안정해서 오류가 많이남 => 몇가지 설정 필요
p.54 1. 줄바꿈 옵션 지정: tools-> group options-> code-> soft-wrap 체크


p.45 2. 워킹 디렉터리(working directory): 작업공간 설정 (껐다 킬때마다 재설정 필요)
    => 폴더 하나를 생성하여 지정하고, more-> set as working directory

      3. 환경변수 설정



!!! R 과 R studio 프로그램 설치하기 
개별 코드 실행: 마우스 커서를 위치시킨 후, Ctrl+Enter
전체 코드 실행: Ctrl+Shift+Enter

 

* 파일창 구성요소 (시험)


P. 46 프로젝트 만들기 

- 한글을 쓰면 오류가 나는 경우가 많음 (사용자 이름도 웬만하면 영어로 하는게 좋음)

 

p.58 3장. 데이터분석을 위한 연장 챙기기

03-1 '변수' 이해하기

<-, = : 할당연산자

ex) 변수할당하기

    a<-1

    2->b

    c=3

    d<-3.5 

아무거나 써도 상관없지만, 통일시켜주는건 중요!

*변수명 생성규칙

- 문자,숫자,대시(-),언더바(_)를 조합해 정할 수 있다.

- 문자로 시작해야한다.

- 한글로 해도 되지만, 영어를 권장한다.

- 대소문자를 구분, 모든 변수를 소문자로 만드는게 좋다.

 

* 여러값으로 구성된 변수 만들기

- 함수 c(), seq() 사용 

- 여러값으로 구성된 변수도 사칙연산이 가능하다.

* 서로다른 길이 변수의 연산

var1 길이 5

var2 길이 4

=> var1+var2 (var2의 5번째 변수는 1번째 변수를 다시 가져옴)

 

* 변수에 문자를 저장

" " 를 써줘야함! 

str2<-a 를 쓰면 a변수에 있는 값을 다시 str2에 넣어줌

-> 문자열도 여러개 변수저장 가능

03-2 '함수' 이해하기

평균 구하는 함수: mean()

최댓값: max()

최소값: min()

paste(): 여러문자를 합쳐 하나로 만드는 함수

-collapse: 구분자 설정

* 함수의 결과 값도 변수에 저장할 수 있다.

- x값이 바뀐다고, 저장해 둔 x_mean이 자동으로 바뀌지 않는다.

03-3 함수의 꾸러미, '패키지' 이해하기

* 패키지(package)

- 함수가 여러 개 들어 있는 꾸러미

- 하나의 패키지 안에 다양한 함수가 들어있음

- 함수를 사용하려면 패키지 설치 먼저 해야함

 

ex) ggplot2 패키지 설치하기

- 패키지 설치하기(한번만 설치하면 됨)=> 패키지 로드하기=> 함수 사용하기

  install.packages("ggplot2")=> library(ggplot2)

-함수 사용하기 qplot()

=> 개수 체크하는데 사용할 수 있는 함수

정형-> 숫자 ->이산형: 소수점X, 셀 수O, 비율(%)로 표시 가능

                ->연속형: 소수점O, 측정도구O, 평균, 표준편차

비정형-> 문자

 

*ggplot2에 들어있는 mpg데이터 사용하여 그래프 그리기

qplot()의 data파라미터에 mpg데이터 지정, x축 파라미터에 hwy값을 지정

'고속도로 연비별 빈도 막대 그래프'

- hwy: 고속도로에서 1갤런에 몇 마일을 가는지 나타낸 변수

고속도로 연비=> 연속형변수

qplot(): 이산형 변수를 그래프 그리는 함수

연속형 변수를 이상형 변수로 바꿔서 표현

 

구동방식에 따른 연비별그래프

qplot(data=mpg, x=drv, y=hwy)

- drv : 구동방식

- hwy: 연비(고속도로에서 1갤런에 몇 마일을 가는지)

- 속성: geom="line"/"boxplot" (선그래프 형태/ 상자 그림형태)

boxplot에서 박스 밖에 점으로 표시되는 값 = 이상치(outliner)

  colour= drv (drv별 색상 표현)

 

4장. 데이터 프레임

04-1. 데이터 프레임 이해하기

- 가장 많이 사용하는 데이터 형태, 행과 열로 구성된 표 

- 열(속성): 컬럼(Column), 변수(Variable)

- 행(데이터): Row, Case

04-2. 시험성적 데이터를 만들어 보자!

english <-c(90,80,60,70)
math <-c(50,60,100,20)

df_midterm <- data.frame(english,math)

- df_midterm 데이터 프레임에 class변수를 추가

-데이터 분석하기

mean(df_midterm$english)  #english변수의 평균을 구함

 

빗자루 모양버튼을 누르면 환경변수를 모두 삭제할 수 있다.(초기화)

04-3 외부데이터 이용하기

새로운 스크립트 추가

엑셀파일 이용하는 readxl 패키지 설치하고 로드

install.packages("readxl")

library(readxl)

 

엑셀파일 불러오기 

read_excel("파일명")

excel_exam_novar 첫번째 행이 변수명이 아닌 데이터

col_names=F 속성 지정하여, 변수명은 ....숫자로 자동 지정된다.

 

exam_sheet파일 sheet3에 데이터가 저장되어 있다.
sheet 속성으로 sheet를 지정하여 불러올 수 있다.

 

*csv파일 불러오기

- read_excel()의 col_name=F와 같은 기능으로 header=F 속성이 있음

- 문자가 들어있는 파일을 불러올 때는 stringAsFactors=F 속성을 사용

 

df_midterm 프레임 

df_midterm프레임을 새로운 csv파일으로 저장하기

write.csv(df_midterm, file="df_midterm.csv")

 

RDS 파일 활용하기 (R 전용 데이터 파일)

-saveRDS()를 이용해 데이터 프레임을 .rds파일로 저장할 수 있다.

saveRDS(df_midterm, file="df_midterm.rds")

rm(df_midterm) //해당 데이터 프레임 삭제

load("df_midterm.rds") //데이터 프레임 파일 로드하기

 

5장. 데이터 분석 기초

05-1. 데이터 파악하기

head(): 데이터 앞부분 출력 (기본값 6개)

tail(): 데이터 뒷부분 출력

View(): 뷰어 창에서 데이터 확인 (*첫글자 대문자 주의)

dim(): 데이터 차원 출력

str(): 데이터 속성 출력

summary(): 요약 통계량 출력

head() 함수 연습

view(exam)

dim(exam)

> 20 5 //행 수 열 수 (데이터 차원 출력)

 

str(exam) 데이터 속성 확인하기

summary(exam)

요약 통계량 산출하기

- median: 중간값

- 1st Qu: 1사분위수(하위 25% 지점에 위치하는 값)

- min: 최소값

- mean: 평균값

- 3rd Qu: 3사분위수(하위 75% 지점에 위치하는 값)

- max: 최댓값

=> 중간값과 평균값을 비교하여 데이터 형태를 파악 가능하다.

 

* 직접해보기(mpg데이터 파악하기)

- as.data.frame(ggplot2::mpg) 데이터 속성을 데이터 프레임형태로 바꾸는 함수

 

05-2. 변수명 바꾸기

install.packages("dplyr") //dplyr패키지 다운로드

library(dplyr) //dplyr패키지 로드

변수명 바꿔서 복사본 만들기

05-3. 파생변수 만들기

각 원소 개수 볼수있음

*중첩ifelse문 사용=> 등급부여

등급 테이블 확인
qplot(mpg$grade) #등급 그래프

 

p. 123 분석도전 !

작년에 GOOGLE ANALYTICS는 GUI를 활용해서 하는 거였지만 R은 파이썬처럼 인터프리터 방식 CLI를 사용하기 때문에

조금 더 프로그래밍한다는 느낌이 강한 거 같다.

1학기때 구글 코랩을 이용한 데이터사이언스 수업을 들었어서 그런지 보다 수월하게 배울 수 있었던 것 같다.

내일도 열심히 해야지!