Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |
Tags
- mongoDB
- 99클럽
- 오픈소스기반데이터분석
- CSS
- 방송대컴퓨터과학과
- 파이썬
- 코딩테스트준비
- 개발자취업
- 항해99
- 데이터베이스시스템
- JavaScript
- 유노코딩
- nestjs
- Python
- 파이썬프로그래밍기초
- 프로그래머스
- Cookie
- 방송대
- 코드잇
- 코딩테스트
- aws
- Git
- 자격증
- 꿀단집
- 중간이들
- TiL
- redis
- node.js
- HTML
- 엘리스sw트랙
Archives
- Today
- Total
배꼽파지 않도록 잘 개발해요
방송대 오픈소스기반데이터분석 - 1강. 데이터 분석과 오픈소스 본문
1. 데이터 분석의 이해
2. 데이터 분석 과정
3. 데이터의 분류
4. 오픈소스 환경
1. 데이터 분석의 이해
1) 데이터와 정보
- 데이터: 관찰이나 측정을 통해 얻어진 사실
- 정보: 데이터를 목적에 맞게 분석 ·가공하여 의미를 도출한 것.
- 데이터를 수집하여 정리하거나 요약하는 과정에서 정보가 만들어지며, 이 정보는 의사결정, 문제해결, 정책 수립 등 다양한 분야에서 활용된다.
2) 데이터 분석의 정의
- 데이터 분석(Data Analysis, DA): 데이터에 숨겨진 의미를 발견하고 인사이트를 도출하는 일련의 과정.
- 데이터를 정보로 가공
- 4단계로 구분
설명적 분석 (decriptive analytics) |
· 과거와 현재 데이터를 요약하여 무엇이 발생했는지 파악하는 것을 목표로 함. · 가장 기초적인 분석 형태로 매출 데이터로 월별 판매 추이 시각화, 고객 수 기간별로 집계 성장세 확인 · '어떤 일이 일어났는가' · 예: 특정 카페의 월별 방문객 수를 시각적으로 나타냄 → 5월부터 방문객이 증가했다 |
진단적 분석 (diagnostic analytics) |
· 특정 현상이 발생한 원인을 규명하는 데 초점 · 데이터 비교하고 상관관계 분석하여 현상의 배경을 파악하는 과정 · '왜 일어났는가' · 예: 방문객 증가한 이유가 새로운 음료 출시 때문인지 등 |
예측적 분석 (predictive analytics) |
· 과거 데이터와 현재 데이터를 기반으로 무엇이 발생할것인지 예측하는 과정 · 통계 모델, 회귀분석, 머신러닝 등 · '무슨 일이 일어날 것인가' · 예: 다음달 방문객 수 예측 |
처방적 분석 (prescriptive analytics) |
· 어떻게 하면 원하는 결과를 얻을 수 있는데에 대한 해답(전략) 제공 · 데이터 분석의 최종 목표 · '무엇을 해야할 것인가' · 최적화 기법, 시뮬레이션 기법 등 · 예: 방문객 증가를 유지하기 위해 이벤트를 개설한다 등 전략을 제안 |
PHM(Prognostics and Health Management)
- 장비나 시스템의 상태를 실시간으로 감시하고, 고장 가능성을 예측하여 최적의 유지보수 및 관리 방안을 제공하는 체계적 접근법
- 주로 산업 기계, 항공기, 자동차 등 복잡한 장치의 신뢰성과 안전성을 높이기 위해 활용됨.
- 정보 수집 - 이상 발견 - 상태 진단 - 고장 예측 - 개선 조치
- PHM 실행 과정
계측 및 모니터링 단계 - 계측(measurement) - 모니터링(monitoring) |
· 데이터를 수집하고 실시간으로 현 상태를 확인하는 작업 · 시스템의 현황이나 성능 지표 등을 요약하며 제공하는 역할 · 데이터분석의 '설명적 분석'에 대응 |
진단 단계 - 진단(diagnostics) |
· 시스템 상태가 비정상적이거나 고장 발생 시 그 원인을 파악하고 문제의 본질을 탐색 · 데이터분석의 '진단적 분석'에 해당 |
예측 단계 - 예측(prognostic) |
· 미래의 성능 저하나 고장 가능성을 미리 파악하여 예방적 조치를 취할 수 있게 함. · 데이터분석의 '예측적 분석'에 해당 |
계선 단계 - 처방(prescription) |
· 예측된 상태를 기반으로 최적의 대응책과 유지보수 전략을 결정하여 제공하는 과정 · 데이터분석의 '처방적 분석'과 연관됨 |
3) 데이터 분석의 중요성
- 기존에는 보이지 않던 패턴과 관계를 발견하고, 이를 활용하여 의미 있는 인사이트를 도출
- 비효율적인 프로세스를 개선하고 운영 최적화를 이룰 수 있다는 점
ex) 생산 과정 데이터 분석 → 공장 병목 해결 - 데이터 기반 의사결정은 객관적인 근거를 바탕으로 최적의 선택을 하도록 돕는 역할을 함.
- 데이터 기반 의사결정의 가장 큰 장점: 객관성, 정밀성, 재현 가능성
4) 데이터 분석의 3요소
- 컴퓨터 과학: 데이터를 효율적으로 처리하고 분석할 수 있는 기반 제공
- 도메인 지식: 분석 결과를 해석하고 실무에 적용할 수 있는 힘 제공
- 통계 및 수학: 분석 과정의 정확성과 신뢰성을 보장
5) 데이터 분석과 데이터 과학
- 공통 목표: 데이터 기반 의사결정을 지원하는 것
- 데이터 분석: 수집된 데이터를 정리·가공하여 의미 있는 인사이트를 도출하는 과정
- 데이터 과학: 더 포괄적인 개념으로, 데이터 분석뿐 아니라 예측 모델 구축과 자동화된 의사결정 시스템까지 포함
6) 데이터 분석의 발전 과정
전통적 통계분석 | 1900년대 초반 ~ 1970년대 초반 |
· 확률론과 가설검정 기법을 활용하여 변수 간 관계 설명 및 가설 검증 수행 · 종이 기반 데이터 수집과 표본 추출 기법에 의존 |
데이터베이스와 비즈니스 인텔리전스(BI) | 1980년대 ~ 2000년대 |
· 컴퓨터 과학 발전으로 DBMS가 도입되며 데이터 관리가 구조화됨 · RDBMS와 SQL이 널리 사용됨 · 1990년대, 월마트가 대규모 데이터 웨어하우스를 구축 · 과거 데이터를 기반으로 현재의 비즈니스 상황 분석 · 데이터 시각화를 포함한 BI 도입이 본격화 |
빅데이터와 기계학습 | 2010년대 ~ 현재 |
· 기존 데이터베이스로는 처리하기 어려운 대량 데이터에 대응하기 위한 새로운 방법론 등장 · 하둡, 스파크 등 분산 데이터 처리 기술 발전 · 기계학습이 데이터 분석의 핵심 방법론으로 자리 잡음 |
실시간 데이터 분석과 AI 자동화 | 현재 ~ 미래 |
· 사물인터넷, 스마트팩토리, 자율주행차 등 기술 발전과 함께 · 실시간 데이터 처리 및 자동화된 의사결정 시스템으로 진화 중 |
2. 데이터 분석 과정
- 데이터 분석 과정: 데이터 수집 및 저장 - 데이터 전처리 - 데이터 분석 - 데이터 시각화
1) 데이터 수집 및 저장
- 분석에 필요한 데이터를 체계적으로 모으는 것
- 수집한 데이터가 분석 목적에 적합한지 검토하는 과정까지 포함
- 신뢰성과 정합성이 높은 데이터 확보
데이터 수집
- 데이터 수집 목적 명확하게 할 필요가 있음.
- 데이터 수집 목적이 설정되면, 그에 맞는 데이터를 어디에서 확보할 것인지 데이터 출처를 파악해야 한다.
- 데이터 종류: 내부 데이터, 외부 데이터
- 데이터 수집 방법 결정: 파일 다운로드, 데이터베이스, 웹 스크래핑, API, 센서 데이터 활용
데이터 저장
- 수집된 데이터를 효율적으로 보관하고 후석 분석과 활용이 가능하도록 하는 과정 (지속성과 확장성)
- 저장 방식: 파일 기반 저장(CSV, JSON, 텍스트 파일 등), 데이터베이스 저장(동시 접근, Hadoop HDFS, Amazon S3)
2) 데이터 전처리
- 데이터 분석에서 가장 중요한 과정
- 수집된 데이터를 정리하고 변환하여 분석이 가능하도록 만드는 작업
- 5단계로 구분: 데이터 측정, 데이터 정제, 데이터 통합, 데이터 축소, 데이터 변환
데이터 측정 | 데이터의 전반적인 분포와 특성을 파악하여 데이터 전처리 및 데이터 분석 방향을 설정하는 과정 |
데이터 정제 | 데이터에서 오류를 수정하고, 불완전한 데이터를 처리하는 과정 (결측치, 이상치, 불일치 등) |
데이터 통합 | 여러 출처에서 수집된 데이터를 하나의 데이터셋(dataset)으로 결합하는 과정 |
데이터 축소 | 데이터의 크기를 줄여 분석을 효율적으로 수행할 수 있도록 하는 과정 (차원 축소, 변수 선택 등) |
데이터 변환 | 데이터를 분석에 적합한 형태로 변환하는 과정 (속성 생성 정규화, 이산화 등) |
3) 데이터 분석
- 탐색적 데이터 분석(EDA, Explorary Data Analysis)
- 데이터 분석가가 데이터의 분포와 특성을 직관적으로 이해하기 위해 수행하는 과정
- 데이터를 요약하고 시각적으로 표현함으로써 데이터에 존재하는 주요 패턴과 이상치를 파악하는 것이 핵심 목표
- 클러스터링, 연관 규칙 분석 등 데이터 마이닝 기법도 사용됨.
4) 데이터 시각화
- 복잡한 데이터셋의 구조와 관계를 그래프, 차트, 다이어그램 등의 시각적 요소를 활용하여 직관적으로 이해하기 쉽게 표현하는 단계
- 예: 막대 그래프, 산점도, 히트맵, 하이그래프
3. 데이터의 분류
1) 데이터 속성에 따른 분류
- 수치화 가능 여부: 질적 데이터, 양적 데이터
질적 데이터 (범주형 데이터) (qualitiative data) |
명목형 데이터 | 성별, 혈액형 | 범주 사이에 순서나 계층적 관계가 없음 |
순서형 데이터 | 학점, 평점, 만족도 | 범주 사이에 명확한 순서가 존재하는 데이터 (범주 사이 간격이 명확하지는 않음) |
|
양적 데이터 (수치형 데이터) (quantitiative data) |
이산형 데이터 | 학생 수, 출하된 제품 수, 차량 대수 | 특정한 정수값을 가지는 데이터, 셀 수 있는 형태 |
연속형 데이터 | 신장, 체중, 온도, 시간 | 특정 구간 내에서 무한한 값을 가질 수 있는 데이터가 해당 |
2) 데이터 형태에 따른 분류
- 정형 데이터, 비정형 데이터, 반정형 데이터
정형 데이터 (structured data) |
· 일정한 규칙과 구조를 갖춘 데이터 · 표, 관계령 데이터베이스와 같은 시스템에 저장됨. |
기업의 월별 매출 데이터 |
비정형 데이터 (unstructured data) |
· 정해진 구조 없이 자유로운 형태로 존재하는 데이터 · 수집 후 바로 분석하기는 어려움 |
텍스트, 이미지, 영상, 음성 데이터 |
반정형 데이터 (semi-structured data) |
· 데이터 항목 간에 일정한 규칙이나 구조가 존재하지만, · 정형 데이터처럼 완전한 표로 고정되어 있지는 않음. |
XML, JSON |
4. 오픈소스 환경
1) 오픈의 시대정신
- 정보·지식은 특정 집단의 독점이 아니라 사회 전체의 공유 자산
- 1991년 리누스 토르발스, 리눅스 커널 무료 공개
2) 오픈소스의 등장 배경과 철학
- 리처드 스톨먼 GNU 프로젝트, 자유 소프트웨어 운동
- 레이먼드, ‘성당과 시장’ → 협업·분산 개발 철학
3) 오픈소스 소프트웨어
- 소스코드 공개 → 누구나 자유롭게 사용·수정·재배포 가능
- 핵심 조건: 공개성, 자유로운 활용, 협업 가능성
4) 오픈소스 생태계와 발전 방식
- 자발적 협업과 분산 개발로 성장
- GitHub 등 플랫폼을 통한 글로벌 협업 기반 확산
5) 오픈소스와 오픈데이터
- 누구나 접근·재사용 가능한 데이터
- 조건: 기계 판독 가능, 비차별적 접근 보장, 자유로운 재배포 권리
6) 오픈소스와 파이썬
- 파이썬: 데이터 분석·AI 등 다양한 분야에서 활용
- 오픈소스 생태계와 결합, 커뮤니티 중심 성장
7) 오픈소스와 파이썬 프로그래밍 환경
- IDLE: 기본 개발 환경, 단순
- Jupyter Notebook: 가장 널리 쓰이는 데이터 분석 환경
- Google Colab: 클라우드 기반, GPU/TPU 지원
8) 파이썬 패키지와 라이브러리
- Selenium: 웹 브라우저 자동 제어, 크롤링·테스트
- lxml: HTML/XML 파싱
- NumPy: 고속 수치 연산, 다차원 배열 처리
- Pandas: 데이터프레임 기반 분석
- Statsmodels: 전통 통계 기법 지원
- Matplotlib/Seaborn: 시각화
- Scikit-learn: 머신러닝 모델 구축·평가
728x90
'방송대 컴퓨터과학과 > 오픈소스기반데이터분석' 카테고리의 다른 글
방송대 오픈소스기반데이터분석 - 3강. 데이터 분석을 위한 파이썬 프로그래밍 2 (0) | 2025.09.18 |
---|---|
방송대 오픈소스기반데이터분석 - 2강. 데이터 분석을 위한 파이썬 프로그래밍 1 (0) | 2025.09.18 |