빅데이터 분석의 흐름빅데이터 분석은 방대한 양의 데이터를 처리하고 이를 기반으로 유용한 인사이트를 도출하는 과정을 의미합니다. 이러한 빅데이터 분석의 흐름은 데이터를 수집하고 처리한 뒤 분석하여 의사결정에 활용하는 일련의 단계로 나눌 수 있습니다. 이번 포스팅에서는 빅데이터 분석의 주요 단계와 각 과정에서의 핵심 요소들을 살펴보겠습니다.업무 이해먼저 업무목적에 대해 파악을 해야합니다. 데이터를 이용해 얻고자 하는 게 무엇인지 명확하게 결정할수록 분석 작업에서 효율적으로 일을 진척시킬 수 있습니다.핵심포인트 : 업무이해, 업무목적파악, 상황파악, 데이터마이닝 목표 설정, 프로젝트 계획수립데이터 수집데이터 수집은 다양한 소스에서 데이터를 모으는 과정입니다. 여기에는 웹 로그, 소셜 미디어, 센서 데이터, 트..
ggplot2를 이용한 데이터 시각화R의 강력한 시각화 패키지인 ggplot2에 대해 살펴볼까 합니다. ggplot2는 Hadley Wickham이 개발한 R 패키지로, "Grammer of Graphics"에 기반한 데이터 시각화 도구로 직관적으로 데이터 시각화를 구성하게 해줍니다.기본 구조ggplot2의 기본 구조는 다음과 같습니다.ggplot(data, aes(x,y)) : 데이터를 설정하고, x축과 y축에 매핑geom_*(): 그래프 형태 지정산점도 : geom_point()선 그래프 : geom_line()막대그래프 : geom_bar()히스토그램 : geom_histogram()상자 그림 : geom_boxplot()패싯(Facet) : facet_*각 그래프는 직접 보는게 가장 낫겠죠? mt..
R로 ROC 곡선 분석하기R에서도 머신러닝이 되는만큼 모델 평가 중 하나인 ROC 곡선 분석을 할 수 있습니다. pROC 패키지로 가능한데요. 다만, pROC패키지는 2진 분류만 가능합니다.예제로 간단하게 iris 데이터를 이진분류를 한 후 ROC 곡선으로 평가해보겠습니다.iris를 이용한 ROC 곡선 평가먼저, iris는 세가지 클래스(setosa,versicolor,virginica)를 포함하고 있으므로, 두개의 클래스로 변환후 이진 분류를 수행합니다. roc는 0,1로 된 범주형 변수로 되어야 하므로 맞게 변환합니다. # 필요한 패키지 로드 library(pROC) # versicolor와 virginica만 선택 iris_binary versicolor,virginica 으로 나누..
Matplotlib에서 figure와 axes를 직접 제어하는 방법과 간단한 사용법의 차이 Matplotlib는 그래프를 그릴 때 2가지 방법이 있습니다. figure와 axes를 직접 제어하느냐에 따라 방법이 달라집니다. 직접 제어하면 코딩이 약간 복잡해지지만 관리, 유지보수가 편해지고 그렇지 않으면 바로 그릴 수는 있지만 그래프 갯수가 많아지고 여러가지 스타일을 부여하면 복잡한 코딩이 될 수 있습니다. 간단한 사용법 figure와 axes를 제어하지 않는 방법입니다. 직관적으로 그림을 그릴 수 있습니다. 서브플롯 각각을 설정해서 그래프를 그립니다. import matplotlib.pyplot as plt import numpy as np # 데이터 생성 x = np.linspace(0, 2*np.pi..
Matplotlib으로 초간단 애니메이션 만들기 가장 접근하기 쉬운 matplotlib로 애니메이션 그림을 만드는 방법입니다. 애니메이션은 사실 여러가지 방법이 있을 걸로 아는데 초간단으로 만드는 방법 알려드리겠습니다. plt.pause를 이용하기 matplotlib에는 pause라는 정지 메쏘드가 있습니다. 내가 지정한 시간만큼 정지하고 다음 작업을 진행합니다. pause를 이용해 애니메이션처럼 만들 수 있는데요. for문과 함께 활용하면 쉽게 만들 수 있습니다. 예제로 랜덤으로 정수를 1000천 선택하고 그 선택한 정수를 하나씩 찍는 애니메이션을 만들어보겠습니다. import matplotlib.pyplot as plt import numpy as np import random x_values = [..
옵시디언 표만들기옵시디언은 마크다운 기반이라서 마크다운 표만들기 기능을 이용하면 옵시디언 표만들기는 다한겁니다. 하지만 너무 불편합니다. 불편함을 없애기 위해 하나씩 해결을 하는 마음으로 좋은 플러그인 있는지 살펴봤습니다.마크다운 활용먼저 가장 기본적인 마크다운을 이용하는 방법입니다.세로 바(|)를 이용해서 합니다. 헤더 밑에는 --- 으로 막아주어야 하고 행 갯수만큼 만들어줍니다.| 이름 | 나이 || --- | --- | #헤더 만들기| 홍길동 | 17 | #내용 만들기| 김철수 | 24 |완성본은 아래와 같습니다. 참고로 편집모드에서 표 시작 바로 위에서 엔터를 한번 눌러주시면 표로 인식됩니다.이름나이홍길동17김철수24 굉장히 원시적인 방..
데이터프레임 표를 웹에 나타내기 데이터프레임은 데이터를 표 형식으로 표시하고 저장하는 데 매우 유용한 판다스(Pandas) 라이브러리의 핵심 데이터 구조입니다. 이것을 그대로 HTML에 옮기고자 합니다. 즉, 데이터프레임을 HTML로 변환하면 데이터를 웹 페이지에 표시하거나 공유할 때 편리하게 사용할 수 있을겁니다. 이번 포스팅에서는 데이터프레임 표를 HTML에 변환하는 방법을 소개합니다. 판다스 데이터프레임 생성 먼저, 데이터프레임을 생성하고 데이터를 채워봅시다. 예시로 사용할 간단한 데이터프레임을 만들어보겠습니다. import pandas as pd data = {'이름': ['Alice', 'Bob', 'Charlie'], '나이': [25, 30, 35]} df = pd.DataFrame(data..
원하는 좌표에 점으로 표현할 수 있다면? 그래프를 그리는 건 어찌어찌 하는데 내가 원하는 곳에 점을 표시하고 글씨를 쓸 수 있으면 더 멋진 그래프를 만들 수 있을겁니다. 멋진 그래프를 그리기 위해 마커설정과 글씨 넣는 방법을 정리해봤습니다. 그래프에 점 넣기 점을 넣으려면 scatter를 이용하면 됩니다. matplotlib는 그래프 겹치기가 가능한 라이브러리라는 것을 이용하면 되는데 다음과 같이 합니다. import matplotlib.pyplot as plt # x와 y 좌표 지정 x = [1, 2, 3, 4, 5] y = [10, 15, 13, 18, 20] # 그래프를 그리기 plt.plot(x, y) # 원하는 위치에 점 넣기(3,13) plt.scatter(3, 13, color='red', ..
플로우 차트는 시각적으로 표현하는 도구로써 사용할 수 있는데 MERMAID라는 오픈 소스 도구를 이용해 할 수 있습니다. 저는 주로 노션에서 이걸 많이 쓰는데 프로젝트 기획할 때 굉장히 유용합니다. MERMAID란? MERMAID는 MARKDOWN을 사용하여 다이어그램을 만들 수 있는 JavaScript 기반의 라이브러리입니다. 그래서 다이어그램을 만드는 용도로서 사용합니다. 글로 기록하는 것도 중요하지만 한눈에 보여지게 하면 아이디어 확장하는데 더 좋고 교정할 부분이 바로 볼 수 있다는 점에서 중요한 것 같습니다. 코드처럼 쓰면 output이 수도코드형식으로 나오게 됩니다. 저는 주로 노션을 통해서 하지만 다른 곳에서 쓰고 싶다면 Node.js를 설치해서 진행할 수 있습니다. Node.js가 설치되어 ..
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.