- Today
- Total
๋ชฉ๋ก๋น ๋ฐ์ดํฐ (14)
DATA101
๐ก ๋ค์ด๊ฐ๋ฉฐ ๋ณธ ํฌ์คํ ์์๋ ๋ฐ์ดํฐ๋ฅผ ์ ๋จ์๋ก ์นด์ดํ ํ๊ณ ์ด๋ฅผ ์๊ฐํํ๋ ๋ฐฉ๋ฒ์ ์๊ฐํฉ๋๋ค. 1. ํจํค์ง import import pandas as pd import numpy as np import matplotlib.pyplot as plt 2. ๋ฐ์ดํฐ์ ๋ถ๋ฌ์ค๊ธฐ ํฌ์คํ ์์ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ์ ์ ๊ณต์ ๊ฐ ๋ถ๊ฐํ์ค๋ ํ์ต ๋ชฉ์ ์ผ๋ก๋ง ๋ด์ฃผ์๊ธธ ๋ฐ๋๋๋ค. DATASET = pd.read_csv('./dataset_app_review.csv') DATASET.head() 3. ๋ฐ์ดํฐ ํ์ ํ์ธ DATASET.dtypes ์๋์ ๊ฐ์ด, ๋ ์ง ์ ๋ณด(date)๋ ํ์ฌ ์ ์ํ(int)์ ๋๋ค. ํธ๋ฆฌํ๊ฒ ๋ ์งํ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๊ธฐ ์ํ์ฌ ์ด๋ฅผ datetime ํ์ ์ผ๋ก ๋ฐ๊ฟ์ค ํ์๊ฐ ์์ต๋๋ค. 4. ๋ฐ์ดํฐ ํ์ ๋ณ๊ฒฝ "์ฐ-..
๐ก ๋ค์ด๊ฐ๋ฉฐ Numpy ํจํค์ง์ where ํจ์๋ฅผ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐํ๋ ์์์ ํน์ ์กฐ๊ฑด์ ๋ง๋ ์ธ๋ฑ์ค๋ฅผ ์ฐพ๊ฑฐ๋, ํด๋น ์ธ๋ฑ์ค์ ๊ฐ์ ์ฝ๊ฒ ๋ฐ๊ฟ ์ ์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก numpy ํจํค์ง ์ค์น ๋ฐ import๋ ํ์์ ๋๋ค. !pip install numpy import numpy as np 1. ์กฐ๊ฑด์ ๋ง๋ ์ธ๋ฑ์ค ๋ฐํ ์๋์ ๊ฐ์ด ์กฐ๊ฑด๋ฌธ์ ์ ๋ ฅํ๋ฉด, ์กฐ๊ฑด์ ํด๋น๋๋ ์ธ๋ฑ์ค๋ฅผ ๋ฐํํฉ๋๋ค. np.where(์กฐ๊ฑด๋ฌธ) ์๋์ ๊ฐ์ ๋ฐ์ดํฐ์ ์ด ์์ ๋, THK ์นผ๋ผ ๋ด ๊ฐ์ด 30๋ณด๋ค ํฐ ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ์กฐํํด ๋ณด๋ฉด ์๋์ ๊ฐ์ต๋๋ค. np.where(30 < DATASET_RAW['THK']) 2. ์กฐ๊ฑด์ ๋ฐ๋ผ ๋ฐ์ดํฐ ์ธ์ฝ๋ฉ ์๋์ ๊ฐ์ด, ์กฐ๊ฑด๋ฌธ๊ณผ ํจ๊ป ์กฐ๊ฑด๋ฌธ์ด ์ฐธ ํน์ ๊ฑฐ์ง์ผ ๊ฒฝ์ฐ ๊ฐ๊ฐ ๋ฐ์ดํฐ๋ฅผ ๋ณํํ ๊ฐ์ ์ ๋ ฅํด ..
๐ก ๋ค์ด๊ฐ๋ฉฐ๋ฐ์ดํฐํ๋ ์ ๋ด ๋ฌธ์์ด ํ ๊ธ์๊น์ง ์๋ฒฝํ๊ฒ ์ผ์นํ๋ ์์๋ฅผ ์ฐพ๋์ง ํน์ ์ผ๋ถ ๊ธ์๋ผ๋ ์ผ์นํ๋ ์์๋ฅผ ์ฐพ์์ง์ ๋ฐ๋ผ ์ฌ์ฉํด์ผ ํ ํจ์๊ฐ ๋๋ฉ๋๋ค(์๋ ํ ์ฐธ๊ณ ).No.ํจ์ํ์ฉ๋ฐฉ์1replace()์๋ฒฝํ๊ฒ ์ผ์นํ๋ ๋จ์ด๋ฅผ ์ฐพ์ ๋ฐ๊พธ๋ ๊ฒฝ์ฐ2str.replace()์ผ๋ถ ๋จ์ด๋ผ๋ ์ผ์นํ๋ ๋จ์ด๋ฅผ ์ฐพ์ ๋ฐ๊พธ๋ ๊ฒฝ์ฐํจ์๋ณ๋ก ๊ฐ๊ฐ ์์ธํ ์์๋ด ๋๋ค.๐ ๋ชฉ์ฐจ1. replace ํจ์ 1) ๊ธฐ๋ณธ ์ฌ์ฉ๋ฐฉ๋ฒ 2) ์ฌ๋ฌ ๋ฌธ์์ด ๋์ ๋ณ๊ฒฝ 3) ํน์ ์นผ๋ผ ๋ฐ์ดํฐ ๋ณ๊ฒฝ 4) ์๋ณธ ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ต์ (inplace)2. str.replace ํจ์1) ๊ธฐ๋ณธ ์ฌ์ฉ๋ฐฉ๋ฒ๋ด์ฅ ํจ์ replace๋ ๋ฐ์ดํฐํ๋ ์ ๋ด ํน์ ๋ฌธ์์ด๊ณผ ์๋ฒฝํ๊ฒ ์ผ์นํ๋ ๋ฐ์ดํฐ๋ฅผ ๋ชจ๋ ์ฐพ์ ๋ณ๊ฒฝํฉ๋๋ค.df.replace('ํ์ฌ ..
๐ ๋ค์ด๊ฐ๋ฉฐ๋ณธ ํฌ์คํ ์์๋ Boxplot๋ฅผ ํด์ํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ด ๋๋ค.์๋ ๊ทธ๋ฆผ 1๊ณผ ๊ฐ์ด ์ธ๋ก์ถ์ ํน์ ๊ฐ์ ๋ฒ์๋ฅผ ๋ํ๋ด๊ณ , ์ด ๋ฒ์ ๋ด์์ ๋ฐ์ดํฐ๋ ์ฃผ๋ก ํ๋์ ๋ฐ์ค ์์ ๋ถํฌํฉ๋๋ค. ํ๋์ ๋ฐ์ค ๊ฐ์ด๋ฐ ๋ ธ๋์ ์ง์ ์ผ๋ก ํ์ํ ๋ถ๋ถ์ด ๋ฐ์ดํฐ์ ์ค์๊ฐ(Median)์ด ๋ฉ๋๋ค.๋ฐ์ค ์ต์๋จ์ ์ 3 ์ฌ๋ถ์์(Q3, 75th percentile), ์ตํ๋จ์ ์ 1 ์ฌ๋ถ์์(Q1, 25th percentile)์ ๋๋ค. ์ฌ๋ถ์์(Quantile)๋ ์ ์ฒด ๋ฐ์ดํฐ๋ฅผ ์ค๋ฆ์ฐจ์ ์ ๋ ฌํ ๋ค์ 25%์ฉ ๋์ผํ ๋น์จ๋ก ๋ฐ์ดํฐ๋ฅผ ๋๋ ๊ฒ์ ๋๋ค. ์ฆ, ์ 1 ์ฌ๋ถ์์(Q1)๋ ๊ฐ์ฅ ์์ ๋ฐ์ดํฐ๋ถํฐ ์ ์ฒด ์ค 25% ๋น์จ๋งํผ์ ๋ฐ์ดํฐ๋ฅผ(25%) ์๋ฏธํ๊ณ , ์ 3 ์ฌ๋ถ์์(Q3)๋ ์ค์๊ฐ(50%)์์๋ถํฐ 25% ๋น์จ๋งํผ์ ๋ฐ์ดํฐ๋ฅผ..
๐ ๋ชฉ์ฐจ Update Log 1. ์ฃผ์ ๊ธฐ๋ฅ 2. ํฌ๋กฌ ์ค์น 3. ์ ์ฒด ์ฝ๋ 4. ํจํค์ง ์ค์น 5. ์ฝ๋ ์ค๋ช ๐ Update Log ๐ Version 1.0.1 @ 2022-10-11 (1) ์ฝํ ์ธ ์กฐํ์ ๋ฐ ์ ๋ก๋์ผ ์ถ์ถ ๋ก์ง ์ถ๊ฐ Heo Jin ๋ ์์ฒญ์ฌํญ์ผ๋ก ์ถ๊ฐ ๋ฐ ํ ์คํธ ์๋ฃํ์์ต๋๋ค. 1. ์ฃผ์ ๊ธฐ๋ฅ ๋ณธ ํฌ์คํ ์์๋ ์ ํ๋ธ ๊ฒ์ ๊ฒฐ๊ณผ ์ฝํ ์ธ ์ ์ ๋ณด๋ฅผ ์์งํ๋ Scraper๋ฅผ ๊ฐ๋ฐํฉ๋๋ค. โป Scrap์ด๋?('๋๋ณด๊ธฐ' ํด๋ฆญ) ๋๋ณด๊ธฐ Scrap[์คํฌ๋ฉ]์ ์น ํ์ด์ง์์ ํน์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๋ ํ๋์ ๋งํฉ๋๋ค. ์ด์ฒ๋ผ Data Scraping์ ํ๋ ํ๋ก๊ทธ๋จ์ Data Scraper ๋๋ Web Scraper๋ผ๊ณ ๋ถ๋ฆ ๋๋ค. (1) ์์ง ๋ฐ์ดํฐ ์ข ๋ฅ - ์ฝํ ์ธ ์ ๋ชฉ - ์ฝํ ์ธ ๋งํฌ - ์กฐํ์ - ์ ..
๋ค์ด๊ฐ๋ฉฐ PySpark, ๋ฐ์ดํฐ ๋ถ์/์์ง๋์ด๋ง ํน์ ์ธ๊ณต์ง๋ฅ ๋ถ์ผ์ ๊ด์ฌ ์์ผ์ ๋ถ๋ค์ ํ ๋ฒ์ฏค ๋ค์ด๋ณด์ จ์ ๊ธฐ์ ์คํ์ด์ฃ . ์ด๋ฒ ํฌ์คํ ์์๋ PySaprk์ ๊ฐ๋ ๊ณผ ์ฃผ์ ๊ธฐ๋ฅ์ ์ดํดํ ์ ์๋๋ก ์ ๋ฆฌํ๊ณ ์ ํฉ๋๋ค. 1. PySpark ๊ฐ๋ PySpark๋ Python ํ๊ฒฝ์์ Apache Spark๋ฅผ ์ฌ์ฉํ ์ ์๋ ์ธํฐํ์ด์ค์ ๋๋ค. ์ฆ, PySpark๋ Spark์ฉ API์ด๊ธฐ ๋๋ฌธ์ PySpark ๊ฐ๋ ์ ์ดํดํ๋ ค๋ฉด Spark์ ๋ํด ์ดํดํด์ผ ํฉ๋๋ค. Apache Spark ๊ฐ๋ Apache Spark๋ ๋์ฉ๋์ ๋ฐ์ดํฐ๋ฅผ ๊ณ ์์ผ๋ก, ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํ๋ ๋น ๋ฐ์ดํฐ ๋ถ์ฐ์ฒ๋ฆฌ ํ๋ซํผ(Distributed Computing Platform)์ ๋๋ค. Apache Spark๋ ๋ฐ์ดํฐ๋ฅผ ํ๋๋์คํฌ๊ฐ ์๋ ๋ฉ๋ชจ๋ฆฌ์ ์บ..