๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
TIL๐Ÿ”ฅ/๋ฉ‹์Ÿ์ด์‚ฌ์ž์ฒ˜๋Ÿผ_AI School 5๊ธฐ

[๋ฉ‹์‚ฌ] AI SCHOOL 5๊ธฐ_ Day 5

by hk713 2022. 3. 18.

Anaconda

๋ฐ์ดํ„ฐ ๋ถ„์„์— ์œ ์šฉํ•œ Pandas๋‚˜ Scikit-learn ๋“ฑ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ธฐ๋ณธ์ ์œผ๋กœ ํฌํ•จํ•˜๊ณ  ์žˆ๋‹ค.

ip์ฃผ์†Œ์™€ ํ† ํฌ์„ ์‚ฌ์šฉํ•ด ์›๊ฒฉ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค. (๋‹น์—ฐํžˆ ๋ณธ ์ปดํ“จํ„ฐ๊ฐ€ ์ž‘๋™์ค‘์ด์–ด์•ผ ํ•œ๋‹ค)

Jupyter notebook

Cell์˜ ์‹คํ–‰: Shift + Enter

EditMode(ํŽธ์ง‘ ๋ชจ๋“œ)์—์„œ ESC๋ฅผ ๋ˆ„๋ฅด๋ฉด CommandMode(๋ช…๋ น ๋ชจ๋“œ)๋กœ ๋ณ€๊ฒฝ๋œ๋‹ค.

๋ช…๋ น๋ชจ๋“œ์—์„œ ์•„๋ž˜์˜ ๋‹จ์ถ•ํ‚ค๋“ค์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค!

  • C : ๋ณต์‚ฌํ•˜๊ธฐ
  • V : ๋ถ™์—ฌ๋„ฃ๊ธฐ
  • X : ์ž˜๋ผ๋‚ด๊ธฐ
  • A : ์œ„์— ์…€ ์ถ”๊ฐ€
  • B : ์•„๋ž˜์— ์…€ ์ถ”๊ฐ€
  • DD : ์…€ ์‚ญ์ œ
  • Z : ๋˜๋Œ๋ฆฌ๊ธฐ
  • M : ๋งˆํฌ๋‹ค์šด ์…€๋กœ ๋ณ€๊ฒฝ
  • Y : ์ฝ”๋“œ ์…€๋กœ ๋ณ€๊ฒฝ

์ฐธ๊ณ ) ์ฝ”๋“œ ์…€์—์„œ  tab ๋ˆ„๋ฅด๋ฉด ์ž๋™์™„์„ฑ, ํ•จ์ˆ˜ ๋’ค์— shift+tab ๋ˆ„๋ฅด๋ฉด ์„ค๋ช…์ด ๋‚˜์˜จ๋‹ค!

 

Jupyter notebook ํŒŒ์ผ์€ ์ด ์ž์ฒด๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค. ๊ทธ๋ž˜์„œ ์ œ๊ณต๋˜๋Š” ๊ธฐ๋Šฅ์ด ๋งˆํฌ๋‹ค์šด์ด๋‹ค.

https://heropy.blog/2017/09/30/markdown/

 

MarkDown ์‚ฌ์šฉ๋ฒ• ์ด์ •๋ฆฌ

๋งˆํฌ๋‹ค์šด(MarkDown)์— ๋Œ€ํ•ด์„œ ์•Œ๊ณ  ๊ณ„์‹ ๊ฐ€์š”?ํŒŒ์ผ ํ™•์žฅ์ž๊ฐ€ .md๋กœ ๋œ ํŒŒ์ผ์„ ๋ณด์…จ๋‚˜์š”?์›น ๊ฐœ๋ฐœ์„ ํ•˜๋ฉด์„œ ์•„๋งˆ README.md๋ผ๋Š” ์ด๋ฆ„์˜ ํŒŒ์ผ์„ ํ•œ ๋ฒˆ์€ ๋ณด์…จ์„ํ…๋ฐ, ...

heropy.blog

# ์ฒซ๋ฒˆ์งธ๋กœ ํฐ ์ œ๋ชฉ
###### 6๋ฒˆ์งธ๊นŒ์ง€ ์žˆ๋‹ค

**๊ตต์€ ๊ธ€์”จ ์‚ฌ์šฉํ•  ๋•Œ**

> ์ธ์šฉ๋ฌธ ์ฒ˜๋ฆฌ

``` ์ฝ”๋“œ ์ฒ˜๋ฆฌ ```

- ๋ฆฌ์ŠคํŠธ 1
- ๋ฆฌ์ŠคํŠธ 2

<br> ๊ฐ„๊ฒฉ ์กฐ์ ˆ

<span style="color:blue; font-size:3em;"> HTML ๋ฌธ๋ฒ•๋„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค! </span>

 Part1_ ๊ฐ€์žฅ ๋น ๋ฅด๊ฒŒ ์ตํžˆ๋Š” ํŒŒ์ด์ฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ดˆ

 

0. ํŠน์ • ํ•จ์ˆ˜์— ๋Œ€ํ•ด ๊ถ๊ธˆํ•  ๋•Œ

์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ์—์„œ๋Š” Shift+Tap ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. 

๊ทธ๋Ÿฐ๋ฐ ๊ตฌ๊ธ€ colab ๋„ ๊ทธ๋ ‡๊ณ , ์ฝ”๋”ฉํ…Œ์ŠคํŠธ๋ฅผ ๋ณด๋Ÿฌ ๊ฐ„ ์ƒํ™ฉ์—์„œ๋Š” ์ด๊ฒŒ ์•ˆ ๋จนํž ์ˆ˜ ์žˆ๋‹ค. 

๊ทธ๋Ÿด ๋•Œ๋Š” help() ๋ฅผ ์จ์ฃผ๋ฉด ๋œ๋‹ค. 

์ฐธ๊ณ ) Tab ์€ dir() ๋กœ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

1. ๊ธฐ์ดˆ ๋ฐ์ดํ„ฐ ํƒ€์ž…

๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ํฌ๊ฒŒ 4๊ฐ€์ง€๋กœ ๊ตฌ๋ถ„๋œ๋‹ค. 

  • ์ •์ˆ˜ํ˜•(integer)
  • ์‹ค์ˆ˜ํ˜•(floats)
  • ๋ฌธ์ž์—ด(string)
  • ์ฐธ/๊ฑฐ์ง“(bool)

โœ… ๋ณ€์ˆ˜

number = 713

์—ฌ๊ธฐ์„œ ์‚ฌ์šฉ๋œ '=' ์€ '๊ฐ™๋‹ค' ๋ผ๋Š” ์˜๋ฏธ๊ฐ€ ์•„๋‹ˆ๋‹ค. ( '๊ฐ™๋‹ค' ๋ผ๋Š” ์˜๋ฏธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์œผ๋ฉด '==', '๋‹ค๋ฅด๋‹ค' ๋Š” '!=')

์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋ฉ”๋ชจ๋ฆฌ์— number ๋ผ๋Š” ๋ณ€์ˆ˜๊ฐ€ ์„ ์–ธ(declaration)๋˜๊ณ , 713 ์ด๋ผ๋Š” ๊ฐ’์ด ํ• ๋‹น(assignment)๋˜๋Š” ๊ฒƒ์ด๋‹ค.

๋”ฐ๋ผ์„œ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜์ง€ ์•Š์œผ๋ฉด ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค. 

 

โœ… Type

ํŒŒ์ด์ฌ์€ ๋™์  ํƒ€์ดํ•‘ ์–ธ์–ด๋‹ค. 

๊ทธ๋ž˜์„œ type()์„ ์‚ฌ์šฉํ•ด ๋ฐ์ดํ„ฐ์˜ ์ž๋ฃŒํ˜•์„ ์•Œ์•„๋ณด๊ณค ํ•œ๋‹ค.

์ฐธ๊ณ ) ์ž๋ฐ”๋Š” ์ •์  ํƒ€์ดํ•‘ ์–ธ์–ด๋‹ค. ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค ๋•Œ, int number = 713 ์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ•œ๋‹ค.

๋ฐ์ดํ„ฐ์˜ ํƒ€์ž…๋งˆ๋‹ค ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๊ธฐ๋Šฅ์ด ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋ณ€์ˆ˜ ์ƒ์„ฑ ์ดํ›„์— ๋ฐ์ดํ„ฐ์˜ ํƒ€์ž…์„ ๋ฐ”๊ฟ”์ฃผ๋Š” ์ผ๋„ ์ƒ๊ธด๋‹ค.

๊ทธ๊ฑธ Type-casting, ์ฆ‰ (์ž๋ฃŒ)ํ˜• ๋ณ€ํ™˜ ์ด๋ผ๊ณ  ํ•œ๋‹ค.

์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค. ๋ฐ”๊ฟ”์ฃผ๊ณ  ์‹ถ์€ ์ž๋ฃŒํ˜•์œผ๋กœ ๊ฐ์‹ธ์ฃผ๋ฉด ๋œ๋‹ค.

number = 713  # ์ด๊ฑฐ๋Š” int(์ •์ˆ˜ํ˜•)

# ๋ฌธ์ž์—ด๋กœ ๋ฐ”๊ฟ”์ฃผ๊ณ  ์‹ถ์œผ๋ฉด?!
number = str(number)

 

โœ… ์—ฐ์‚ฐ์ž

** : ์ œ๊ณฑ

/  : ๋‚˜๋ˆ„๊ธฐ (๋ชซ, ์†Œ์ˆ˜์ ๊นŒ์ง€)

// : ๋‚˜๋ˆ„๊ธฐ (๋ชซ๋งŒ)

% : ๋‚˜๋ˆ„๊ธฐ (๋‚˜๋จธ์ง€๋งŒ)

๋งˆ์นจํ‘œ ์—ฐ์‚ฐ์ž(operator) -  . ์„ ์“ฐ๊ณ  tab ์„ ๋ˆ„๋ฅด๋ฉด ์“ธ ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ๋“ค์ด ๋ณด์ธ๋‹ค

.upper() : ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ๊ณ ์ณ์ค€๋‹ค

.lower()  : ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ์†Œ๋ฌธ์ž๋กœ ๊ณ ์ณ์ค€๋‹ค

 

โœ… ๋ฌธ์ž์—ด ํฌ๋งทํŒ…

3๊ฐ€์ง€ ๋ฐฉ์‹์ด ์žˆ๋‹ค.

#1
print("์˜ค๋Š˜์€ {0}์›” {1}์ผ {2}์š”์ผ ์ž…๋‹ˆ๋‹ค".format(3,18,"๊ธˆ")) # ์ˆซ์ž๋กœ ์ž๋ฆฌ๋ฅผ ์ง€์ •ํ•ด์ค„ ์ˆ˜๋„ ์žˆ๋‹ค!(๊ณต๋ฐฑ์ด๋ฉด ์ˆœ์„œ๋Œ€๋กœ)

#2
print("์˜ค๋Š˜์€ %d์›” %d์ผ %s์š”์ผ ์ž…๋‹ˆ๋‹ค"%(3,18,"๊ธˆ"))

#3
month = 3
date = 18
day = "๊ธˆ"
print(f"์˜ค๋Š˜์€ {month}์›” {date}์ผ {day}์š”์ผ ์ž…๋‹ˆ๋‹ค")

 

โœ… something[xxx] 

something: str, list, tuple, numpy.array() ๋ผ๋ฉด xxx ์—๋Š” index number ๊ฐ€ ๋“ค์–ด๊ฐ„๋‹ค

something: dict, pandas.DataFrame() ์ด๋ผ๋ฉด xxx ์—๋Š” key ๊ฐ€ ๋“ค์–ด๊ฐ„๋‹ค 

* ์ฐธ๊ณ 

numpy.array() ๋Š” ์ˆ˜์น˜ํ–‰๋ ฌ(๋ฒกํ„ฐ๋ผ๊ณ ๋„ ๋ถ€๋ฅด๊ณ  ๋ฐฐ์—ด์ด๋ผ๊ณ ๋„ ๋ถ€๋ฅธ๋‹ค)์„ ๋‹ค๋ฃจ๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋‹ค.

pandas.DataFrame() : ์—‘์…€ํŒŒ์ผ์„ ์ฝ๊ณ ๋‚˜๋ฉด ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„์ด ๋œ๋‹ค. ๊ทธ๋•Œ '์—ด'์ด key ๊ฐ’์ด ๋œ๋‹ค.

 

โœ… ์Šฌ๋ผ์ด์‹ฑ

[ ์•ž : ๋’ค ] ์˜ ํ˜•ํƒœ๋ฅผ ๊ฐ–๊ณ  ์žˆ์œผ๋ฉฐ (์•ž)์—์„œ๋ถ€ํ„ฐ (๋’ค) ์ „๊นŒ์ง€๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, [ 1 : 3 ] ์ด๋ฉด 1๋ถ€ํ„ฐ 3์ „๊นŒ์ง€, ์ฆ‰ 1, 2 ๋ฅผ ์˜๋ฏธํ•œ๋‹ค.

[ : ] ์ด๋Ÿฌ๋ฉด ๋ชจ๋“  ๊ฐ’์„ ์˜๋ฏธํ•œ๋‹ค. 

* ์ฐธ๊ณ  - numbers[ 2, 100, 5 ] ์ด๋Ÿฌ๋ฉด '2๋ถ€ํ„ฐ 99๊นŒ์ง€ 5์”ฉ ๊ฑด๋„ˆ ๋›ฐ์–ด๊ฐ€๋ฉฐ' ๋ผ๋Š” ์˜๋ฏธ๊ฐ€ ๋œ๋‹ค.

๋ฌธ์ž์—ด ๋‚˜๋ˆ„๊ธฐ

.split(sep='๊ตฌ๋ถ„์ž') ์„ ์‚ฌ์šฉํ•œ๋‹ค. ๊ด„ํ˜ธ ์•ˆ์„ ๋น„์šฐ๋ฉด ๋””ํดํŠธ ๊ฐ’์ธ ๊ณต๋ฐฑ ์œผ๋กœ ์ธ์‹ํ•œ๋‹ค.

๋ฌธ์ž์—ด ํ•ฉ์น˜๊ธฐ

๊ตฌ๋ถ„์ž.join(๋ฆฌ์ŠคํŠธ) ๋กœ ์‚ฌ์šฉํ•œ๋‹ค.

 

โœ… ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž

  • and ( & ) : ๋ชจ๋‘ ์ฐธ์ด์–ด์•ผ ์ฐธ
  • or ( | ) : ํ•˜๋‚˜๋งŒ ์ฐธ์ด๋ฉด ์ฐธ
  • not : ์ฐธ์ด๋ฉด ๊ฑฐ์ง“์œผ๋กœ, ๊ฑฐ์ง“์ด๋ฉด ์ฐธ์œผ๋กœ ๋ฐ”๋€œ

 

๋Œ“๊ธ€