728x90

Python 48

[Algorithm] ์Šคํƒ๊ณผ ํ_1

04-1 ์Šคํƒ์ด๋ž€? ์Šคํƒ ์•Œ์•„๋ณด๊ธฐ ์Šคํƒ(stack): ๋ฐ์ดํ„ฐ๋ฅผ ์ž„์‹œ ์ €์žฅํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ ์Šคํƒ์— ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ๋Š” ์ž‘์—…์„ ํ‘ธ์‹œ(push)๋ผ ํ•˜๊ณ , ์Šคํƒ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊บผ๋‚ด๋Š” ์ž‘์—…์„ ํŒ(pop)์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ‘ธ์‹œํ•˜๊ณ  ํŒํ•˜๋Š” ์œ—๋ถ€๋ถ„์„ ๊ผญ๋Œ€๊ธฐ(top)์ด๋ผ ํ•˜๊ณ , ์•„๋žซ๋ถ€๋ถ„์„ ๋ฐ”๋‹ฅ(bottom)์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์Šคํƒ ๊ตฌํ˜„ํ•˜๊ธฐ ์Šคํƒ ๋ฐฐ์—ด: stk ํ‘ธ์‹œํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์Šคํƒ ๋ณธ์ฒด์ธ listํ˜• ๋ฐฐ์—ด์ž…๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๋จผ์ € ํ‘ธ์‹œํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณณ์€ stk[0]์ž…๋‹ˆ๋‹ค. ์Šคํƒ ํฌ๊ธฐ: capacity ์Šคํƒ์˜ ์ตœ๋Œ€ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” intํ˜• ์ •์ˆ˜์ž…๋‹ˆ๋‹ค. ์ด ๊ฐ’์€ ๋ฐฐ์—ด skt์˜ ์›์†Œ ์ˆ˜์ธ len(stk)์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ์Šคํƒ ํฌ์ธํ„ฐ: ptr ์Šคํƒ์— ์Œ“์—ฌ ์žˆ๋Š” ๋ฐ์ดํ„ฐ์˜ ๊ฐœ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ •์ˆซ๊ฐ’์„ ์Šคํƒ ํฌ์ธํ„ฐ(stack point..

Code/Algorithm 2022.12.02

[Algorithm] ๊ธฐ๋ณธ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ๋ฐฐ์—ด_2

์ด์ „ ๊ธ€๊ณผ ์ด์–ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ด์ „ ๊ธ€์„ ๋จผ์ € ๋ณด์‹œ๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. 2022.11.21 - [Code/Algorithm] - [Algorithm] ๊ธฐ๋ณธ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ๋ฐฐ์—ด [Algorithm] ๊ธฐ๋ณธ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ๋ฐฐ์—ด_1 02 - 1 ์ž๋ฃŒ๊ตฌ์กฐ์™€ ๋ฐฐ์—ด ์‹ค์Šต 2-1 ํ•™์ƒ 5๋ช…์˜ ์‹œํ—˜ ์ ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ•ฉ๊ณ„์™€ ํ‰๊ท ์„ ์ถœ๋ ฅํ•˜๊ธฐ # ํ•™์ƒ 5๋ช…์˜ ์‹œํ—˜ ์ ์ˆ˜๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ํ•ฉ๊ณ„์™€ ํ‰๊ท ์„ ์ถœ๋ ฅํ•˜๊ธฐ print('ํ•™์ƒ ๊ทธ๋ฃน ์ ์ˆ˜์˜ ํ•ฉ๊ณ„์™€ ํ‰๊ท ์„ ๊ตฌํ•ฉ heejins.tistory.com 02 - 1 ๋ฐฐ์—ด์ด๋ž€? ๋ฐฐ์—ด ์›์†Œ์˜ ์ตœ๋Œ“๊ฐ’ ๊ตฌํ•˜๊ธฐ # a์˜ ์›์†Œ๊ฐ€ 3๊ฐœ์ผ ๋•Œ maximum = a[0] if a[1] > maximum: maximum = a[1] if a[2] > maximum: maximum = a[2] # a์˜ ์›์†Œ๊ฐ€ 4๊ฐœ์ผ ๋•Œ m..

Code/Algorithm 2022.11.25

[Machine Learning] SMOTETomek

- SMOTETomek? Combination of over - and under - sampling method SMOTE์˜ ๋ฐฉ๋ฒ•๊ณผ TomekLink๋ฅผ ๋ณตํ•ฉํ•˜์—ฌ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ SMOTE๋กœ over sampling ์ง„ํ–‰ ํ›„ ๊ฒฝ๊ณ„์„ ์— ์žˆ๋Š” major sample์„ ์ œ๊ฑฐ ๋ถ„๋ฅ˜ ๊ฒฝ๊ณ„๋ฉด์„ ๋šœ๋ ทํ•˜๊ฒŒํ•˜์—ฌ ๋ถ„๋ฅ˜๊ฐ€ ์ž˜ ๋  ์ˆ˜ ์žˆ๋„๋ก ํ•œ๋‹ค. - Import import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn.datasets import make_classification from imblearn.under_sampling import TomekLinks from imblearn.combine import SMOTETom..

Machine Learning 2022.11.23

[Machine Learning] imblearn ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ undersampling

imblearn๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ under_sampling ๋น„๊ต - Import import pandas as pd import matplotlib.pyplot as plt import seaborn as sns from sklearn.datasets import make_classification from imblearn.under_sampling import * - Data ์ƒ์„ฑ X, y = make_classification(n_samples=5000, n_features=2, n_informative=2, n_redundant=0, n_repeated=0, n_classes=3, n_clusters_per_class=1, weights=[0.2, 0.3, 0.5], class_sep=0.8, rando..

Machine Learning 2022.11.21

[Algorithm] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ธฐ์ดˆ_2

01 - 2 ๋ฐ˜๋ณตํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์‹ค์Šต 1-7 1๋ถ€ํ„ฐ n๊นŒ์ง€ ์ •์ˆ˜์˜ ํ•ฉ ๊ตฌํ•˜๊ธฐ 1(while ๋ฌธ) # 1๋ถ€ํ„ฐ n๊นŒ์ง€ ์ •์ˆ˜์˜ ํ•ฉ ๊ตฌํ•˜๊ธฐ 1 (while ๋ฌธ) print('1๋ถ€ํ„ฐ n๊นŒ์ง€ ์ •์ˆ˜์˜ ํ•ฉ์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค.') n = int(input('n๊ฐ’์„ ์ž…๋ ฅํ•˜์„ธ์š”.: ')) sum = 0 i = 1 while i b: a,b = b, a sum = 0 for i in range(a, b+1): sum += i print(f'{a}๋ถ€ํ„ฐ {b}๊นŒ์ง€ ์ •์ˆ˜์˜ ํ•ฉ์€ {sum}์ž…๋‹ˆ๋‹ค.') a๋ถ€ํ„ฐ b๊นŒ์ง€ ์ •์ˆ˜์˜ ํ•ฉ์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜ a๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.: 3 ์ •์ˆ˜ b๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.: 64 3๋ถ€ํ„ฐ 64๊นŒ์ง€ ์ •์ˆ˜์˜ ํ•ฉ์€ 2077์ž…๋‹ˆ๋‹ค. a์™€ b๋ฅผ ๊ตํ™˜ํ•  ๋•Œ a, b = b, a # a์™€ b์˜ ๊ฐ’์„ ๊ตํ™˜(๋‹จ์ผ ๋Œ€์ž…๋ฌธ ์‚ฌ์šฉ) ๋ฐ˜๋ณต ๊ณผ์ •์—์„œ ..

Code/Algorithm 2022.11.18

[Algorithm] ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ธฐ์ดˆ_1

01 - 1 ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€? ๋”๋ณด๊ธฐ ์–ด๋– ํ•œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ •ํ•ด ๋†“์€ ์ผ๋ จ์˜ ์ ˆ์ฐจ ํŠนํžˆ ์˜ฌ๋ฐ”๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€ '์–ด๋– ํ•œ ๊ฒฝ์šฐ์—๋„ ์‹คํ–‰ ๊ฒฐ๊ณผ๊ฐ€ ๋˜‘๊ฐ™์ด ๋‚˜์˜ค๋Š” ๊ฒƒ'์„ ๋งํ•จ. ์‹ค์Šต 1-1 ์„ธ ์ •์ˆ˜์˜ ์ตœ๋Œ“๊ฐ’ ๊ตฌํ•˜๊ธฐ # ์„ธ ์ •์ˆ˜์˜ ์ตœ๋Œ“๊ฐ’ ๊ตฌํ•˜๊ธฐ print('์„ธ ์ •์ˆ˜์˜ ์ตœ๋Œ“๊ฐ’์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค.') a = int(input('์ •์ˆ˜ a์˜ ๊ฐ’์„ ์ž…๋ ฅํ•˜์„ธ์š”.: ')) b = int(input('์ •์ˆ˜ b์˜ ๊ฐ’์„ ์ž…๋ ฅํ•˜์„ธ์š”.: ')) c = int(input('์ •์ˆ˜ c์˜ ๊ฐ’์„ ์ž…๋ ฅํ•˜์„ธ์š”.: ')) maximum = a if b > maximum: maximum = b if c > maximum: maximum = c print(f'์ตœ๋Œ€๊ฐ’์€ {maximum}์ž…๋‹ˆ๋‹ค.') ์„ธ ์ •์ˆ˜์˜ ์ตœ๋Œ“๊ฐ’์„ ๊ตฌํ•ฉ๋‹ˆ๋‹ค. ์ •์ˆ˜ a์˜ ๊ฐ’์„ ์ž…๋ ฅํ•˜์„ธ์š”.: 5..

Code/Algorithm 2022.11.18

[Deep Learning]์ตœ์†Œ์ œ๊ณฑ๋ฒ•

- ์ผ์ฐจํ•จ์ˆ˜, ๊ธฐ์šธ๊ธฐ์™€ y ์ ˆํŽธ y = ax + b x๊ฐ€ ์ผ์ฐจ์ธ ํ˜•ํƒœ x๊ฐ€ ์ผ์ฐจ๋กœ ๋‚จ์œผ๋ ค๋ฉด a(๊ธฐ์šธ๊ธฐ)๋Š” 0์ด ์•„๋‹ˆ์–ด์•ผ ํ•จ. - ์ด์ฐจํ•จ์ˆ˜ y = ax² ๋งจ ์•„๋ž˜ ์œ„์น˜ํ•œ ์ตœ์†Ÿ๊ฐ’์„ ์ฐพ๋Š” ๊ณผ์ •์ด ์ค‘์š” - ๋ฏธ๋ถ„ ์ˆœ๊ฐ„ ๋ณ€ํ™”์œจ๊ณผ ๊ธฐ์šธ๊ธฐ y = x²์—์„œ x์ถ•์— ์žˆ๋Š” ํ•œ ์  a์— ๋Œ€์‘ํ•˜๋Š” y์˜ ๊ฐ’์€ a² ์ด๋•Œ a๊ฐ€ ์˜ค๋ฅธ์ชฝ์ด๋‚˜ ์™ผ์ชฝ์œผ๋กœ ์กฐ๊ธˆ์”ฉ ์ด๋™ํ•  ๋•Œ y๋„ ์กฐ๊ธˆ์”ฉ ๋ณ€ํ™”ํ•จ. a๊ฐ€ ์•„์ฃผ ์•„์ฃผ ๋ฏธ์„ธํ•˜๊ฒŒ 0์— ๊ฐ€๊นŒ์šธ ๋งŒํผ ์›€์ง์ผ ๋•Œ y๊ฐ’ ์—ญ์‹œ ๋งค์šฐ ๋ฏธ์„ธํ•˜๊ฒŒ ๋ณ€ํ™”ํ•จ. ๋„ˆ๋ฌด ๋ฏธ์„ธํ•ด์„œ ๋ฐฉํ–ฅ๋งŒ ๋“œ๋Ÿฌ๋‚ด๋Š” ์ •๋„์˜ ์ˆœ๊ฐ„์ ์ธ ๋ณ€ํ™”๋งŒ ์žˆ์„ ๋•Œ ์ด ์ˆœ๊ฐ„์˜ ๋ณ€ํ™”๋ฅผ '์ˆœ๊ฐ„ ๋ณ€ํ™”์œจ'์ด๋ผ๊ณ  ํ•จ. ์ด ๋ฐฉํ–ฅ์„ ๋”ฐ๋ผ ์ง์„ ์„ ๊ธธ๊ฒŒ ๊ทธ๋ ค์ฃผ๋ฉด ๊ทธ๋ž˜ํ”„์˜ค ใ…๋งž๋‹ฟ๋Š” ์ ‘์„ ์ด ๊ทธ๋ ค์ง€๊ณ , ์ด ์„ ์ด ์ด ์ ์—์„œ์˜ ๊ธฐ์šธ๊ธฐ๊ฐ€ ๋จ. - ๋ฏธ๋ถ„์„ ํ•œ๋‹ค = '์ˆœ๊ฐ„ ๋ณ€ํ™”์œจ'์„ ๊ตฌํ•œ๋‹ค -..

Deep Learning 2022.11.10

[Python]์ž์—ฐ์ƒ์ˆ˜ e, ์ง€์ˆ˜ํ‘œํ˜„ ๋ณ€ํ™˜

- ์ž์—ฐ์ƒ์ˆ˜ e, ์ง€์ˆ˜ํ‘œํ˜„ ๋ณ€ํ™˜ ์†Œ์ˆ˜์  ์ž๋ฆฟ์ˆ˜ ์„ค์ •ํ•˜์—ฌ ์ง€์ˆ˜ํ‘œํ˜„์„ float ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜ → ์›ํ•˜๋Š” ์ž๋ฆฟ์ˆ˜๋กœ ์„ค์ • ๊ฐ€๋Šฅ pd.options.display.float_format = '{:.5f}'.format - ๋‹ค์‹œ ์ง€์ˆ˜ํ‘œํ˜„์œผ๋กœ ๋ณ€ํ™˜ floatํ˜•ํƒœ๋ฅผ ์ง€์ˆ˜ํ‘œํ˜„์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹Œ, ์›๋ž˜์˜ ํ‘œํ˜„ ๋ฐฉ์‹์œผ๋กœ ์žฌ์„ค์ • pd.reset_option('display.float_format')

Code/Python 2022.11.10
728x90