250x250
Link
๋‚˜์˜ GitHub Contribution ๊ทธ๋ž˜ํ”„
Loading data ...
Notice
Recent Posts
Recent Comments
๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก๐Ÿ›  Machine Learning (36)

Data Science LAB

[Python] ๊ต์ฐจ ๋ถ„์„ (์นด์ด์ œ๊ณฑ ๊ฒ€์ •)

2022.08.20 - [Python] ์ด์› ๋ฐฐ์น˜ ๋ถ„์‚ฐ ๋ถ„์„ (Two-way ANOVA) [Python] ์ด์› ๋ฐฐ์น˜ ๋ถ„์‚ฐ ๋ถ„์„ (Two-way ANOVA) Two - way ANOVA ๋ถ„์‚ฐ ๋ถ„์„์—์„œ ํ•˜๋‚˜์˜ ์ข…์†๋ณ€์ˆ˜์— ๋Œ€ํ•œ ๋‘ ๊ฐœ์˜ ๋…๋ฆฝ๋ณ€์ˆ˜ A, B์˜ ์˜ํ–ฅ์„ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒ€์ฆ ๋ฐฉ๋ฒ• ๋‘ ๋…๋ฆฝ๋ณ€์ˆ˜ ์‚ฌ์ด์— ์ƒ๊ด€๊ด€๊ณ„๊ฐ€ ์žˆ๋Š” ์ง€๋ฅผ ์‚ดํŽด๋ณด๋Š” ๊ตํ˜ธ์ž‘์šฉ์— ๋Œ€ํ•œ ๊ฒ€ suhye.tistory.com ์•ž์„œ ํฌ์ŠคํŒ… ํ–ˆ๋˜ ANOVA ๋ถ„์„์€ ์ข…์†๋ณ€์ˆ˜๊ฐ€ ์—ฐ์†ํ˜• ๋ณ€์ˆ˜์˜€์ง€๋งŒ, ์นด์ด์ œ๊ณฑ ๊ฒ€์ •์€ ์ข…์†๋ณ€์ˆ˜๊ฐ€ ๋ฒ”์ฃผํ˜• ๋ณ€์ˆ˜์ธ ๊ฒฝ์šฐ์— ์‚ฌ์šฉํ•˜๋Š” ํ†ต๊ณ„ ๊ธฐ๋ฒ•์ด๋‹ค. ๊ต์ฐจ ๋ถ„์„์€ ๊ต์ฐจํ‘œ๋ฅผ ํ†ตํ•ด ๊ฐ ์…€์˜ ๊ด€์ฐฐ ๋นˆ๋„์™€ ๊ธฐ๋Œ€ ๋นˆ๋„๊ฐ„์˜ ์ฐจ์ด๋ฅผ ๊ฒ€์ •ํ•˜๋Š” ๊ธฐ๋ฒ•์ด๋‹ค. 1. ์ ํ•ฉ์„ฑ ๊ฒ€์ • : ๊ฐ ๋ฒ”์ฃผ์— ๋”ฐ๋ฅธ ๋ฐ์ดํ„ฐ์˜ ๋นˆ๋„ ๋ถ„ํฌ๊ฐ€ ์ด๋ก ์ ์œผ๋กœ ๊ธฐ๋Œ€ํ•˜๋Š” ๋ถ„ํฌ๋ฅผ ๋”ฐ๋ฅด..

[Python] ์ด์› ๋ฐฐ์น˜ ๋ถ„์‚ฐ ๋ถ„์„ (Two-way ANOVA)

Two - way ANOVA ๋ถ„์‚ฐ ๋ถ„์„์—์„œ ํ•˜๋‚˜์˜ ์ข…์†๋ณ€์ˆ˜์— ๋Œ€ํ•œ ๋‘ ๊ฐœ์˜ ๋…๋ฆฝ๋ณ€์ˆ˜ A, B์˜ ์˜ํ–ฅ์„ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋˜๋Š” ๊ฒ€์ฆ ๋ฐฉ๋ฒ• ๋‘ ๋…๋ฆฝ๋ณ€์ˆ˜ ์‚ฌ์ด์— ์ƒ๊ด€๊ด€๊ณ„๊ฐ€ ์žˆ๋Š” ์ง€๋ฅผ ์‚ดํŽด๋ณด๋Š” ๊ตํ˜ธ์ž‘์šฉ์— ๋Œ€ํ•œ ๊ฒ€์ฆ์ด ๋ฐ˜๋“œ์‹œ ์ง„ํ–‰๋˜์–ด์•ผ ํ•œ๋‹ค. ์ง‘๋‹จ์˜ ์ธก์ •์น˜๋Š” ๋…๋ฆฝ์  ์ •๊ทœ๋ถ„ํฌ๋ฅผ ๋”ฐ๋ฆ„ ๋“ฑ๋ถ„์‚ฐ์„ฑ ๊ท€๋ฌด๊ฐ€์„ค (H0) - ๋ณ€์ˆ˜ A์— ๋”ฐ๋ฅธ ์ข…์† ๋ณ€์ˆ˜์˜ ๊ฐ’์—๋Š” ์ฐจ์ด๊ฐ€ ์—†๋‹ค. - ๋ณ€์ˆ˜ B์— ๋”ฐ๋ฅธ ์ข…์† ๋ณ€์ˆ˜์˜ ๊ฐ’์—๋Š” ์ฐจ์ด๊ฐ€ ์—†๋‹ค. - ๋ณ€์ˆ˜ A, B์˜ ๊ตํ˜ธ์ž‘์šฉ์€ ์—†๋‹ค. ๋Œ€๋ฆฝ๊ฐ€์„ค (H1) - ๋ณ€์ˆ˜ A์— ๋”ฐ๋ฅธ ์ข…์† ๋ณ€์ˆ˜์˜ ๊ฐ’์—๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค. - ๋ณ€์ˆ˜ B์— ๋”ฐ๋ฅธ ์ข…์† ๋ณ€์ˆ˜์˜ ๊ฐ’์—๋Š” ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค. - ๋ณ€์ˆ˜ A, B์˜ ๊ตํ˜ธ์ž‘์šฉ์€ ์žˆ๋‹ค. ์˜ˆ์‹œ mtcars = pd.read_csv('../data/mtcars.csv') mtcars.head(..

[๋จธ์‹ ๋Ÿฌ๋‹/ML] ๊ฒฐ์ธก์น˜ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•

๊ฒฐ์ธก์น˜ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์€ ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๋กœ ๋‚˜๋‰œ๋‹ค. 1. ์‚ญ์ œ(Delete) 2. ๋Œ€์ฒด, ๋ณด๊ฐ„(Imputation) 1. ์‚ญ์ œ(Deletion) ๋จผ์ € ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹จ์ˆœํ•˜๊ฒŒ ๊ฒฐ์ธก์น˜๊ฐ€ ์กด์žฌํ•˜๋Š” ํ–‰์ด๋‚˜ ์—ด์„ ์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. ๊ฒฐ์ธก์น˜๊ฐ€ ์กด์žฌํ•˜๋Š” ์ „์ฒด ํ–‰์„ ์‚ญ์ œํ•œ๋‹ค. ๋ฐ์ดํ„ฐ์…‹์—์„œ ํ•ด๋‹น ์—ด์˜ 80% ์ด์ƒ์ด ๊ฒฐ์ธก์น˜๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉด ์ฃผ๋กœ ์‚ญ์ œํ•œ๋‹ค. 2. ๋ณด๊ฐ„(Imputation) 1. ๋‹จ์ˆœ๋Œ€์น˜(์ค‘์•™๊ฐ’, ํ‰๊ท ) : ๊ฒฐ์ธก์น˜๋ฅผ ํ•ด๋‹น ์—ด์˜ ํ‰๊ท ์ด๋‚˜ ์ค‘์•™๊ฐ’์œผ๋กœ ๋Œ€์ฒดํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค. 2. ๋‹จ์ˆœ๋Œ€์น˜(์ตœ๋นˆ๊ฐ’) : ๊ฒฐ์ธก์น˜๋ฅผ ํ•ด๋‹น ์—ด์˜ ์ตœ๋นˆ๊ฐ’์œผ๋กœ ๋Œ€์ฒดํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋ฒ”์ฃผํ˜• ๋ณ€์ˆ˜์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•˜๋‹ค. 3. KNN ์•Œ๊ณ ๋ฆฌ์ฆ˜(KNNImputer) : ๊ฒฐ์ธก์น˜์˜ ๊ฐ’์„ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๊ฐ’(feature similarity)๋ฅผ ์ ์šฉํ•˜์—ฌ ๋Œ€์ฒดํ•œ๋‹ค. ์ด..

[Python] ์ผ์› ๋ถ„์‚ฐ ๋ถ„์„(ANOVA)

๋ถ„์‚ฐ๋ถ„์„ ๋‘ ๊ฐœ ์ด์ƒ์˜ ์ง‘๋‹จ์—์„œ ๊ทธ๋ฃน ํ‰๊ท  ๊ฐ„ ์ฐจ์ด๋ฅผ ๊ทธ๋ฃน ๋‚ด ๋ณ€๋™์— ๋น„๊ตํ•˜์—ฌ ์‚ดํŽด๋ณด๋Š” ํ†ต๊ณ„ ๋ถ„์„ ๊ธฐ๋ฒ• ๋‘ ๊ฐœ ์ด์ƒ์˜ ์ง‘๋‹จ์˜ ํ‰๊ท  ์ฐจ์ด์— ๋Œ€ํ•œ ํ†ต๊ณ„์  ์œ ์˜์„ฑ ๊ฒ€์ • ์ผ์› ๋ฐฐ์น˜ ๋ถ„์‚ฐ ๋ถ„์„ ๋ถ„์‚ฐ๋ถ„์„์—์„œ ๋ฐ˜์‘๊ฐ’์— ๋Œ€ํ•œ ํ•˜๋‚˜์˜ ๋ฒ”์ฃผํ˜• ๋ณ€์ˆ˜์˜ ์˜ํ–ฅ์„ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉ๋จ ๋ชจ์ง‘๋‹จ์˜ ์ˆ˜์—๋Š” ์ œํ•œ์ด ์—†์œผ๋ฉฐ, ํ‘œ๋ณธ์˜ ์ˆ˜๋Š” ๊ฐ™์ง€ ์•Š์•„๋„ ๋จ F ๊ฒ€์ • ํ†ต๊ณ„๋Ÿ‰ ์‚ฌ์šฉ ๊ฐ ์ง‘๋‹จ์˜ ์ธก์ •์น˜๋Š” ๋…๋ฆฝ์ ์ด๋ฉฐ, ์ •๊ทœ๋ถ„ํฌ๋ฅผ ๋”ฐ๋ผ์•ผ ํ•จ ๊ฐ ์ง‘๋‹จ ์ธก์ •์น˜์˜ ๋ถ„์‚ฐ์€ ๊ฐ™๋‹ค๊ณ  ๊ฐ€์ •(๋“ฑ๋ถ„์‚ฐ์„ฑ) ์š”์ธ ์ œ๊ณฑํ•ฉ(SS) ์ž์œ ๋„(df) ํ‰๊ท ์ œ๊ณฑ(MS) ๋ถ„์‚ฐ๋น„(F) ์ฒ˜๋ฆฌ SSA k-1 MSA F = MSA/MSE ์˜ค์ฐจ SSE N-k MSE ์ „์ฒด SST N-1 ๊ท€๋ฌด๊ฐ€์„ค(H0) : k๊ฐœ์˜ ์ง‘๋‹จ ๊ฐ„ ๋ชจํ‰๊ท ์—๋Š” ์ฐจ์ด๊ฐ€ ์—†๋‹ค. ๋Œ€๋ฆฝ๊ฐ€์„ค(H1) : k๊ฐœ์˜ ์ง‘๋‹จ ๊ฐ„ ๋ชจํ‰๊ท ์ด ๋ชจ๋‘..

[Python] ๋…๋ฆฝ / ๋Œ€์‘ ํ‘œ๋ณธ t ๊ฒ€์ •

๋Œ€์‘ ํ‘œ๋ณธ vs ๋…๋ฆฝ ํ‘œ๋ณธ ๋Œ€์‘ ํ‘œ๋ณธ : ๋ถ€๋ถ€ 100์Œ์„ ๋ฝ‘์•„ ๋‚จํŽธ 100๋ช…๊ณผ ์•„๋‚ด 100๋ช…์œผ๋กœ ์ง‘๋‹จ ๋น„๊ต ๋…๋ฆฝ ํ‘œ๋ณธ : ๋ฌด์ž‘์œ„๋กœ ๋‚จ์ž 100๋ช…, ์—ฌ์ž 100๋ช…์„ ๋ฝ‘์•„ ๋น„๊ต ๋‘ ์ง‘๋‹จ์ด ๋…๋ฆฝ์ ์ด์–ด์•ผ ๋…๋ฆฝ ํ‘œ๋ณธ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋“ฑ๋ถ„์‚ฐ ๊ฒ€์ • ๋ฐ˜๋“œ์‹œ ๋“ฑ๋ถ„์‚ฐ ๊ฒ€์ • ํ›„์— ๋…๋ฆฝํ‘œ๋ณธ t๊ฒ€์ •์„ ์ˆ˜ํ–‰ํ•ด์•ผํ•œ๋‹ค. ๊ท€๋ฌด๊ฐ€์„ค (H0) : ๋‘ ์ง‘๋‹จ์˜ ๋ฐ์ดํ„ฐ๋Š” ๋“ฑ๋ถ„์‚ฐ์„ฑ์„ ๋งŒ์กฑํ•จ ๋Œ€๋ฆฝ๊ฐ€์„ค (H1) : ๋‘ ์ง‘๋‹จ์˜ ๋ฐ์ดํ„ฐ๋Š” ๋“ฑ๋ถ„์‚ฐ์„ฑ์„ ๋งŒ์กฑํ•˜์ง€ ์•Š์Œ p-value๊ฐ’์ด 0.05๋ณด๋‹ค ์ž‘์œผ๋ฉด ๊ท€๋ฌด๊ฐ€์„ค ๊ธฐ๊ฐ => ๋‘ ์ง‘๋‹จ์€ ๋“ฑ๋ถ„์‚ฐ์„ฑ์„ ๋งŒ์กฑํ•˜์ง€ ์•Š์Œ import numpy as np from scipy.stats import levene a = np.random.normal(10,1,100) b = np.random.normal(10,1,100..