TOP

강의목록

강의소개

홈 > 강의소개

R 프로그래밍(통계분석)

교수 사진

김용태 교수

단국대학교 대학원 통계학과 석사과정
단국대학교 대학원 정보통계학과 박사졸업

학력

단국대학교 대학원 통계학과 석사과정
단국대학교 대학원 정보통계학과 박사졸업

강의경력

단국대학교
한국외국어대학교
을지대학교
현) 유니와이즈 전임교수

강좌 소개
🤖 **유니와이즈 AI 튜터 탑재!**
- AI강의요약, AI질문채팅, AI문제생성 가능
- 강의는 기본, 최신 트렌드 학습은 AI 튜터로 24시간 학습!

✅ **R 빅데이터 분석 A-Z**:
- R과 tidyverse를 기반으로 데이터 수집·정제·EDA·시각화·통계·머신러닝까지 한 번에 완성하는 종합 강좌입니다.
✅ **대학 교과과정 중심 커리큘럼**:
- 통계학/데이터사이언스/산업공학/경영정보 등 대학 교과과정 중심으로 구성하여, 수업·연구·캡스톤과 실무를 자연스럽게 연결합니다.
✅ **실무 프로젝트 & 포트폴리오**:
- 마케팅, 제조, 금융, 헬스케어 도메인 프로젝트로 실전 역량을 기르고, 재현 가능한 리포트/R Markdown·Shiny로 포트폴리오를 완성합니다.
교육 대상
🎓 **관련 전공 대학(원)생**: 통계학·데이터사이언스·산업공학·경영/경영정보·경제·컴퓨터공학 등에서 R 기반 데이터 분석 실습이 필요한 학습자.
📚 **연구자/교원**: 실험·설문·공공데이터를 통계적으로 분석하고 재현 가능한 보고서를 작성해야 하는 분.
🏃 **취준생/커리어 전환자**: 엑셀 중심에서 코드 기반 분석으로 전환하고, 포트폴리오와 자격증(ADsP/ADP/빅데이터분석기사) 준비를 병행하려는 분.
🔬 **실무자(마케팅·제조·금융·HR·리서치)**: 데이터 정제/시각화/모델링을 통해 의사결정과 자동화 리포팅(Shiny/R Markdown)이 필요한 현업 담당자.
교재정보 및 참고문헌
📘 **주교재 (PDF 제공)**:
- 유니와이즈 자체 교수진 연구교재로, 대학 커리큘럼과 실무 요구를 반영한 핵심 이론·실습 코드·프로젝트 가이드를 포함합니다.
- 수강 시 PDF로 제공되어 예습/복습과 포트폴리오 제작에 바로 활용할 수 있습니다.
📖 **참고 문헌 (선택)**:
- 『빅데이터 분석 도구 R 프로그래밍』(노만 매트로프 저, 권정민 역, 에이콘출판)
- 『빅데이터 분석을 위한 R 프로그래밍』(조민호 저, 정보문화사)
- 『알찬 R 프로그래밍』(홍성용 저, 내하출판사)
(※ 강의는 자체 PDF 교재만으로 충분히 학습 가능하도록 구성되어 있습니다.)

유니와이즈 AI학습의 특징

AI가 이끄는 스마트한 학습 경험, AI 튜터와 함께 더 빠르고, 더 깊게 학습하세요.

📝
AI 자동 요약

긴 강의 내용을 AI가 핵심만 요약하여 복습 시간을 단축시킵니다.

🔑
핵심 키워드 추출

강의에서 가장 중요한 키워드와 개념을 자동으로 추출해 제공합니다.

💡
AI 자동 퀴즈

학습한 내용을 바탕으로 AI가 생성한 퀴즈를 풀며 이해도를 점검합니다.

🤖
1:1 AI 튜터

모르는 부분을 24시간 언제든 AI 튜터에게 질문하고 답변을 받습니다.

커리큘럼

총 9개 챕터, 55강으로 구성되어 있습니다.

커리큘럼
제목 강의시간 상세내용
[1강] R 프로그래밍 오리엔테이션
0: 13: 58
R 프로그래밍 소개: 통계 자료 분석을 위한 언어

• R 프로그래밍: 통계 자료 분석 및 그래프 작성에 특화된 무료 소프트웨어이자 프로그래밍 언어.
• R 패키지: 사용자가 개발한 함수 묶음을 설치하여 기본 기능을 확장하는 R의 핵심 활용 체계.
• R 프로그래밍 학습: 자료 구조, 함수, 패키지 활용 등 실습 중심으로 데이터 분석 실무 역량의 기초 배양.
1장. R 프로그램 시작하기
[2강] R 프로그램 (1)
0: 35: 46
R 및 RStudio 소개, 설치 및 기본 사용법

• R 프로그램: 통계 계산 및 그래픽 구현에 사용되는 오픈소스 언어이자 무료 소프트웨어 환경.
• R 실행 방식: 명령어 즉시 결과를 출력하는 인터렉티브 모드(콘솔)와 코드 일괄 실행이 가능한 배치 모드(스크립트)로 구분.
• RStudio: 스크립트, 콘솔, 환경, 플롯 창 등을 통합 제공하여 코드 작성 및 실행 효율성을 높이는 R 전용 통합개발환경(IDE).
[3강] R 프로그램 (2)
0: 48: 10
R 프로그래밍: 함수, 데이터 구조, 작업 환경 관리

• R 함수 및 데이터 구조: 인수 기반 계산을 수행하는 함수와 데이터 유형·차원에 따라 구분되는 벡터·행렬·리스트·데이터 프레임의 기본 구조
• R 작업 환경 관리: `getwd`·`setwd`를 통한 경로 설정 및 `ls`·`save`·`load`·`rm`을 이용한 객체 목록 확인·저장·삭제 절차
• R 도움말 기능: `help()`·`?`·`??` 명령어를 사용하여 함수·기능에 대한 공식 문서를 검색하고 예제를 확인하는 방법
[4강] R 프로그램 시작하기 실습
0: 54: 27
R 및 RStudio 설치와 기본 사용법
• R 및 RStudio 설치: R 공식 CRAN 웹사이트와 RStudio 홈페이지를 통한 프로그램 설치 절차 요약
• R/RStudio 환경: 즉시 실행되는 콘솔과 코드 수정·저장이 용이한 스크립트의 기능적 차이 및 RStudio의 통합 개발 환경(IDE) 기능
• 객체 및 작업 공간 관리: 할당 연산자(`<-`)를 이용한 객체 생성과 `ls()`·`rm()`·`getwd()`·`setwd()` 등 핵심 관리 함수 기능
2장. 데이터 구조
[5강] 데이터의 유형, 벡터
0: 57: 32
R 프로그래밍의 데이터 유형과 벡터의 생성 및 활용
• R 데이터 유형 및 객체: 수치형·논리형·문자형 등 기본 유형과 결측치(NA)·무한대(Inf) 등 특수 유형, 벡터·행렬·데이터 프레임 등 주요 데이터 구조 정의
• 벡터 생성 및 인덱싱: c() 함수를 이용한 벡터 생성, names() 함수로 원소 이름 지정, 대괄호([])를 이용한 숫자·논리값·조건식 기반 원소 접근 및 수정 방법
• 연속 및 반복 데이터 생성: 콜론(:), seq(), rep() 함수를 활용한 규칙적 숫자열 생성 원리와 주요 파라미터(by, length.out, each, times) 기능 요약
[6강] 행렬과 배열, 리스트
0: 49: 31
R 프로그래밍: 행렬(Matrix), 배열(Array), 리스트(List) 생성 및 인덱싱

• R 데이터 구조: 동일 유형 데이터를 위한 행렬·배열과 이질 유형 데이터를 위한 리스트로 구분
• 데이터 구조 생성: matrix(), array(), list() 함수로 객체를 생성하고 dimnames()로 차원 이름 지정
• 데이터 접근 및 추출: 행렬·배열은 [행, 열] 인덱싱, 리스트는 [[ ]] 또는 $ 기호로 성분(Component) 추출
[7강] 데이터 프레임
0: 48: 52
R 데이터 프레임의 생성, 인덱싱 및 데이터 편집
• 데이터 프레임: `data.frame()` 함수로 생성하며, 각 열(변수)마다 다른 자료형을 가질 수 있는 2차원 데이터 구조.
• 데이터 접근 및 편집: `[]`, `$` 인덱싱으로 원소를 수정하거나 `attach()` 함수로 변수명을 직접 참조하는 방식.
• 데이터 편집 함수 비교: 원본을 변경하지 않고 결과를 반환하는 `edit()` 함수와 원본을 직접 수정하는 `fix()` 함수의 차이점 분석.
[8강] 팩터와 오더, 유형의 확인과 변환
0: 49: 52
R 팩터(Factor)와 데이터 유형 확인 및 변환 함수

• R 팩터(Factor)와 오더(Ordered): 순서 유무에 따라 factor()와 ordered() 함수로 범주형 및 순서형 데이터를 정의하는 특수 변수.
• 데이터 및 객체 유형 확인: is.numeric(), is.vector() 등 is.* 계열 함수를 통해 데이터 속성 및 구조를 판별하고 논리값(TRUE/FALSE)을 반환.
• 데이터 및 객체 유형 변환: as.numeric(), as.data.frame() 등 as.* 계열 함수로 유형을 강제 변환하며, 특정 규칙에 따라 변환 불가 시 NA(결측치) 처리.
[9강] 데이터 구조 실습 (1)
0: 57: 16
R 프로그래밍: 벡터, 팩터 등 객체 생성 및 관리
• R 객체 생성 및 유형: `c()`, `factor()`, `ordered()` 함수를 이용한 벡터·팩터·오더 객체 생성 및 `as.*` 함수를 통한 유형 변환
• 데이터 생성 및 인덱싱: `seq()`·`rep()` 함수로 순서열·반복 데이터를 생성하고, 대괄호`[]`를 이용해 조건부로 원소를 추출·수정
• R 작업 공간 관리: `save.image()`·`load()` 함수를 사용하여 현재 작업 공간의 모든 객체를 파일로 저장하고 불러오는 절차
[10강] 데이터 구조 실습 (2)
0: 45: 02
R 데이터 구조: 행렬, 배열, 리스트 생성 및 인덱싱

• R 행렬(Matrix) 생성 및 관리: `matrix`, `cbind`, `rbind` 함수로 생성하며 `dim`, `dimnames`로 차원과 이름을 제어
• 다차원 배열 및 리스트: `array` 함수로 3차원 이상 배열을, `list` 함수로 이질적 데이터 구조를 생성
• 데이터 구조 인덱싱: `[ ]`, `[[ ]]`, `$` 기호를 사용하여 숫자·이름·논리값 기반으로 특정 원소 또는 성분 추출
[11강] 데이터 구조 실습 (3)
0: 54: 56
R 데이터 프레임 생성, 조작 및 데이터 유형 관리
• R 데이터 프레임 생성 및 조작: data.frame() 함수로 생성하고 인덱싱, $, attach() 함수를 이용해 원소에 접근 및 수정
• R 데이터 유형 및 구조 관리: is.() 및 as.() 함수로 데이터 유형을 확인·변환하고, str() 함수로 객체 구조를 파악
• R 작업 공간 관리: ls(), rm() 함수로 객체를 관리하고 save.image(), load() 함수로 작업 환경을 저장 및 복원
3장. R 연산자와 함수
[12강] 벡터의 연산과 함수
0: 52: 37
R 프로그래밍의 기본 연산자와 벡터 연산 함수

• R 기본 연산자: 산술(+, *, %/%), 비교(==, !=), 논리(&, |) 연산자로 구분되며, 행렬 곱(%*%)과 원소별 곱(*)은 명확히 구분하여 사용
• R 벡터/행렬 연산: 동일 위치의 원소끼리 수행(element-wise)이 기본 원칙이며, 스칼라 값은 모든 원소에 개별 적용됨
• R 벡터화 함수: 반복문 대체를 위한 고효율 내장 함수로, subset(값 필터링), which(인덱스 반환), ifelse(벡터화 조건문) 등이 포함됨
[13강] 행렬, 리스트의 연산과 함수
0: 51: 43
R 프로그래밍: 행렬 및 리스트의 연산과 함수
• R 행렬 연산: 행렬 곱셈(%*%), 역행렬(solve), 전치(t) 등 주요 수학적 연산을 수행하는 핵심 함수 모음
• apply 함수: MARGIN 인수를 이용해 행렬의 행(1) 또는 열(2) 방향으로 특정 함수를 일괄 적용하는 반복 연산 기능
• lapply와 sapply 함수: 리스트의 모든 원소에 함수를 적용하며, 반환 값의 자료 구조가 각각 리스트, 벡터/행렬로 구분됨
[14강] 데이터 프레임의 연산과 함수
1: 00: 42
R 데이터 프레임 연산, 병합 및 팩터 활용 함수

• 데이터 프레임 연산 함수: lapply/sapply는 변수 단위 함수 적용, tapply/aggregate는 지정된 그룹 기준 요약값 계산
• 데이터 프레임 병합 및 분할: merge는 기준 변수 기반 데이터 결합(Join), split/by는 팩터 기준 데이터 분할 및 함수 일괄 적용
• 팩터 활용 및 데이터 변환: table은 범주형 변수의 빈도표 생성, cut은 연속형 데이터를 지정된 구간에 따라 범주형 데이터로 변환
[15강] 주요 함수 (1)
0: 46: 05
R 프로그래밍 주요 산술 및 데이터 처리 함수

• R 산술 연산 함수: `sum`, `round`, `log` 등 기본 수치 연산과 `na.rm` 인수를 이용한 결측값 처리 기능
• R 순위 및 정렬 함수: `rank`(순위 생성), `sort`(값 정렬)의 기능 및 `ties.method`(동률 처리), `index.return`(원본 인덱스 반환) 옵션
• R 적분 함수: `integrate`를 사용하여 지정된 구간 내 단일 변수 함수의 정적분 값을 계산하는 기능
[16강] 주요 함수 (2)
0: 58: 11
R 주요 통계 함수, 확률 분포 및 패키지 관리

• R 기본 통계 함수: `mean`, `var`, `cov`, `cor` 등을 활용한 기술 통계량 및 변수 간 관계(공분산, 상관계수) 계산
• R 확률 분포 함수: `d`(밀도/질량), `p`(누적확률), `q`(분위수), `r`(난수) 접두사를 이용해 정규분포, 이항분포 등 제어
• R 패키지 관리: `install.packages()`로 기능 설치, `library()`로 활성화, `detach()`로 비활성화하는 외부 기능 확장 절차
[17강] R 연산자와 함수 실습 (1)
0: 56: 28
R 기본 연산자 및 함수 실습: 스칼라, 벡터, 행렬, 리스트
• 스칼라 및 벡터 연산: 사칙연산, 통계 함수(sum, sort), 조건부 처리(which, ifelse) 등 원소 단위 데이터 처리
• 행렬 연산: 원소별 곱셈(*)과 행렬 곱(%*%)을 구분하며, 역행렬(solve), 고유값(eigen) 등 선형대수 연산 수행
• Apply 계열 함수: apply, lapply, sapply를 사용하여 행렬 및 리스트의 각 원소 또는 성분에 함수를 일괄 적용
[18강] R 연산자와 함수 실습 (2)
1: 05: 48
R 데이터 프레임 연산 및 기본 함수 활용

• 집단별 데이터 연산: tapply, aggregate, by 함수를 활용한 데이터 분리, 요약 및 함수 일괄 적용
• 데이터 프레임 병합 및 조작: merge 함수의 Join 옵션(inner, outer) 및 cut, rank 함수를 이용한 파생변수 생성
• 기초 통계 및 확률 분포 함수: var, cov2cor로 공분산/상관행렬을 계산하고, d/p/q/r 접두어로 확률밀도·누적확률·분위수·난수 생성
4장. 프로그램의 구조
[19강] 조건문, 반복문, 분기문
0: 57: 13
R 프로그래밍의 제어문: 조건문, 반복문, 분기문
• 조건문 (if-else, switch): 조건식의 논리값 또는 특정 값에 따라 코드 실행 흐름을 분기하는 제어 구문
• 반복문 (for, while, repeat): 특정 횟수(for) 또는 조건 충족(while) 시 코드 블록을 반복적으로 수행하는 제어 구조
• 분기문 (break, next): 반복문의 실행을 완전히 종료(break)하거나 현재 반복을 건너뛰고(next) 흐름을 제어하는 명령어
[20강] 반환문, 사용자 정의 함수
0: 57: 22
R 프로그래밍: 반환문과 사용자 정의 함수의 이해

• R 사용자 정의 함수: `function` 키워드로 반복 작업을 정의하고 인수(Argument)와 반환문(return)으로 입출력을 제어하는 기능
• 변수 유효 범위(Scope): 지역변수와 전역변수의 개념을 구분하고, 영속대입 연산자(`<<-`)로 전역변수를 제어하는 원리
• 함수 인수 설정: 기본값(Default Value), 인수명 직접 지정, 임의 인수(`...`)를 활용하여 함수의 유연성을 높이는 방법
[21강] 디버깅
0: 39: 43
R 프로그래밍의 디버깅: 주요 함수와 사용법

• R 디버깅 기본: debug(), debugonce() 함수로 브라우저(browser) 환경을 활성화하고 코드를 단계별로 실행·분석하는 절차
• 특정 지점 및 조건부 디버깅: 코드 내 browser() 직접 호출로 특정 위치에서, stopifnot()으로 조건 불일치 시 실행을 중단하는 기법
• 충돌 후 오류 분석: traceback()으로 함수 호출 경로를 추적하고 debugger()로 오류 발생 시점의 환경을 분석하는 사후 디버깅 방법
[22강] 성능 향상
0: 50: 44
R 프로그래밍 성능 향상: 벡터화와 코드 최적화

• 벡터화(Vectorization) : 반복문(`for`)을 벡터 단위의 단일 연산으로 대체하여 함수 호출 오버헤드를 줄이고 코드 실행 속도를 최적화하는 핵심 기법
• 재귀함수(Recursive Function) : 함수 내부에서 자기 자신을 호출하는 구조로, 문제의 구조에 따라 효율성이 달라지는 연산 방식
• 바이트 코드 컴파일(Byte Code Compilation) : R 코드를 가상 머신용 중간 이진 코드로 변환하여 반복문 기반 코드의 성능을 소폭 개선하는 기법
[23강] 프로그램의 구조 실습 (1)
1: 01: 55
R 제어문 실습: 조건문(if, switch)과 반복문(for, while)

• 조건문 (if, switch): 특정 조건의 참/거짓 또는 값에 따라 코드 실행 경로를 분기하는 제어 구조
• 반복문 (for, while): 정해진 횟수(for)나 특정 조건이 만족되는 동안(while) 코드 블록을 반복 수행
• 중첩 제어문: 조건문과 반복문을 조합하여 과락 처리, NA 값 필터링, 데이터 시각화 등 복합 로직 구현
[24강] 프로그램의 구조 실습 (2)
1: 10: 01
R 프로그래밍: 분기문, 사용자 정의 함수 및 성능

• 분기문과 사용자 정의 함수: break·next를 이용한 반복문 제어와 function 키워드로 코드 모듈화 및 재사용성 확보
• 함수 관리 및 디버깅: source로 외부 코드 실행, save·load로 객체 관리, debug·traceback으로 오류 추적 및 수정
• R 프로그래밍 성능 최적화: 반복문(for)을 벡터화 연산으로 대체하여 데이터 처리 속도를 향상시키는 기법
5장. 데이터의 입출력
[25강] 키보드와 모니터에 접근
0: 41: 43
R 프로그래밍: 키보드와 모니터를 이용한 데이터 입출력

• 키보드 데이터 입력 (scan, readline): 벡터 형식(scan) 또는 한 줄의 단일 문자열(readline)로 사용자 입력을 받는 기능
• 문자열 분리 (strsplit): 특정 구분자를 기준으로 문자열을 분리하며, 결과는 리스트(list) 형태로 반환
• 사용자 선택 메뉴 (menu): 콘솔 또는 GUI 환경에서 선택지를 제시하고, 사용자가 선택한 항목의 번호를 반환
[26강] 파일 읽기와 쓰기
0: 55: 11
R 프로그래밍: 텍스트 파일 읽기 및 쓰기 함수

• 텍스트 파일 읽기 함수: `read.table()`, `read.csv()` 등을 이용, 구분자(sep)·헤더(header) 옵션에 따라 외부 데이터를 R 데이터 프레임으로 불러오는 절차.
• 데이터 객체 파일 저장: `write.table()`, `write.matrix()` 등을 활용, R 객체의 2차원 구조 유지 여부를 결정하여 텍스트 파일로 내보내는 기능.
• sink 함수: R 콘솔 출력 결과를 지정된 파일로 리디렉션(redirection)하고, 함수 재호출을 통해 출력을 콘솔로 복원하는 기능.
[27강] 다양한 데이터 파일 읽기와 쓰기
0: 56: 16
R: 다양한 데이터 파일 읽기/쓰기 및 DB 연동

• foreign·readxl 패키지: SPSS, SAS, Excel 등 다양한 외부 데이터 파일을 R로 불러오거나 내보내는 기능 제공
• RODBC 패키지: ODBC를 통해 외부 데이터베이스(DBMS)와 연동하여 SQL로 데이터를 읽고 쓰는 양방향 소통 기능 제공
• sqldf 패키지: R 데이터 프레임을 데이터베이스 테이블처럼 취급하여 SQL 질의문으로 데이터를 처리하는 기능 제공
[28강] 데이터의 입출력 실습 (1)
0: 49: 40
R 프로그래밍: 키보드를 이용한 외부 데이터 입력 방법
• scan() 함수: 키보드로 여러 값을 입력받아 숫자 벡터(vector) 형태로 직접 생성 및 저장하는 기능
• readline() 함수: 한 줄 텍스트를 단일 문자열로 입력받아 strsplit(), as.numeric() 등과 결합하여 데이터를 파싱·형변환하는 절차
• menu() 함수: 콘솔에 번호가 있는 선택지를 제시하고 사용자가 선택한 번호를 반환하여 프로그램 로직을 분기하는 기능
[29강] 데이터의 입출력 실습 (2)
0: 58: 53
R 외부 데이터 입출력: 텍스트, SPSS, 엑셀 파일 처리 방법
• R 텍스트 파일 입출력: scan, read.table, write 함수를 이용해 벡터·데이터 프레임 등 데이터 구조에 맞는 파일 읽기 및 쓰기 방법
• 외부 패키지 데이터 연동: foreign, readxl 패키지를 활용하여 SPSS, SAS, 엑셀 형식의 파일을 R 데이터 프레임으로 변환 및 처리
• R 콘솔 결과 파일 저장: sink 함수를 사용하여 R 스크립트 실행 결과를 화면 대신 텍스트 파일로 직접 저장하는 절차
[30강] 데이터의 입출력 실습 (3)
0: 49: 21
R 데이터 프레임의 SQL 활용: sqldf 패키지
• R 데이터 프레임 SQL 쿼리: sqldf 패키지를 통해 SELECT, WHERE, ORDER BY 구문으로 데이터를 선택, 필터링, 정렬하는 기본 조작법.
• 집계 함수와 GROUP BY 활용: COUNT, AVG 등 함수와 GROUP BY 절을 결합하여 범주별 데이터 요약 및 통계량 계산.
• 데이터 프레임 결합 (JOIN): INNER JOIN과 LEFT OUTER JOIN을 이용, 공통 키(key)를 기준으로 두 개 이상의 데이터 프레임을 병합하는 방법.
6장. 그래픽스
[31강] 그래픽 장치
0: 50: 40
R 프로그래밍 그래픽 장치 제어 및 모수 설정

• R 그래픽 장치 : 그래프 출력 위치(윈도우, 파일) 지정 및 dev.off()를 이용한 파일 저장 완료 절차
• 다중 그래픽 장치 관리 : dev.list(), dev.cur(), dev.set() 함수로 현재 장치 목록 확인, 활성화, 특정 장치 전환 제어
• 그래픽스 모수(Parameter) : par() 함수를 통해 점 모양(pch), 크기(cex), 여백(mar) 등 전역 시각 요소를 설정 및 조정하는 기능
[32강] 다양한 그래프 작성하기
0: 55: 29
R 프로그래밍을 활용한 단일 및 다변수 그래프 작성법

• 단일 변수 그래프: 범주형 자료(pie(), barplot())와 양적 자료(hist(), boxplot(), stem())의 분포 시각화 기법
• 다변수 관계 그래프: 두 변수 관계를 파악하는 누적/병렬 막대그림, 집단별 상자그림, 산점도(plot()), 모자이크 그림(mosaicplot())
• 산점도 중첩 문제 해결: 동일 좌표의 데이터 밀집 현상을 보완하는 해바라기 산점도(sunflowerplot())와 흩어뿌리기(jitter()) 기법
[33강] 그래픽 영역 분할
0: 51: 21
R 프로그래밍 그래픽 영역 분할 방법

• par 함수: mfrow/mfcol 인수를 이용한 격자 분할, fig 인수를 이용한 좌표 기반 분할, new=T 옵션을 이용한 그래프 중첩 기능 제공.
• split.screen 함수: 분할된 영역을 재귀적으로 다시 분할하는 기능으로, screen(n) 함수로 특정 영역을 활성화하여 제어.
• layout 함수: 행렬(matrix)을 이용한 비정형 분할 방식으로, 숫자 값으로 영역 병합 및 공백을 지정하여 유연한 레이아웃 구성.
[34강] 그래프에 필요한 추가 기능
0: 58: 29
R 프로그래밍 그래프 추가 기능: 제목, 범례, 축, 선, 수식 삽입

• 저수준 그래픽 함수: title(), legend(), axis()를 이용해 제목, 범례, 축 등 그래프 기본 요소 설정
• 그래픽 객체 추가: points(), lines(), abline()을 사용해 점, 선, 회귀직선 등 시각 정보 추가
• expression() 함수 활용: 위/아래첨자, 분수, 제곱근 등 예약어를 통해 그래프 내 수학 수식 입력
[35강] 다변량 그래프, 3차원 그래프
1: 02: 38
R을 활용한 다변량 및 3차원 그래프 시각화

• 다변량 관계 시각화: car, corrgram 패키지를 활용한 산점도 행렬과 상관도로 변수 쌍 간의 패턴 및 상관관계 분석
• 다차원 데이터 표현 기법: aplpack의 체르노프 얼굴그림과 graphics의 물방울 그림으로 다변량 정보를 직관적 형태로 변환
• 3차원 공간 시각화: scatterplot3d(정적), rgl(동적) 패키지를 이용해 3개 변수의 공간적 분포와 회귀평면 탐색
[36강] 그래픽용 패키지 이용 (1)
0: 50: 06
R 그래픽 패키지 ggplot2의 기본 문법 및 활용

• ggplot2 그래픽 문법: 데이터(Data)·미적 특징(aes)·형태(geom) 3요소를 `+` 연산자로 결합하는 계층적 그래프 생성 체계
• 주요 geom 함수: geom_bar(막대도표), geom_histogram(히스토그램), geom_point(산점도) 등 그래프 종류를 지정하는 핵심 기능
• 그래프 분할 기법: 단일 그래프 내 집단화(colour, shape)와 다중 그래프로 영역을 나누는 측면화(facet_grid)로 구성
[37강] 그래픽용 패키지 이용 (2)
0: 59: 57
R ggplot2 패키지를 이용한 고급 그래프 작성법

• ggplot2 계층적 구조: 데이터, 미적 특성(aes), 그래프 형태(geom)를 `+` 기호로 결합하는 그래픽 생성 원리
• 주요 geom 함수 및 집단화: geom_point, geom_bar 등 함수로 산점도·막대그래프를 생성하고 aes(colour=집단변수)로 그룹별 시각화
• 분할 그래프(Facet) 기능: facet_grid() 함수를 사용하여 특정 변수의 수준별로 그래프 영역을 분할하는 다차원 데이터 탐색 기법
[38강] 그래픽스 실습 (1)
1: 05: 47
R 그래픽 장치 관리 및 기본 그래프 작성 방법

• R 그래픽 장치 관리: `windows()`, `jpeg()` 등 함수로 장치를 열고, 그래프 작성 후 `dev.off()`로 닫아 출력물을 생성 및 파일로 저장하는 절차
• 그래픽 파라미터 설정: `par()` 함수를 이용해 점 모양(pch), 크기(cex), 여백(mar, oma) 등 전역 그래픽 속성을 제어하는 방법
• 자료 유형별 시각화: 일변량(barplot, hist, boxplot) 및 이변량(plot, mosaicplot) 데이터 구조에 따른 기본 그래프 작성법
[39강] 그래픽스 실습 (2)
1: 09: 06
R 그래픽 장치 영역 분할: 다중 그래프 작성법
• par(mfrow, mfcol) 함수: 그래픽 장치를 동일 크기 격자로 분할하며, mfrow는 행 우선, mfcol은 열 우선으로 그래프를 배치.
• par(fig), split.screen(), layout() 함수: 좌표(`fig`), 재귀(`split.screen`), 행렬(`layout`) 기반의 비대칭적·복합적 영역 분할 기능 제공.
• par(new=TRUE) 옵션: 기존 그래프를 지우지 않고 새 영역에 그래프를 추가하거나(fig), 현재 영역에 그래프를 중첩(mfrow/mfcol)하는 기능.
[40강] 그래픽스 실습 (3)
1: 03: 22
R 그래프 시각화: 플롯 요소 추가 및 수식 표현

• R 그래프 구성 요소 제어: `axis`, `abline`, `legend`, `title` 함수를 이용해 축, 참조선, 범례, 제목을 추가 및 수정
• 좌표 기반 데이터 정보 추가: `text` 및 `points` 함수를 사용하여 이상치 값, 평균 위치 등 특정 좌표에 텍스트와 점을 표시
• 그래프 내 수식 표현: `expression` 함수를 사용하여 확률밀도함수(PDF) 등 수학/통계 수식을 시각화
[41강] 그래픽스 실습 (4)
1: 00: 16
R을 활용한 다변량 데이터 시각화: 패키지별 그래프 작성법
• car 패키지 활용 시각화: `scatterplot()` 함수로 집단별 산점도, `scatterplotMatrix()` 함수로 산점도 행렬 생성
• 다변량 데이터 시각화 기법: `corgram` 상관도 행렬, `aplpack` 체르노프 얼굴 그림, `symbols` 물방울 산점도 작성 원리
• 3차원 산점도 패키지 비교: `scatterplot3d`(정적), `rgl`(동적), `car`의 `scatter3d`(고급 동적) 기능 및 특징 요약
[42강] 그래픽스 실습 (5)
1: 04: 54
R ggplot2 패키지를 활용한 그래프 작성법
• ggplot2 기본 문법: 데이터(data)와 밑정 요소(aes), 형태 요소(geom)를 `+` 기호로 결합하는 계층적 시각화 구조
• 주요 geom 함수: `geom_bar` (막대), `geom_point` (산점도), `geom_histogram` (히스토그램), `geom_boxplot` (상자) 등 특정 그래프 유형 생성
• 집단별 시각화 기법: `aes` 내 색상·모양 매핑으로 단일 플롯에 그룹을 표현하거나 `facet_grid` 함수로 그래프 영역을 분할
7장. R 통계
[43강] 통계적 추론
0: 55: 54
통계적 추론의 기초: 추정과 가설검정

• 통계적 추론: 표본의 통계량을 이용해 모집단 특성인 모수를 추측하는 과정으로, 추정과 가설검정으로 구분.
• 추정(Estimation): 모수를 하나의 값으로 추측하는 점추정과, 신뢰수준 하에 모수가 포함될 구간을 제시하는 구간추정으로 구성.
• 가설검정(Hypothesis Testing): 귀무가설과 대립가설 설정 후 p-값과 유의수준(α)을 비교해 통계적 의사결정을 내리는 절차.
[44강] 모집단의 가설검정
0: 57: 00
R을 이용한 단일 모집단 가설검정 방법

• 단일 모집단 가설검정 절차: 정규성 검정(Shapiro-Wilk)을 선행하고, p-값과 유의수준을 비교해 귀무가설 기각 여부 판단
• 모평균 및 모비율 검정: t-분포(t.test)와 정규분포(prop.test)를 이용해 각 모수를 특정 값과 비교 검증
• 모분산 검정: 카이제곱 분포를 따르는 검정통계량을 계산하여 모집단 분산의 가설을 검증
[45강] 두 모집단의 비교
0: 56: 24
R 프로그래밍을 활용한 두 모집단의 비교: T-검정, F-검정, 비율 검정

• 두 모평균 차이 검정 (T-검정): 독립표본(등분산/이분산)과 대응표본으로 구분하여 평균 차이를 분석하며, R 함수 t.test()를 활용.
• 두 모분산 비 검정 (F-검정): 두 정규 모집단의 분산 동일성(등분산성)을 검증하는 절차로, 독립표본 T-검정의 전제조건 확인에 필수적이며 R 함수 var.test()로 수행.
• 두 모비율 차이 검정: 두 모집단의 특정 속성 비율 차이를 검정하는 방법으로, 합동추정량을 이용한 Z-통계량을 계산하고 R 함수 prop.test()로 분석.
[46강] 분산분석, 범주형 자료분석
0: 59: 24
분산분석(ANOVA)과 범주형 자료 분석(카이제곱 검정)

• 분산분석(ANOVA): 셋 이상 집단 간 모평균 차이를 검정하기 위해, 총변동을 집단 간 변동과 집단 내 변동으로 분해하여 F-통계량으로 분석하는 기법.
• 사후검정(Post-hoc Test): 분산분석의 귀무가설 기각 시, 튜키(Tukey) HSD 등의 방법으로 구체적으로 어떤 집단 간 평균 차이가 있는지 파악하는 다중비교 분석.
• 카이제곱 검정(Chi-square Test): 관측도수와 기대도수의 차이를 기반으로 하며, 적합도(이론 분포 일치), 독립성(변수 간 연관성), 동질성(집단 간 비율 동일성) 검정에 활용.
[47강] 상관분석과 회귀분석
0: 56: 53
R 프로그래밍: 상관분석과 회귀분석의 이해

• 상관분석: 두 양적 변수 간 선형 관계의 강도와 방향을 상관계수(r)로 측정하고, R의 cor.test() 함수로 통계적 유의성을 검정.
• 회귀분석: 독립변수가 종속변수에 미치는 영향을 수학적 모형으로 규명·예측하며, 최소제곱법으로 회귀계수를 추정.
• 회귀모형 평가: 결정계수(R²)로 모형의 설명력을 판단하고, F-검정과 t-검정으로 모형 및 회귀계수의 통계적 유의성을 평가.
[48강] R 통계 실습 (1)
0: 54: 47
R 통계 실습: 가설 검정 R 코드 구현 및 해석

• 가설 검정 R 함수: t.test(평균), prop.test(비율), chisq.test(독립성) 등 목적별 검정 코드 구현 및 적용
• 데이터 사전 검정: shapiro.test(정규성)와 var.test(등분산성)를 이용한 가설 검정의 선행 조건 분석
• 통계적 의사결정 원리: 귀무가설과 대립가설 설정 후, p-값과 유의수준 비교를 통한 가설 채택·기각 절차
[49강] R 통계 실습 (2)
0: 57: 21
R을 활용한 통계적 가설검정 및 회귀분석 실습

• 카이제곱 검정·t-검정·분산분석(ANOVA): R을 활용해 집단 간 분포, 평균 차이를 검증하는 통계적 가설검정 절차
• 사후검정 및 상관분석: 분산분석 후 특정 집단 간 차이를 규명하고, 변수 간 선형 관계의 유의성을 검정하는 방법
• 다중회귀분석: lm() 함수 기반 모형 추정, F-검정(모형 전체)과 t-검정(개별 변수)을 통한 유의성 해석 및 예측
8장. R 응용
[50강] 사회네트워크분석
0: 49: 20
R을 활용한 사회네트워크분석(SNA)의 주요 지표

• 사회네트워크분석(SNA) 개념: 개인 간 관계를 노드와 연결선으로 표현하고, 지표행렬(indicator matrix)로 네트워크 구조를 수학적으로 정량화하는 분석 기법.
• 네트워크 경로 및 지표 계산: 지표행렬의 거듭제곱을 통해 노드 간 경로 수를 계산하며, 최단거리·연결선 수(degree)·밀도(density) 등 지표로 네트워크 특성 분석.
• R sna 패키지 활용: `geodist()`, `degree()`, `gden()` 등 함수를 이용해 최단거리, 연결선 수, 밀도 같은 네트워크 지표를 실제 데이터에서 분석 및 시각화.
[51강] 의사결정트리
0: 53: 35
의사결정나무의 개념, 형성과정 및 R 실습

• 의사결정나무: 데이터를 반복적으로 분할해 분류·예측 규칙을 생성하는 지도학습 기법으로, If-Then 규칙 기반의 높은 해석력이 특징.
• 의사결정나무 형성과정: 불순도를 최소화하는 기준으로 나무를 성장시키고, 과적합 방지를 위해 가지치기로 모형을 단순화하는 절차.
• 주요 알고리즘 및 구현: CART, C4.5, CHAID 등은 분리 기준에 따라 구분되며, R party 패키지를 통해 학습/검정 데이터로 모형을 구축하고 평가.
[52강] 워드 클라우드
0: 45: 45
R을 활용한 워드 클라우드와 몬테카를로 시뮬레이션

• 워드 클라우드 생성: KoNLP 패키지로 명사를 추출, 불용어 제거 및 빈도 계산 등 전처리 후 wordcloud/wordcloud2 패키지로 시각화하는 절차
• KoNLP 패키지: extractNoun()을 통한 한글 명사 추출 및 buildDictionary()를 이용한 사용자 사전 구축 기능 제공
• 몬테카를로 시뮬레이션: 난수를 반복 생성하여 그 결과를 확률적으로 분석, 원주율(π) 등 복잡한 문제의 근사값을 구하는 알고리즘
[53강] R 응용 실습 (1)
0: 46: 29
R 통계 실습: 사회 네트워크 분석 및 의사결정나무

• 사회 네트워크 분석(SNA): R의 sna 패키지를 이용해 관계 데이터를 지표행렬로 구조화하고, 밀도·연결선수·최단거리 등 핵심 지표를 계산하여 네트워크 특성을 파악하는 절차.
• 의사결정나무 모형 생성: R의 party 패키지와 ctree 함수를 사용하여 학습 데이터 기반의 분류 규칙을 도출하고, 이를 시각화하여 데이터 구조를 해석하는 과정.
• 분류 모형 성능 평가: 데이터를 학습용과 검증용으로 분할하고, 예측 결과를 실제 값과 분할표(confusion matrix)로 비교하여 정분류율 기반으로 모형의 일반화 성능을 검증.
[54강] R 응용 실습 (2)
0: 59: 00
R을 활용한 텍스트 마이닝과 몬테카를로 적분
• R 워드클라우드 생성: KoNLP 등 R 패키지를 활용한 텍스트 전처리, 명사 추출, 단어 빈도 분석 및 시각화 절차.
• 몬테카를로 적분 원리: 난수 기반 시뮬레이션으로 특정 영역 내 표본 비율을 계산하여 함수의 정적분 값을 근사하는 확률적 기법.
• 적중법 (Hit-and-Miss Method): 설정된 사각 영역 내 무작위 점을 생성, 함수 그래프 아래에 위치하는 점의 비율로 적분값을 추정하는 방법론.
부록
[55강] R 소스
0: 00: 00
파일을 다운받아 이용하시면 됩니다.
교수 사진

김용태 교수님

R 프로그래밍(통계분석)

  • 190,000
  • 강의 수 54강
  • 수강기간 120일
유니와이즈 고객행복센터 1899-7454
학점은행제 고객행복센터 02-2149-0803~4
상담시간: 10:00~18:00
점심시간: 13:00~14:00
토요일,일요일,공휴일 휴무
유니와이즈 고객행복센터
1899-7454
학점은행제 고객행복센터
1833-6227
상담시간: 10:00~18:00
점심시간: 13:00~14:00
토,일,공휴일 휴무