๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์–ธ์–ด/Python ๊ธฐ์ดˆ

ํŒŒ์ด์ฌ ๋ฌธ๋ฒ• 6

by ์ œ๋ฃฝ 2023. 7. 20.
728x90
๋ฐ˜์‘ํ˜•

 2022. 1. 25

 

1. plot ๋ฉ”์†Œ๋“œ

: ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ”Œ๋กฏ์„ ๊ทธ๋ฆด ์ˆ˜ ์žˆ๋‹ค.

โ€‹

plot[.line]( ), plot([kind=‘line’]) : ์„  ๊ทธ๋ž˜ํ”„

plot.bar( ), plot(kind=‘bar’) : ๋ง‰๋Œ€ ๊ทธ๋ž˜ํ”„

plot.pie( ), plot(kind=‘pie’) : ์›ํ˜• ๊ทธ๋ž˜ํ”„

plot.hist( ), plot(kind=‘hist’) : ํžˆ์Šคํ† ๊ทธ๋žจ

plot.kde( ), plot(kind=‘kde’) : ์ปค๋„ ๋ฐ€๋„ ํ•จ์ˆ˜

plot.box( ), plot(kind=‘box’) : ์ƒ์ž ๊ทธ๋ฆผ

plot.scatter( ), plot(kind=‘scatter’) : ์‚ฐ์ ๋„

plot.area( ), plot(kind=‘area’) : ๋ฉด์  ๊ทธ๋ž˜ํ”„

โ€‹

โ€‹

* plt.show( )

: ๊ทธ๋ž˜ํ”„๋ฅผ ํ™”๋ฉด์— ํ‘œ์‹œํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋‹ค.

Jupyter๋‚˜ IPython์—์„œ๋Š” ์…€ ๋‹จ์œ„๋กœ ์ž๋™์œผ๋กœ ํ‘œ์‹œ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ˜ธ์ถœํ•  ํ•„์š”๊ฐ€ ์—†์ง€๋งŒ

์ผ๋ฐ˜ ํŒŒ์ด์ฌ ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋กœ ๊ฐ€๋™๋˜๋Š” ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•˜์—ฌ ํ•ญ์ƒ ๋งˆ์ง€๋ง‰์— ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•œ๋‹ค.

โ€‹

* ๊ทธ๋ฆผ ๋ฒ”์œ„ ์ง€์ •

: ํ”Œ๋กฏ ๊ทธ๋ฆผ์„ ๋ณด๋ฉด ๋ช‡๋ช‡ ์ ๋“ค์€ ๊ทธ๋ฆผ์˜ ๋ฒ”์œ„ ๊ฒฝ๊ณ„์„ ์— ์žˆ์–ด์„œ ์ž˜ ๋ณด์ด์ง€ ์•Š๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค.

๊ทธ๋ฆผ์˜ ๋ฒ”์œ„๋ฅผ ์ˆ˜๋™์œผ๋กœ ์ง€์ •ํ•˜๋ ค๋ฉด xlim ๋ช…๋ น๊ณผ ylim ๋ช…๋ น์„ ์‚ฌ์šฉํ•œ๋‹ค.

์ด ๋ช…๋ น๋“ค์€ ๊ทธ๋ฆผ์˜ ๋ฒ”์œ„๊ฐ€ ๋˜๋Š” x์ถ•, y์ถ•์˜ ์ตœ์†Œ๊ฐ’๊ณผ ์ตœ๋Œ€๊ฐ’์„ ์ง€์ •ํ•œ๋‹ค.

โ€‹

* ํ‹ฑ ์„ค์ •

: ํ”Œ๋กฏ์ด๋‚˜ ์ฐจํŠธ์—์„œ ์ถ• ์ƒ์˜ ์œ„์น˜ ํ‘œ์‹œ ์ง€์ ์„ ํ‹ฑ(tick)์ด๋ผ๊ณ  ํ•˜๊ณ  ์ด ํ‹ฑ์— ์จ์ง„ ์ˆซ์ž ํ˜น์€ ๊ธ€์ž๋ฅผ ํ‹ฑ ๋ผ๋ฒจ(tick label)์ด๋ผ๊ณ  ํ•œ๋‹ค. ํ‹ฑ์˜ ์œ„์น˜๋‚˜ ํ‹ฑ ๋ผ๋ฒจ์€ Matplotlib์ด ์ž๋™์œผ๋กœ ์ •ํ•ด์ฃผ์ง€๋งŒ ๋งŒ์•ฝ ์ˆ˜๋™์œผ๋กœ ์„ค์ •ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด xticks ๋ช…๋ น์ด๋‚˜ yticks ๋ช…๋ น์„ ์‚ฌ์šฉํ•œ๋‹ค.

โ€‹

* ๊ทธ๋ฆฌ๋“œ ์„ค์ •

: ํ‹ฑ ์œ„์น˜๋ฅผ ์ž˜ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด ๊ทธ๋ฆฌ๋“œ ์„ (grid line)์„ ๋‚˜ํƒ€๋‚ด๋ ค๋ฉด grid(True)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

โ€‹

* ๋ผ๋ฒจ, ํƒ€์ดํ‹€

: ํ”Œ๋กฏ์˜ x์ถ• ์œ„์น˜์™€ y์ถ• ์œ„์น˜์—๋Š” xlabel, ylabel ๋ช…๋ น์„ ์‚ฌ์šฉํ•ด ๋ผ๋ฒจ(label)๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋˜ํ•œ, title ๋ช…๋ น์œผ๋กœ ์ œ๋ชฉ(title)์„ ๋ถ™์ผ ์ˆ˜ ์žˆ๋‹ค.

โ€‹

๋ฒ”๋ก€

: ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ผ์ธ ํ”Œ๋กฏ์„ ๊ทธ๋ฆฌ๋Š” ๊ฒฝ์šฐ์—๋Š” ๊ฐ ์„ ์ด ๋ฌด์Šจ ์ž๋ฃŒ๋ฅผ ํ‘œ์‹œํ•˜๋Š”์ง€๋ฅผ ๋ณด์—ฌ์ฃผ๊ธฐ ์œ„ํ•ด legend ๋ช…๋ น์œผ๋กœ ๋ฒ”๋ก€(legend)๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค. ๋ฒ”๋ก€์˜ ์œ„์น˜๋Š” ์ž๋™์œผ๋กœ ์ •ํ•ด์ง€์ง€๋งŒ ์ˆ˜๋™์œผ๋กœ

์„ค์ •ํ•˜๊ณ  ์‹ถ์œผ๋ฉด loc์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ ์ธ์ˆ˜์—๋Š” ๋ฌธ์ž์—ด ํ˜น์€ ์ˆซ์ž๊ฐ€ ๋“ค์–ด๊ฐ„๋‹ค.

์ฐธ๊ณ ) ์™ผ์ชฝ ์œ„์— ์žˆ๋Š” ๋„ค๋ชจ๋ฅผ ๋งํ•จ

# ์ถ”๊ฐ€ ์‚ฌํ•ญ

โ€‹

+ plt.bar(x, y)

+ plt.pie(sizes, explode, labels, colors, autopct, shadow, startangle)

โ€‹

2. Seaborn

: Matplotlib์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์–‘ํ•œ ์ƒ‰์ƒ ํ…Œ๋งˆ์™€ ํ†ต๊ณ„์šฉ ์ฐจํŠธ ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•œ ์‹œ๊ฐํ™” ํŒจํ‚ค์ง€์ด๋‹ค. ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋Šฅ์€ Matplotlib ํŒจํ‚ค์ง€์— ์˜์กดํ•˜๋ฉฐ ํ†ต๊ณ„ ๊ธฐ๋Šฅ์€ Statsmodels ํŒจํ‚ค์ง€์— ์˜์กดํ•œ๋‹ค.

โ€‹

+ Count plot

: Count plot ๋ช…๋ น์„ ์‚ฌ์šฉํ•˜๋ฉด ์นดํ…Œ๊ณ ๋ฆฌ ๊ฐ’ ๋ณ„๋กœ ๋ฐ์ดํ„ฐ๊ฐ€ ์–ผ๋งˆ๋‚˜ ์žˆ๋Š”์ง€ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ๋‹ค.

: sns.countplot(x, hue, data)

-> ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์œผ๋กœ ํ‘œ ๋งŒ๋“ค๊ณ ์ž ํ•  ๋•Œ ์‚ฌ์šฉ!!

โ€‹

์‹œ๊ฐํ™” ํŒจํ‚ค์ง€๋„ ๋‹ค์–‘ํ•˜๊ณ , ๋‚ด์šฉ๋“ค๋„ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ๊ณผ์ œํ•˜๋ฉด์„œ ๋‚ด์šฉ ์ค์คํ•˜๋Š”๊ฑธ๋กœ ํ• ๊ฒŒ์š”

โ€‹

--------------6์ฃผ์ฐจ ๊ณผ์ œ ํ”ผ๋“œ๋ฐฑ-----------------

โ€‹

1.

๋‚ด๊ฐ€ ํ‘ผ๊ฑด ๊ทธ๋ƒฅ ๋‹ค ์จ์คฌ์—ˆ๋Š”๋ฐ

โ€‹

๊ทธ๋ƒฅ visitors['๋ฐฉ๋ฌธ๊ฐ์ˆ˜'] ์ด๋ ‡๊ฒŒ ์ ์œผ๋ฉด ์‰ฝ๊ฒŒ ๊ทธ๋ ค์ง€๋Š”..ใ…‹

โ€‹

2.

x์ถ•์˜ ๋ฒ”์œ„ ์„ค์ • range๋กœ ํ•ด์ค„ ์ˆ˜ ์žˆ๋‹ค๋Š” ์‚ฌ์‹ค

โ€‹

+

โ€‹

display -> x, plt.show() -> o

โ€‹

display(setosa)๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ณด์—ฌ์ค„๋ ค๊ณ  ํ•œ ๊ฑฐ ๊ฐ™์•„ ํ•˜์ง€๋งŒ ๋ชจ๋“  ์‹œ๊ฐํ™”๋Š” plt.show()๋ฅผ ์‚ฌ์šฉํ•ด์ฃผ์„ธ์š”

โ€‹

์ด๊ฑฐ๋Š” ์ฐธ๊ณ ๋กœ plt.show()๋Š” ํ™”๋ฉด์— ํ‘œ์‹œ ๊ธฐ๋Šฅ์„ ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ์—์„œ๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์•„๋„ ํ™”๋ฉด์— ํ‘œ์‹œ๋ฅผ ํ•ด์ค๋‹ˆ๋‹ค!

โ€‹

3.

์˜์ƒ ์บก์ฒ˜

figure ํ•จ์ˆ˜๋Š” ๋„ํ™”์ง€๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋จ. ๊ทธ๋‹ˆ๊นŒ ๊ฐ€๋กœ 12, ์„ธ๋กœ4๋ผ๋Š” ๋„ํ™”์ง€๋ฅผ ์ƒ์„ฑํ•ด๋ผ์˜ ์˜๋ฏธ

โ€‹

๊ทธ๋ฆฌ๊ณ  subplot ๊ฐ™์€ ๊ฒฝ์šฐ, (1,2,1) -> 1ํ–‰ 2์—ด์˜ ์นธ์„ ๋งŒ๋“ค์–ด์ฃผ๊ณ , ์ฒซ๋ฒˆ์งธ ์นธ์— ๊ทธ๋ฆผ์„ ๋„ฃ์–ด๋ผ.

์ฆ‰ 2๊ฐœ์˜ ์นธ์„ ๋‚˜๋ˆ ์„œ ๊ทธ๋ž˜ํ”„ 2๊ฐœ๋ฅผ ์‚ฝ์ž…ํ•˜๊ฒ ๋‹ค๋Š” ๋ง์ด๊ฒ ์ฃ ?

countplot -> seaborn ํŒจํ‚ค์ง€ ์•ˆ์— ์žˆ๋Š”..

๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„์œผ๋กœ ํ‘œ ๋งŒ๋“ค ๋•Œ ์‚ฌ์šฉํ•˜๋ฉด ๋จ. ๋ฐ์ดํ„ฐ๋Š” cafe์— ํ•ด๋‹นํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ™œ์šฉํ•ด๋ผ!

๋‚˜๋จธ์ง€๋Š” ์ œ๋ชฉ์ด๋ž‘, y๋ฒ”์œ„ ์ด๋Ÿฐ๊ฑฐ ์จ์ฃผ๋Š”

๋งˆ์ง€๋ง‰์— plt.show()

ํ•ด์ค„ ๊ฒƒ.

โ€‹

+) countplot

โ€‹

plt ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ

value_counts๋ฅผ ์จ์ฃผ๋ฉด ๋จ. ์•„์ฃผ ๊ฐ„๋‹จ..

โ€‹

4.

โ€‹

ํ•˜๋‚˜ํ•˜๋‚˜ ๋”ฐ๋กœ ํ•ด์ค„ ํ•„์š” ์—†์Œ!

โ€‹

๊ทธ๋ƒฅ interest์— +3์„ ํ•˜๋˜์ง€ +5๋ฅผ ํ•ด์ฃผ๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ์™„๋ฃŒ!

โ€‹

์ง€๊ธˆ x์ถ•์ด 0๋ถ€ํ„ฐ ๋˜์–ด์žˆ๋Š”๋ฐ 1๋ถ€ํ„ฐ ํ•ด์ฃผ๋ ค๋ฉด set_index ํ™œ์šฉํ•ด์„œ ์„ค์ •์„ ํ•ด์ฃผ๋ฉด ๋จ!!!!

1๋ถ€ํ„ฐ 10๊นŒ์ง€ ํ•ด๋‹ฌ๋ผ

โ€‹

โ€‹

+

๊ทธ๋ž˜ํ”„๊ฐ€ ์•ˆ๋‚˜์™”๋˜ ๊ฐ€์žฅ ํฐ ์ด์œ :

y๊ฐ’ ๋ฒ”์œ„๊ฐ€ ๋งž์ง€ ์•Š์Œ.

e^6์ด ๋‹จ์œ„๊ฐ’์ด๋ผ์„œ yticks๋ฅผ ๋„ˆ๊ฐ€ 1~2๋กœ ์„ค์ •ํ•ด์คฌ๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ ๊ฐ’๋“ค์ด ์ด ๋ฒ”์œ„์•ˆ์— ํ•ด๋‹นํ•˜์ง€ ์•Š๊ฒŒ๋จ!

๊ทธ๋ž˜์„œ ์•ˆ๊ทธ๋ ค์กŒ๋˜ ๊ฒƒ.

โ€‹

5.

horizontalalignment='center' ์‚ฌ์šฉํ•ด์ฃผ๋ฉด ๊ฐ€์šด๋ฐ๋กœ ์กฐ์ •๋จ

โ€‹

โ€‹

6.

์ด๊ฒŒ ํ‹€๋ฆฐ๊ฑด ์•„๋‹Œ๋ฐ ์ธ์‚ฌ์ดํŠธ ๋„์ถœ์˜ ์˜๋ฏธ๋ฅผ ๊ฐ„๊ณผํ–ˆ๋‹ค.

๊ทธ๋ƒฅ ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ

์ด ๋ถ„์„์„ ํ†ตํ•ด์„œ ์˜๋ฏธ(๊ฐ€์น˜) ๋ฅผ ์ฐพ์•„๋‚ด๋Š” ๊ฒƒ. ์ด ๋ถ€๋ถ„์„ ์•ˆํ–ˆ์Œ.

๋ฐ์ดํ„ฐ ๋ถ„์„์„ ํ•˜๋Š” ์ด์œ ๊ฐ€ ๋ฐ”๋กœ ์ด๊ฑฐ๊ฒ ์ฃ ? ์ธ์‚ฌ์ดํŠธ ์ฐฝ์ถœ.

โ€‹

ex)

โ€‹

14์‹œ~16์‹œ์— ๊ณ ๊ฐ๋“ค์ด ๊ฐ€์žฅ ๋งŽ์ด ๊ตฌ๋งคํ•˜๋„ค

-> ์™ค๊นŒ? ์ €๋…์‹์‚ฌ ์ค€๋น„๋ฅผ ํ•˜๋Š”๊ฑธ๊นŒ?

โ€‹

17์‹œ๋ถ€ํ„ฐ ๊ตฌ๋งค์ˆ˜๋Ÿ‰์ด ์ค„์–ด๋“ค๊ธฐ ์‹œ์ž‘ํ•˜๋Š”๋ฐ ๊ณ ๊ฐ๋“ค์ด ๋งˆํŠธ์—์„œ ์žˆ๋Š” ์ฒด๋ฅ˜์‹œ๊ฐ„์„ ๋Š˜๋ฆฌ๊ธฐ ์œ„ํ•ด ๋ฌด์Šจ ์ „๋žต์„ ์งœ์•ผํ•˜๋Š”๊ฒŒ ์•„๋‹๊นŒ?

โ€‹

-> ์ €๋…์‹์‚ฌ ํ‘ธ๋“œ์ฝ”ํŠธ๋ฅผ ๋Š˜๋ ค์„œ ์ €๋…์‹์‚ฌ๊นŒ์ง€ ํ•ด๊ฒฐ์‹œ์ผœ ๋งค์žฅ ์ฒด๋ฅ˜์‹œ๊ฐ„์„ ๋Š˜๋ ค์•ผ๊ฒ ๋‹ค

โ€‹

๋”ฑ ์ด ํ”ผ๋“œ๋ฐฑ ๋ณด๊ณ ๋‚˜์„œ ๋ฐ”๋กœ ๊นจ๋‹ฌ์Œ! ์ธ์‚ฌ์ดํŠธ ๋„์ถœ์ด๋ผ๋Š”๊ฒŒ ์ด๋Ÿฐ๊ฑฐ๊ตฌ๋‚˜.

โ€‹

'๋‹จ์ˆœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ๋ถ„์„์„ ํ•˜๋Š”๊ฒŒ ์•„๋‹ˆ๋ผ ๋ถ„์„์„ ํ†ตํ•ด ๊ฐ€์น˜๋ฅผ ๋„์ง‘์–ด๋‚ด๋Š” ๊ฒƒ.'

์ด๊ฒŒ ๋‚ด๊ฐ€ ๋Œ€ํ•™์„ ๋‹ค๋‹ˆ๋ฉด์„œ ํ•ด์•ผํ•˜๊ณ , ๋จธ๋ฆฟ์†์— ์ƒˆ๊ฒจ๋‘์–ด์•ผํ•˜๋Š” ํƒœ๋„๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๊ฒ ๋‹ค.

๋ช…์‹ฌํ•˜๊ธฐ.

728x90
๋ฐ˜์‘ํ˜•

'์–ธ์–ด > Python ๊ธฐ์ดˆ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํŒŒ์ด์ฌ ๋ฌธ๋ฒ• 5  (0) 2023.07.20
ํŒŒ์ด์ฌ ๋ฌธ๋ฒ•4  (0) 2023.07.20
ํŒŒ์ด์ฌ ๋ฌธ๋ฒ• 3  (0) 2023.07.20
ํŒŒ์ด์ฌ ๋ฌธ๋ฒ• 2  (0) 2023.07.20
ํŒŒ์ด์ฌ ๋ฌธ๋ฒ• 1  (0) 2023.07.20