Python 6

๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(DataFrame)์˜ ๋ฐฐ์—ด ์กฐ์ธ(join)๊ณผ ๋ฐฐ์—ด๋ถ„ํ• (split)

๋ฐฐ์—ด ์กฐ์ธ- ๋‘ ๊ฐœ ์ด์ƒ์˜ ๋ฐฐ์—ด๋‚ด์šฉ์„ ๋‹จ์ผ ๋ฐฐ์—ด์— ๋„ฃ๋Š” ๊ฒƒ์„ ์˜๋ฏธ Numpy์—์„œ๋Š” ์ถ•์„ ๊ธฐ์ค€์œผ๋กœ ๋ฐฐ์—ด์„ ์กฐ์ธํ•œ๋‹คstack() : ์—ฐ๊ฒฐ๊ณผ ๋™์ผํ•˜๊ณ  ์ฐจ์ด์ ์€ ์Šคํƒœํ‚น์ด ์ƒˆ์ถ•์„ ๋”ฐ๋ผ ์ˆ˜ํ–‰๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค ๋ช…์‹œ์ ์œผ๋กœ ์ „๋‹ฌ๋˜์ง€ ์•Š์œผ๋ฉด 0์œผ๋กœ ๊ฐ„์ฃผ๋œ๋‹ค2) hstack() : ํ–‰์„ ๋”ฐ๋ผ ์Œ“๋Š” ๋„์šฐ๋ฏธ 3) vstack() : ์—ด์„ ๋”ฐ๋ผ ์Œ“๋Š” ๋„์šฐ๋ฏธ ๊ธฐ๋Šฅ์„ ์ œ๊ณต4) dstack() : ๊นŠ์ด์™€ ๋™์ผํ•œ ๋†’์ด๋ฅผ ๋”ฐ๋ผ ์Œ“๋Š” ๋„์šฐ๋ฏธ ๊ธฐ๋Šฅ์„ ์ œ๊ณต stack : ์ƒˆ๋กœ์šด ๋ฒ„ํ‹ฐ์ปฌ ์ถ•์œผ๋กœ ์ˆ˜ํ–‰๋œ๋‹คver1 = np.array([1,2,3])ver2 = np.array([4,5,6])verti = np.stack((ver1, ver2), axis=1)print(verti) hstack() : ํ–‰์„ ๋”ฐ๋ผ ์Œ“๊ธฐvstack() : ํ•จ์ˆ˜๋Š” ์ฃผ์–ด์ง„ ๋ฐฐ์—ด์„..

๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(DataFrame)์˜ column, index ์„ค์ • ๋ฐฉ๋ฒ•

์ปฌ๋Ÿผ(column)์„ ์ธ๋ฑ์Šค(index)๋กœ ๋งŒ๋“ค๊ธฐ df.set_index('name', inplace = True) bikepantsshirtssuitsname    A203015.045.0B1552.07.0C2030NaNNaN    ๋‹ค์‹œ index๋ฅผ ์ปฌ๋Ÿผ์œผ๋กœ ๋งŒ๋“ค๊ธฐ df.reset_index(inplace = True)   name bike pantsshirts suits 0A203015.045.01B1552.07.02C2030NaNNaN  ์ƒˆ๋กœ์šด ์ปฌ๋Ÿผ(column) ๋งŒ๋“ค๊ธฐ # ์ƒˆ๋กœ์šด ์ปฌ๋Ÿผ name์„ ๋งŒ๋“ค๋˜, ๋ฐ์ดํ„ฐ๋Š” A,B,C๋ผ๊ณ  ๋„ฃ์ž.  hatpantsshirts suits 0203015.045.011552.07.022030NaNNaN  df['name'] = ['A' , 'B' , 'C'] df ..

Pandas์—์„œ ์ œ๊ณตํ•˜๋Š” ๋ฌธ์ž์—ด(Str) ํ•จ์ˆ˜

https://pandas.pydata.org/docs/reference/api/pandas.Series.str.upper.html pandas.Series.str.upper — pandas 2.2.1 documentationConverts first character of each word to uppercase and remaining to lowercase.pandas.pydata.org ์ด๊ณณ์—์„œ ํŒ๋‹ค์Šค์˜ ํ•จ์ˆ˜์ •๋ณด๋ฅผ ์•Œ ์ˆ˜ ์žˆ๋‹ค.    df.str.replace('a','b')  ๋ฐ์ดํ„ฐ์˜ ๋ฌธ์ž์—ด a๋ฅผ b๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค   - > df.str.replace('$','').astype(float)            #astype(float) ๋Š” df์˜ type์„ ๋ชจ๋‘ float๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค. str, in..

์กฐ๊ฑด๋ฌธ (if, elif, else) ์ž‘์„ฑํ•˜๊ธฐ

a, b = 33, 33 if b > a:         #1) ์ฐธ์ธ ๊ฒฝ์šฐ    print("b is greater than a") elif a >= b:     #2) 1๋ฒˆ ์กฐ๊ฑด์ด ์ฐธ์ด ์•„๋‹Œ๊ฒฝ์šฐ ์‹คํ–‰ํ•  another์กฐ๊ฑด    print("Nop") else:               #3) ๊ฑฐ์ง“์ธ ๊ฒฝ์šฐ    print("same same")  ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž and-๋‘ ์กฐ๊ฑด์ด ๋ชจ๋‘ ์ฐธ์ด์–ด์•ผ True ์ž…๋‹ˆ๋‹คif num1 > 0 and num2 > 0: print("๋‘ ์ˆซ์ž ๋ชจ๋‘ ์–‘์ˆ˜์ž…๋‹ˆ๋‹ค.") else: print("ํ•˜๋‚˜ ์ด์ƒ์˜ ์ˆซ์ž๊ฐ€ ์–‘์ˆ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.")  ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž or-๋‘ ์กฐ๊ฑด ์ค‘ ํ•˜๋‚˜๋งŒ ์ฐธ์ด์–ด๋„ True ์ž…๋‹ˆ๋‹ค    if num > 10 or num   ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž not-..

๋ฐ์ดํ„ฐ ์ŠคํŠธ๋Ÿญ์ณ(data structure) : dictionary ๋”•์…”๋„ˆ๋ฆฌ ํ•™์Šตํ•˜๊ธฐ

#๋ฐ์ดํ„ฐ ์ŠคํŠธ๋Ÿญ์ณ (data structure)์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํ•˜๋‚˜์˜ ๋ณ€์ˆ˜์— ์ €์žฅ CRUD  : ์‹ ๊ทœ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€, ๊ธฐ์กด ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๊ณ , ๊ธฐ์กด ๋ฐ์ดํ„ฐ ๊ฐ’์„ ๋ณ€๊ฒฝ, ๋ฐ์ดํ„ฐ ์‚ญ์ œ ๋ฐ์ดํ„ฐ ์ƒ์„ฑํ•˜๊ธฐicecream = { '๋ฉ”๋กœ๋‚˜' : 1000, 'ํด๋ผํฌ' : 1200, '๋นต๋น ๋ ˆ' :1800 } ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ํ•˜๊ธฐicecream['์ฃ ์Šค๋ฐ”'] = 1200icecream['์›”๋“œ์ฝ˜'] = 1500 ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐicecream['๋ฉ”๋กœ๋‚˜']1000 '๋ฉ”๋กœ๋‚˜ ๊ฐ€๊ฒฉ: ' + str( icecream['๋ฉ”๋กœ๋‚˜'] )'๋ฉ”๋กœ๋‚˜ ๊ฐ€๊ฒฉ: 1000' '๋ฉ”๋กœ๋‚˜ ๊ฐ€๊ฒฉ: {}'.format( icecream['๋ฉ”๋กœ๋‚˜'] )'๋ฉ”๋กœ๋‚˜ ๊ฐ€๊ฒฉ: 1000' ๋ฐ์ดํ„ฐ ์ˆ˜์ •ํ•˜๊ธฐicecream['๋ฉ”๋กœ๋‚˜'] = 1300  ๋ฐ์ดํ„ฐ ์‚ญ์ œํ•˜๊ธฐdel ic..

๋‹ค์ฐจ์› ๋ฐฐ์—ด์˜ ๊ตฌ์กฐ์™€ ์—ฐ์‚ฐ

anaconda prompt์—์„œ ์ฃผํ”ผํ„ฐ ๋…ธํŠธ๋ถ ์‹คํ–‰ํ•˜๊ธฐ>> jupyter notebook . Save and Load datanp.save('์ง€์ •ํ•˜๊ณ ์ž ํ•˜๋Š” ํŒŒ์ผ๋ช…', X)np.load(' ์ง€์ •ํ•œ ํŒŒ์ผ๋ช….npy ') ๋ฆฌ์ŠคํŠธ ์ƒ์„ฑํ•˜๊ธฐscore_list = [100, 90, 75, 66, 98] ๋ฆฌ์ŠคํŠธ ์ถ”๊ฐ€ํ•˜๊ธฐscore_list.append(58)score_list.append(87) ๋ฆฌ์ŠคํŠธ ๋ณ€๊ฒฝํ•˜๊ธฐ score_list[0] = 99 ๋ฆฌ์ŠคํŠธ ์‚ญ์ œํ•˜๊ธฐdel score_list[5] ๊ฒฐ๊ณผ[99, 90, 75, 66, 98, 87] ํ‰๊ท ๊ตฌํ•˜๊ธฐsum(score_list) / len(score_list)         ๊ฒฐ๊ณผ : 85.6 ํ‰๊ท  ๊ตฌํ•˜๋Š” ํ•จ์ˆ˜๋กœ ํ‰๊ท ๊ตฌํ•˜๊ธฐscore_list.mean() ํ‘œ์ค€ํŽธ์ฐจ ๊ตฌํ•˜๊ธฐsco..