[자격증] 데이터분석 준전문가 (ADsP) Ⅲ 데이터 분석 : 01~08강

 정보

  • 업무명     : 데이터분석 준전문가 (ADsP) Ⅲ 데이터 분석 : 01~08강
  • 작성자     : 이상호
  • 작성일     : 2024.06.15
  • 설   명      :
  • 수정이력 :

 

 01강Ⅲ-1-1 R프로그래밍

(1) 기본적인 프로그램 

  • 컴퓨터에 명령을 내리는 데 필요한 컴퓨터의 언어를 프로그래밍 언어 (programming language) 
  • 전통적으로 Basic, Cobol, Fortran, C, C++등이 활용
  • GAUSS (Matrix programming language), Matlab, S-plus, R 등의 사용자가 증가

 

(2) 현재 시중에서 이용되는 통계 프로그램 

  • SAS (StatisticaI AnalysisSystem) 
  • SPSS (StatisticaI Package for the Social Sciences) 
  • Stata (StatisticsData) 
  • WinRats-32 (Regression Analysis for Time Series) 
  • EViews (Econometric Views) 
  • Limdep (Limited Dependent model) 

 

(3) R이란? 

  • 컴퓨터로 통계 및 계량분석이 가능하도록 계산 과정을 정리해 놓은 프로그램을 통계 배기지 
  • R은 프로그래밍 언어로 구성된 통계분석 도구로 다양한 분석 기능을 가지고 있음 
  • 좋은 기능을 가짐에도 불구하고 무료로 제공 
  • 세계적으로 많은 분석가들이 사용 

 

(4) R의 역사 

  • R은 오글랜드대학교의 Robert Gentleman과 Ross Ihaka에 의해 1995년에 처음으로 개발
  • 현재는 R core team 이 R 프로젝트를 운영
  • R은 데이터 의 조작 (manipulation)과 연산 (calculation). 그래픽 표현 (graphical display)을 활용하는 통합 패기지 
  • 금융공학. 생명공학. 행정학, 의학, 자연과학 등 여러 전문분야에서 활용 

 

(5) R의 장점 

  • R은 간단한 명렁어만으로 복잡한 계산을 수행할 수 있는 프로그램
  • 분석을 빠르게 수행 
  • R은 Linux, UNIX, MAC OS X, Windows 등 모든 운영체제에서 실형 가능 
  • 각종 DBMS (Database Management System) 데이터에 접근이 가능
  • 별도의 패키를 사용하여 R의 소스를 Java, Python, C, C# 등의 언어와 호환/사용 가능 
  • R은 공개 소프트웨어로 모든 소스가 공개되므로 자유로운 수정 및 변경이 가능 
  • 다양하고 정일한 분석을 할 수 있다.
  • 경제학, 행정학, 의학, 생물학 등 다양한 학문 분야에서 사용 
  • 다양한 통계분석 방법이 패키지 형태로 공개되므로 사용자가 복잡한 계산식을 일일이 입력하여 분석하야 하는 수고가 불필요 

 

(6) R의 단점

  • R을 사용하기 위해서는 R 언어를 배워야 하며, 새로운 기능이 빠르게 추가되고 있기때문에 지속적으로 새로운 기능을 습득하야 하는 어려움이 있다.

 

2. RStudio란

  • RStudio는 R의 통합개발환경 소프트웨어 
  • RStudio를 사용하기 위해서는 반드시 R이 설지되어 있어야 함.
〈참조〉 통합개발환경
소프트웨어 개발 과정에서 필요한 코팅 (coding), 디버깅 (debugging), 컴파일 (compile)의 과정을 하나로 패키지화한 소프트웨어를 통합개발환경 (Integrated Development Environment: IDE)이라고 한다.

 

(1) 기본용어 

  • 코팅: 프로그래밍 언어를 이용하여 구체적인 컴퓨터 프로그램을 만드는 기술 
  • 디버깅: 코드상의 오류를 찾아내어 수정하는 과정 
  • 컴파일: 컴퓨터가 처리한 언어를 사람이 읽을 수 있는 언어나 그림으로 변환하는 프로그램 

 

(2) RStudio의 장점

  • RStudio 역시 모든 운영체제에서 실행이 기능 
  • 모든 R 버전과 호환이 가능 
  • 코딩작업에 필요한 콘솔 (console), 디버깅 작업에 필요한 소스 에디터 (source editor), 그리고 데이터 뷰어 (data viewer) 및 도표 이력 (plot history) 등 통합개발환경의 주요 요소들이 잘 통합되어 편히라고 신속한 작업이 가능
  • 표시되는 구문을 종류별로 구문 (예를 들이 입력문과 출력문, 함수 등) 
  • 여러 가시 다른 색으로 강조하며 표시하는 구문 강조 (syntax highlight) 기능 탑재  
  • 함수의 첫 글자로 함수를 자동으로 검색하거나 함수예 포함될 요소들을 표시해 주는 코드 완성 (code completion) 기능 탑재  
  • 코드 입력 시 괄호나 따옴표가 자동으로 입력되는 기능 등이 추가되어 수식 입력 과정에서 사용자의 편의를 기함

 

RStudio 시작하기

  • RStudio 아이콘을 클릭하면 Sources 창, Console 창, Environment/History 창, Files, Packages/Plots, Help, Viewer 창 등 4개의 창이 나타난다.
  • Source 창: 프로그램 Sources를 편집, 프로그램 내의 R 명령어에 커서를 두고 <Ctrl+R>로 실행 
  • Console 창: 명령어를 입력하고 결과를 학인 , 상하 화살표를 이용하여 이전 명령어를 편집 및 실행
  • Environment/History 창: 변수 또는 객체의 목록과 값 확인
  • History 창: 명령어 History를 확인 및 검색하고 더불클력하여 Console 창으로 보냄
  • Files, Packages/Plots, Help, Viewer 창
    • Files, Packages 창: 파일과 폴더 및 패키지 목록 
    • Plots, Help, Viewer 창: 그래프, 도움말, HTML 등 명령어 실행 결과

 

3. 명령어 실행방법 

  • R에서 명렁어를 실행시키는 방법에는 직접 명령문과 할당 명령문이 있다.

 

(1) 직접 명렁문

  • Console 창에서 직접 입력하여 엔터를 쳐서 실행  
  • print() 함수를 사용하여 실행할 수도 있음  
  • R을 마치 계산기처럼 사용할 수 있음  
  • 콘솔의 환영 메시지는 Edit> Clear Console (또는 <Ctrl+L>)을 선택하여 지운 후 명령어를 입력하여 엔터를 치면 실행 결과를 보여줌 

etc-image-0

 

etc-image-1

 

etc-image-2

 

etc-image-3

 

(2) 할당 명령문

  • 특정한 데이터 또는 연산 결과를 새로운 문자열에 할당하여 하나의 객체를 정의하는 명렁문으로 작업 결과의 반환을  요구하지 않는다.
  • 할당 명령문의 형태는 할당 연산자인 <- 또는 =를 사용하는 형태와 할당 함수인 assign() 을 사용하는 형태 존재
    모두 동일한 기능을 수행 
    할당 명령문에 의해 생성된 객체를 제거하려면 rm0 함수를 이용

etc-image-4

 

etc-image-5

 

etc-image-6

 

etc-image-7

 

(3) 코드 입력 및 실행 

  • Source 창에서 프로그램 Source를 작성, 편집, 저장, 실행. 불러오기 등을 할 수 있음
  • 작성된 프로그램을 한 줄씩 실행하는 방법은 Run을 클릭 (또는 <Ctrl+Enter>)
  • 여러 줄을 동시에 실행하는 방법은 여러 줄을 선택하고 Run을 클릭
  • 작성된 프로그램 Source를 저장하기 위해서는 File/Save As 선택한 후 본인이 원하는 디렉토리에 따일이름을 입력 
  • 저장된 파일을 불러오기 위해서는 File/Open File을 선택한 후 대상 파일이 위지한 디렉토리에서 불리오기

 

(1) 수학함수 

  • R에서는 다양하고 광범위한 내장함수를 제공하고 있음
  • 사용자는 분석 과정에서 빈번하게 사용되는 수식을 단순화한 함수로 사용 
  • 결과적으로 작업의 효율성을 높일 수 있다. 

etc-image-8

 

etc-image-9

 

etc-image-10

 

etc-image-11

 

etc-image-12

 

etc-image-13

 

etc-image-14

 

etc-image-15

 

 02강Ⅲ-1-2 데이터마이닝

데이터 마이닝의 개요 

  • 데이터마이닝은 대용량 데이터에서 의미있는 패턴을 파악하거나 예측하여 의사결정에 활용하는 방법이다. 

 

통계분석과의 차이점

  • 통계 분석은 가설이니 가정에 따른 분석이나 검증을 하지만 데이터마이닝은 다양한 수리 알고리즘을 이용해 데이터베이스의 데이터로부터 의미있는 정보를 찾아내는 방법을 통칭한다.

 

etc-image-16

 

사용분야 

  • 병원에서 환자 데이터를 이용해 해당 환자에게 발생 가능성이 높은 병을 예측 
  • 기존 환자가 응급실에 왔을 때 어떤 조치를 먼저 해야 하는지를 결정 
  • 고객 데이터를 이용해 해당 고객의 우량/불량을 예측해 대출적격 여부 판단 
  • 세관 검사에서 입국자의 이력과 데이터를 이용해 관세물품 반입 여부를 예측 

 

etc-image-17

 

etc-image-18

 

etc-image-19
etc-image-20

 

데이터마이닝을 위한 데이터 분할 

  • 모델 평가용 테스트 데이터와 구축용 다이터로 분할하여 구축용 데이터로 모형을 생성하고  테스트 데이터로 모형이 일마다 적합한지를 판단한다.
  •  

etc-image-21

 

etc-image-22

 

etc-image-23

 

 03강Ⅲ-1-3 분석방법

분류 모델의 검증 지표

etc-image-24

 

etc-image-25

 

etc-image-26

 

etc-image-27

 

etc-image-28

 

etc-image-29

 

etc-image-30

 

etc-image-31

 

etc-image-32

 

etc-image-33

 

etc-image-34

 

etc-image-35

 

etc-image-36

 

etc-image-37

 

etc-image-38

 

 04강Ⅲ-1-4 분석방법2

etc-image-39

 

etc-image-40

 

etc-image-41

 

etc-image-42

 

etc-image-43

 

etc-image-44

 

etc-image-45

 

etc-image-46

 

etc-image-47

 

etc-image-48

 

etc-image-49

 

etc-image-50

 

etc-image-51

 

etc-image-52

 

etc-image-53

 

 05강Ⅲ-1-5 분석방법3

etc-image-54

 

etc-image-55

 

etc-image-56

 

etc-image-57

 

etc-image-58

 

etc-image-59

 

etc-image-60

 

etc-image-61

 

etc-image-62

 

etc-image-63

 

etc-image-64

 

etc-image-65

 

etc-image-66

 

etc-image-67

 

etc-image-68

 

etc-image-69

 

etc-image-70

 

etc-image-71

 

etc-image-72

 

etc-image-73

 

etc-image-74

 

etc-image-75

 

etc-image-76

 

etc-image-77

 

etc-image-78

 

etc-image-79

 

etc-image-80

 

etc-image-81
etc-image-82

 

etc-image-83

 

etc-image-84

 

etc-image-85

 

etc-image-86

 

etc-image-87

 

etc-image-88

 

etc-image-89

 

 06강Ⅲ-1-6 분석방법4

etc-image-90

 

etc-image-91

 

etc-image-92

 

etc-image-93

 

etc-image-94

 

etc-image-95

 

etc-image-96

 

etc-image-97

 

etc-image-98

 

etc-image-99

 

 07강Ⅲ-1-7 분석방법5

etc-image-100

 

etc-image-101

 

etc-image-102

 

etc-image-103

 

etc-image-104

 

etc-image-105

 

etc-image-106

 

etc-image-107

 

etc-image-108

 

etc-image-109

 

etc-image-110
etc-image-111

 

etc-image-112

 

etc-image-113

 

etc-image-114

 

etc-image-115

 

etc-image-116
etc-image-117

 

etc-image-118

 

etc-image-119

 

 08강Ⅲ-1-8 분석방법6

etc-image-120

 

etc-image-121

 

etc-image-122

 

etc-image-123

 

etc-image-124

 

etc-image-125

 

etc-image-126

 

etc-image-127

 

etc-image-128

 

etc-image-129

 

etc-image-130

 

etc-image-131

 

etc-image-132

 

etc-image-133

 

etc-image-134

 

etc-image-135

 

etc-image-136

 

etc-image-137

 

etc-image-138

 

etc-image-139

 

etc-image-140

 

etc-image-141

 

etc-image-142

 

etc-image-143

 

etc-image-144

 

etc-image-145

 

 참고 문헌

[논문]

  • 없음

[보고서]

  • 없음

[URL]

  • 없음

 

 문의사항

[기상학/프로그래밍 언어]

  • sangho.lee.1990@gmail.com

[해양학/천문학/빅데이터]

  • saimang0804@gmail.com