๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก์ „์ฒด ๊ธ€ (352)

DATA101

PySpark ๊ฐœ๋… ๋ฐ ์ฃผ์š” ๊ธฐ๋Šฅ(+Apache Spark)

๋“ค์–ด๊ฐ€๋ฉฐ PySpark, ๋ฐ์ดํ„ฐ ๋ถ„์„/์—”์ง€๋‹ˆ์–ด๋ง ํ˜น์€ ์ธ๊ณต์ง€๋Šฅ ๋ถ„์•ผ์— ๊ด€์‹ฌ ์žˆ์œผ์‹  ๋ถ„๋“ค์€ ํ•œ ๋ฒˆ์ฏค ๋“ค์–ด๋ณด์…จ์„ ๊ธฐ์ˆ  ์Šคํƒ์ด์ฃ . ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” PySaprk์˜ ๊ฐœ๋…๊ณผ ์ฃผ์š” ๊ธฐ๋Šฅ์„ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ์ •๋ฆฌํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. 1. PySpark ๊ฐœ๋… PySpark๋Š” Python ํ™˜๊ฒฝ์—์„œ Apache Spark๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค. ์ฆ‰, PySpark๋Š” Spark์šฉ API์ด๊ธฐ ๋•Œ๋ฌธ์— PySpark ๊ฐœ๋…์„ ์ดํ•ดํ•˜๋ ค๋ฉด Spark์— ๋Œ€ํ•ด ์ดํ•ดํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Apache Spark ๊ฐœ๋… Apache Spark๋Š” ๋Œ€์šฉ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณ ์†์œผ๋กœ, ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋น…๋ฐ์ดํ„ฐ ๋ถ„์‚ฐ์ฒ˜๋ฆฌ ํ”Œ๋žซํผ(Distributed Computing Platform)์ž…๋‹ˆ๋‹ค. Apache Spark๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋“œ๋””์Šคํฌ๊ฐ€ ์•„๋‹Œ ๋ฉ”๋ชจ๋ฆฌ์— ์บ..

[Jupyter Notebook] ํŒŒ์ผ ์ €์žฅ ์‹œ forbidden ์—๋Ÿฌ ํ•ด๊ฒฐํ•˜๊ธฐ

โ‰๏ธ ์—๋Ÿฌ ์ƒํ™ฉ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ์ž˜ ์‚ฌ์šฉํ•˜๋˜ ์ค‘ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ์ฐฝ ์šฐ์ธก ์ƒ๋‹จ์— forbidden์ด๋ผ๋Š” ๋ฌธ๊ตฌ๊ฐ€ ๋‚˜์˜ค๋ฉฐ ์ €์žฅ์ด ์ œ๋Œ€๋กœ ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ„ฐ๋ฏธ๋„์—์„œ ํ™•์ธํ•ด ๋ณด๋‹ˆ ์ €์žฅํ•  ๋•Œ๋งˆ๋‹ค ์•„๋ž˜์™€ ๊ฐ™์€ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€๊ฐ€ ๋‚˜์˜ค๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๐Ÿ“ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€ ๐Ÿ‘จ‍๐Ÿ’ป ์›์ธ ์ € ๊ฐ™์€ ๊ฒฝ์šฐ์—๋Š” ํฌ๋กฌ ์ฟ ํ‚ค๋ฅผ ์‚ญ์ œํ•œ ๊ฒƒ์ด ์›์ธ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฌธ์„œ์—์„œ๋„ ์ €์™€ ๊ฐ™์€ ์ƒํ™ฉ์—์„œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ์žˆ๋„ค์š”. ์›์ธ์€ ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ค‘ ํ•˜๋‚˜๋กœ, ๋ชจ๋‘ ์ €์™€ ๊ฐ™์€ ์›์ธ์€ ์•„๋‹ ์ˆ˜ ์žˆ๋‹ค๋Š” ์  ์•Œ์•„์ฃผ์„ธ์š” :) ๐Ÿ’ก ํ•ด๊ฒฐ๋ฐฉ๋ฒ• ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋งค์šฐ ๊ฐ„๋‹จํ•ด์š”. ํฌ๊ฒŒ 2๊ฐ€์ง€ ์ ˆ์ฐจ๋ฉด ๋ฉ๋‹ˆ๋‹ค. [Step 1] ์—๋Ÿฌ ๋‚œ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ์„ ๋ธŒ๋ผ์šฐ์ € ์ƒˆ๋กœ์šด ํƒญ์— ๋„์›๋‹ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์€ ํ™”๋ฉด์ด ์ถœ๋ ฅ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. [Step 2] ํ„ฐ๋ฏธ๋„์— ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ๋ฌธ์ œ๊ฐ€..

SW ๊ฐœ๋ฐœ/Python 2022. 2. 8. 21:29
[Python] 'Unnamed: 0" ์—†์ด ์—‘์…€ ํŒŒ์ผ ์ฝ์–ด์˜ค๊ธฐ

๋ณ€๊ฒฝ ์ „ ํŒŒ์ด์ฌ pandas ํŒจํ‚ค์ง€๋กœ ์—‘์…€ ํŒŒ์ผ์„ ๋ถˆ๋Ÿฌ์˜ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ด ํŒŒ์ผ์—๋Š” ์—†๋˜ ์นผ๋Ÿผ์ด ์ž๋™์œผ๋กœ ์ถ”๊ฐ€๋˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋‹จ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถˆ๋Ÿฌ์˜จ ํ›„์— ํ•ด๋‹น ์นผ๋Ÿผ์„ ์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์ง€๋งŒ, ๋ฒˆ๊ฑฐ๋กœ์šด ์ž‘์—…์„ 2๋ฒˆ์— ํ•  ํ•„์š”๋Š” ์—†๊ฒ ์ฃ . ๊ทธ๋ž˜์„œ ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ถˆ๋Ÿฌ์˜ฌ ๋•Œ๋ถ€ํ„ฐ ํ•ด๋‹น ์นผ๋Ÿผ์ด ์ž๋™์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ํ›„ "Unnamed: 0" ์นผ๋Ÿผ ์—†์ด ํŒŒ์ผ์„ ๋ถˆ๋Ÿฌ์˜ค๋Š” ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. read ๋ฉ”์†Œ๋“œ ์‹คํ–‰ ์‹œ index_col ์˜ต์…˜ ๊ฐ’์„ 0์œผ๋กœ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. dataset = pd.read_csv("๋ฐ์ดํ„ฐ์…‹ ๊ฒฝ๋กœ", index_col = 0) dataset.head() ์œ„์™€ ๊ฐ™์ด ์˜ต์…˜์„ ์„ค์ •ํ•˜๋ฉด ์ด์ œ ํ•ด๋‹น ์นผ๋Ÿผ("Unnamed: 0") ์—†์ด ๋ฐ์ดํ„ฐ๊ฐ€..

[Python] ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์˜ ํŠน์ • ์นผ๋Ÿผ ์œ„์น˜ ๋ฐ”๊พธ๊ธฐ

๋ณ€๊ฒฝ ๋ฐฉ๋ฒ• ๋ณ€๊ฒฝํ•˜๊ณ ์ž ํ•˜๋Š” ์นผ๋Ÿผ๋“ค์˜ ์ˆœ์„œ๋Œ€๋กœ ์•„๋ž˜์™€ ๊ฐ™์ด ๋‚˜์—ดํ•˜์—ฌ ์ž‘์„ฑํ•ด ์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ = ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„[['์นผ๋Ÿผ1', '์นผ๋Ÿผ2', ...]] ๋ณ€๊ฒฝ ์ „ ์•„๋ž˜ ์˜ˆ์‹œ ๋ฐ์ดํ„ฐ์…‹์—์„œ๋Š” appName, review_raw, date_full, date_year ์นผ๋Ÿผ ์ˆœ์„œ์ž…๋‹ˆ๋‹ค. dataset.head() ๋งŒ์•ฝ date_full, date_year ์นผ๋Ÿผ์„ review_raw ์•ž์œผ๋กœ ์ด๋™ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•˜๋ฉด ๋ ๊นŒ์š”? ๋ณ€๊ฒฝ ํ›„ date_full, date_year ์นผ๋Ÿผ์„ review_raw ์นผ๋Ÿผ๋ณด๋‹ค ์•ž์„œ ์ž…๋ ฅํ•˜์˜€์Šต๋‹ˆ๋‹ค. dataset = dataset[['appName', 'date_full', 'date_year', 'review_raw']] dataset.head() ์œ„์™€ ๊ฐ™์ด ์ •์ƒ์ ์œผ๋กœ ์นผ๋Ÿผ ์ˆœ์„œ๊ฐ€..

[Python] map, lambda ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•œ ๋ฐ์ดํ„ฐ ํ•ธ๋“ค๋ง ๋ฐฉ๋ฒ• ๋ฐ ์ด์ 

๐Ÿ”ฅ ๋ชฉํ‘œ ์˜ค๋Š˜์€ ํŒŒ์ด์ฌ map ํ•จ์ˆ˜์™€ lambda ํ•จ์ˆ˜๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ํ•ธ๋“ค๋งํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ด์ ์— ๋Œ€ํ•ด ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ๐Ÿ‘จ‍๐Ÿ’ป ๋ฌธ์ œ ์ƒํ™ฉ ์˜ˆ์‹œ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„ ๋‚ด ํŠน์ • ์นผ๋Ÿผ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์–ด๋– ํ•œ ์—ฐ์‚ฐ์„ ๊ฑฐ์ณ ์ƒˆ๋กœ์šด ๊ฐ’๋“ค๋กœ ์ด๋ฃจ์–ด์ง„ ์นผ๋Ÿผ์„ ์ƒˆ๋กญ๊ฒŒ ์ƒ์„ฑํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ• ๊นŒ์š”? ๊ตฌ์ฒด์ ์ธ ์˜ˆ์‹œ์™€ ํ•จ๊ป˜ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์™€ ๊ฐ™์ด dataset์ด๋ผ๋Š” ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์— yyyymmdd ํ˜•์‹์˜ date ์ •๋ณด๊ฐ€ ๋‹ด๊ธด date_full ์นผ๋Ÿผ์ด ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ, ์•„๋ž˜์™€ ๊ฐ™์ด ์—ฐ๋„ ์ •๋ณด๋งŒ ์ถ”์ถœํ•˜์—ฌ date_year๋ผ๋Š” ์นผ๋Ÿผ์— ์ƒˆ๋กญ๊ฒŒ ์ €์žฅํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ• ๊นŒ์š”? ๐Ÿ’ก ํ•ด๊ฒฐ๋ฐฉ๋ฒ• 1: ๋ฐ˜๋ณต๋ฌธ ํ™œ์šฉ(Bad Case โŒ) ๋ฐ˜๋ณต๋ฌธ์„ ํ™œ์šฉํ•˜์—ฌ date_full ์นผ๋Ÿผ ๋‚ด ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๊ฐœ์”ฉ ์ ‘๊ทผํ•˜์—ฌ ..

[Python] ๊ฐ€์ƒํ™˜๊ฒฝ ๋‚ด ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•(venv ํ™œ์šฉ)

๋ณธ ํฌ์ŠคํŒ…์—์„œ๋Š” venv๋ฅผ ํ™œ์šฉํ•˜์—ฌ Python ๊ฐ€์ƒํ™˜๊ฒฝ ๋‚ด ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ๊ด€๋ฆฌ ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.๐Ÿ“š ๋ชฉ์ฐจ1. ๊ฐ€์ƒํ™˜๊ฒฝ ํ•„์š”์„ฑ 2. venv ํ™œ์„ฑํ™” 3. ํŒจํ‚ค์ง€ ์„ค์น˜ 4. ์„ค์น˜๋œ ํŒจํ‚ค์ง€ ๋ฆฌ์ŠคํŠธ ์ €์žฅ 5. ํŒจํ‚ค์ง€ ์ผ๊ด„ ์„ค์น˜1. ๊ฐ€์ƒํ™˜๊ฒฝ ํ•„์š”์„ฑ๊ฐ€์ƒ ํ™˜๊ฒฝ์€ ํ”„๋กœ์ ํŠธ๋งˆ๋‹ค ๊ฒฉ๋ฆฌ๋œ ํ™˜๊ฒฝ(์ฆ‰, ๊ฐ€์ƒ ํ™˜๊ฒฝ)์„ ์ƒ์„ฑํ•จ์œผ๋กœ์จ ํ”„๋กœ์ ํŠธ๋ณ„๋กœ ํŒจํ‚ค์ง€๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ์œ„ํ•จ์ž…๋‹ˆ๋‹ค. ํŒŒ์ด์ฌ์„ ์ž…๋ฌธํ•˜๊ธฐ๋กœ ๋งˆ์Œ ๋จน์œผ์…จ๋‹ค๋ฉด ์ง€๊ธˆ๋ถ€ํ„ฐ๋ผ๋„ ๊ฐ€์ƒ ํ™˜๊ฒฝ ์‚ฌ์šฉ์„ ๊ถŒ์žฅํ•ด ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ฐ€์ƒ ํ™˜๊ฒฝ์˜ ํ•„์š”์„ฑ์— ๋Œ€ํ•œ ์ƒ์„ธํ•œ ์„ค๋ช…์€ ์ด ํฌ์ŠคํŒ…์„ ์ฐธ๊ณ ํ•ด ์ฃผ์„ธ์š”.2. venv ํ™œ์„ฑํ™”๋จผ์ € ์ƒ์„ฑํ•ด ๋‘์—ˆ๋˜ venv๋ฅผ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. venv ๊ฐ€์ƒํ™˜๊ฒฝ ์ƒ์„ฑ ๋ฐ ํ™œ์„ฑํ™” ๋ฐฉ๋ฒ•์€ ์ด๊ณณ์„ ์ฐธ๊ณ ํ•ด ์ฃผ์„ธ์š”. ์ฐธ๊ณ ๋กœ, Python 3.5 ์ดํ›„๋ถ€ํ„ฐ๋Š” venv๊ฐ€ ํŒŒ์ด์ฌ ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ..

SW ๊ฐœ๋ฐœ/Python 2022. 2. 3. 07:53
[Python] ๊ฐ€์ƒํ™˜๊ฒฝ ์ƒ์„ฑ, ํ™œ์„ฑํ™”, ๋น„ํ™œ์„ฑํ™”, ์‚ญ์ œ ๋ฐฉ๋ฒ•(venv ํ™œ์šฉ)

๐Ÿ“Œ Text ๋น…๋ฐ์ดํ„ฐ๋ถ„์„ ํ”Œ๋žซํผ ๋ฒ ํƒ€ํ…Œ์ŠคํŠธ ์ฐธ๊ฐ€์ž ๋ชจ์ง‘ ์ค‘!(๋„ค์ด๋ฒ„ํŽ˜์ด 4๋งŒ ์› ์ „์› ์ง€๊ธ‰) ๐Ÿ‘‹ ์•ˆ๋…•ํ•˜์„ธ์š”, ์ฝ”๋”ฉ์ด ํ•„์š” ์—†๋Š” AI/๋น…๋ฐ์ดํ„ฐ ๋ถ„์„ All in One ํ”Œ๋žซํผ  ๊ฐœ๋ฐœํŒ€์ž…๋‹ˆ๋‹ค.๐Ÿ˜Š ์ €ํฌ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์‹œ๊ณ  ๊ฒฝํ—˜๋‹ด์„ ๋“ค๋ ค์ฃผ์„ธ์š” :)๐Ÿ’ธ ์ฐธ์—ฌํ•ด ์ฃผ์‹  "๋ชจ๋“ " ๋ถ„๋“ค๊ป˜ ๋„ค์ด๋ฒ„ํŽ˜์ด 4๋งŒ ์› ์ฟ ํฐ์„ ์ง€๊ธ‰ํ•ด ๋“œ๋ฆฝ๋‹ˆ๋‹ค.๐Ÿ‘จ‍๐Ÿ’ป ์ฐธ์—ฌ ํฌ๋ง ์‹œ ์นดํ†กํ”Œ๋Ÿฌ์Šค์นœ๊ตฌ 1:1 ์ฑ„ํŒ… or ์ธ์Šคํƒ€๊ทธ๋žจ DM ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค :)๐Ÿ“† ์ฐธ์—ฌ๊ธฐ๊ฐ„ : 11/25(์›”)~11/29(๊ธˆ) 11:00~21:00 ์ค‘ ํƒ1 (1์‹œ๊ฐ„ 1ํƒ€์ž„)๐Ÿ‘‰ ์ฐธ์—ฌ์žฅ์†Œ : ๊ฐ•๋‚จ์—ญ ์ธ๊ทผ ์Šคํ„ฐ๋””์นดํŽ˜ ๋ฏธํŒ…Room๐Ÿ“ ์†Œ์š”์‹œ๊ฐ„ : ์ด 40๋ถ„ ๋‚ด์™ธ(์„œ๋น„์Šค ์ฒดํ—˜ ๋ฐ ์ธํ„ฐ๋ทฐ ํฌํ•จ)โœ… ์ฐธ๊ฐ€์กฐ๊ฑด : Text ๋น…๋ฐ์ดํ„ฐ ๋ถ„์„ ์—…๋ฌด ๊ฒฝํ—˜์ž๐Ÿ‘‰ ์ฐธ๊ฐ€ ๊ฐ€๋Šฅ์ผ์ • ์กฐํšŒํ•˜๊ธฐ : ht..

SW ๊ฐœ๋ฐœ/Python 2022. 2. 2. 18:53