Python 34

Matplotlib) Pie (ํŒŒ์ด) ์ฐจํŠธ ๊ทธ๋ฆฌ๊ธฐ

๋ฐ์ดํ„ฐ๋ฅผ ํผ์„ผํ…Œ์ด์ง€๋กœ ๋น„๊ตํ•ด์„œ ๋ณด๊ณ ์‹ถ์„๋•Œ Pie chart(ํŒŒ์ด ์ฐจํŠธ)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค  ํฌ์ผ“๋ชฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ด์šฉํ•˜์—ฌ Pie chart๋ฅผ ๊ทธ๋ ค๋ณด์ž  df idspeciesgeneration_idheightweightbase_experiencetype_1type_201bulbasaur10.76.964grasspoison12ivysaur11.013.0142grasspoison23venusaur12.0100.0236grasspoison34charmander10.68.562fireNaN45charmeleon11.119.0142fireNaN...........................802803poipole70.61.8189poisonNaN803804naganadel73.6150.0243poisondragon80480..

Python/Matplotlib 2024.04.15

Matplotlib) Bar chart : countplot ์ฐจํŠธ ๊ทธ๋ฆฌ๊ธฐ

import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sb  ํฌ์ผ“๋ชฌ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋‹ค. idspeciesgeneration_idheightweightbase_experiencetype_1type_201bulbasaur10.76.964grasspoison12ivysaur11.013.0142grasspoison23venusaur12.0100.0236grasspoison34charmander10.68.562fireNaN45charmeleon11.119.0142fireNaN...........................802803poipole70.61.8189poisonNaN803804naganadel73.6150...

Python/Matplotlib 2024.04.15

Matplotlib) ๊ทธ๋ž˜ํ”„ ๋””์ž์ธ ๋ณ€๊ฒฝ ์‹œ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜ ์•Œ์•„๋ณด๊ธฐ

import pandas as pdimport numpy as npimport matplotlib.pyplot as plt   #๋ณ„์นญ์ง€์ •import seaborn as sb MatplotlibํŒŒ์ด์ฌ ์‹œ๊ฐํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ plot() : ๋‹ค์ด์–ด๊ทธ๋žจ์— ์ (๋งˆ์ปค)์„ ๊ทธ๋ฆฌ๋Š”๋ฐ ์‚ฌ์šฉํ•œ๋‹คmarker : ์ง€์ •๋œ ๋งˆ์ปค๋กœ ๊ฐ ์ง€์ ์„ ๊ฐ•์กฐํ•  ์ˆ˜ ์žˆ๋‹ค linestyle : ํ”Œ๋กฏ๋œ ์„ ์˜ ์Šคํƒ€์ผ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค xlable(), ylable() : x์ถ•๊ณผ y์ถ•์— ๋Œ€ํ•œ ๋ ˆ์ด๋ธ”์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค grid() : ํ”Œ๋กฏ์— ๊ทธ๋ฆฌ๋“œ ์„ ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค     subplot() : ์—ฌ๋Ÿฌ ๊ทธ๋ž˜ํ”„๋ฅผ ๊ทธ๋ฆด ์ˆ˜ ์žˆ๋‹ค ex)plt.subplot(1,2,2) #1์ค„์— ๋‘์นธ์— ๋‘๋ฒˆ์งธ์— ๊ทธ๋ž˜ํ”„๋ฅผ ํ‘œ์‹œํ•œ๋‹คex) grid( axis = 'y' )    #๊ทธ..

Python/Matplotlib 2024.04.09

๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(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..

Pandas(ํŒ๋‹ค์Šค) 1์ฐจ์› 2์ฐจ์› ์ƒ์„ฑ๊ณผ ๋ฐ์ดํ„ฐ ์ •๋ฆฌ

Pandas [Panel Data + Python Data Analysis] NumPy and Matplotlib๋ฅผ ํ†ตํ•ฉํ•œ ๊ฒƒ์ด๋‹ค๋ฐ์ดํ„ฐ์…‹๋“ค์„ merge(๋ณ‘ํ•ฉ) ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ๊ธฐ๋ณธ์ ์ธ ํ†ต๊ณ„๋ฐ์ดํ„ฐ ์ œ๊ณตNaN values ๋ฅผ ์•Œ์•„์„œ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค์ˆซ์ž ๋ฌธ์ž์—ด์„ ์•Œ์•„์„œ ๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค์ง€์ €๋ถ„ํ•œ ๋ฐ์ดํ„ฐ์„ธํŠธ๋ฅผ ์ •๋ฆฌํ•˜์—ฌ ์ฝ๊ธฐ ์‰ฝ๊ณ  ๊ด€๋ จ์„ฑ์žˆ๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค ๊ณ ๊ธ‰ => ์ƒ๊ด€๊ด€๊ณ„, ํ”Œ๋กœํŒ…    ์„ค์น˜ pip install pandas  ํŒ๋‹ค์Šค์˜ 1์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ => ์‹œ๋ฆฌ์ฆˆ(Serise)๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹คํŒ๋‹ค์Šค์˜ 2์ฐจ์› ๋ฐ์ดํ„ฐ๋ฅผ = > ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„(DataFrame)์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค  1์ฐจ์› ๋ฐ์ดํ„ฐ : ์‹œ๋ฆฌ์ฆˆ (Serise)  x = pd.Series(data = data, index = index)eggs ..

Python(ํŒŒ์ด์ฌ) ํ•จ์ˆ˜ def ์‚ฌ์šฉํ•˜๊ธฐ

ํ•จ์ˆ˜ :ํ•จ์ˆ˜๋Š” ์ฝ”๋”ฉํ•˜๋Š” ์‚ฌ๋žŒ์—๊ฒŒ ํšจ์œจ์„ฑ, ํŽธ์˜์„ฑ์„ ๊ฐ€์ ธ๋‹ค์ฃผ๊ธฐ ์œ„ํ•ด ์‚ฌ์šฉํ•œ๋‹ค  ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ์—์„  function, ํ•จ์ˆ˜๋ช… () => java method, ํŒŒ์ด์„ ์—์„œ๋Š” def์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค ๋งค๊ฐœ๋ณ€์ˆ˜๋ผ๊ณ  ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ํ•จ์ˆ˜์— ์ „๋‹ฌํ•  ์ˆ˜ ์žˆ๋‹ค ํ˜ธ์ถœ๋  ๋•Œ๋งŒ ์‹คํ–‰๋˜๋Š” ์ฝ”๋“œ๋ธ”๋ก์ด๋‹ค. ๊ฒฐ๊ณผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์–ด๋–ค ์–ธ์–ด์—์„œ๋“  ํ˜ธ์ถœํ•œ๋‹ค ํŒŒ์ด์„ ๋„ ์žฌ๊ท€ํ•จ์ˆ˜(ํ•จ์ˆ˜ ์Šค์Šค๋กœ ์ž์‹ ์„ ํ˜ธ์ถœ)๋ฅผ ํ—ˆ์šฉํ•œ๋‹ค  def my_function(): #ํ•จ์ˆ˜ ํ•จ์ˆ˜๋ช… print("ํ•จ์ˆ˜๋Š” ํ˜ธ์ถœํ• ๋•Œ ์‹คํ–‰") #์ฝ”๋“œ๋ธ”๋Ÿญmy_function() #ํ•จ์ˆ˜๋ช…์„ ๊ทธ๋Œ€๋กœ ๋‹ค์‹œ ์จ์ฃผ๋Š” ๊ฒƒ์„ ํ˜ธ์ถœ์ด๋ผ๊ณ  ํ•œ๋‹ค  ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ "ํŒŒ๋ผ๋ฏธํ„ฐ"๋ผ๊ณ  ํ•˜๊ณ ,  ๋งค๊ฐœ๋ณ€์ˆ˜ ์ˆ˜๋ฅผ "์ธ์ˆ˜"๋ผ๊ณ  ํ•œ๋‹ค ํ•จ์ˆ˜์˜ ๊ด€์ ์—์„œ ๋ณด๋ฉด ๋งค๊ฐœ๋ณ€์ˆ˜๋Š” ํ•จ์ˆ˜์ •์˜..

์กฐ๊ฑด๋ฌธ (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-..

Python ๋ฐ˜๋ณต๋ฌธ(for, while) ์ž‘์„ฑํ•˜๊ธฐ

๋ฐ˜๋ณต๋ฌธํŒŒ์ด์ฌ์—๋Š” ๋‘๊ฐ€์ง€ ๊ธฐ๋ณธ ๋ฃจํ”„๋ช…๋ น์ด ์žˆ์Šต๋‹ˆ๋‹ค-while -for  while# break๋ฌธ : ์ง€์ •๋œ ์ˆซ์ž์—์„œ ์ค‘์ง€ํ•œ๋‹คw = 1while w   #continue Statement : ์ง€์ •๋œ ์ˆซ์ž๋ฅผ ๊ฑด๋„ˆ๋›ฐ๊ณ  ์ง€์ •๋œ ๋ฒ”์œ„๊นŒ์ง€ ๊ณ„์†ํ•œ๋‹คcont = 0while cont   forFor๋Š” ์‹œํ€€์Šค(๋ชฉ๋ก,ํŠœํ”Œ,์‚ฌ์ „,์ง‘ํ•ฉ ๋˜๋Š” ๋ฌธ์ž์—ด)์„ ๋ฐ˜๋ณตํ•˜๋Š”๋ฐ ์‚ฌ์šฉํ•œ๋‹คfruits = ["apple","banana","cherry"]for z in fruits: if z == "banana": break print(z) => ๊ฒฐ๊ณผ : "apple","banana"  range ์‚ฌ์šฉํ•˜๊ธฐ for i in range(3) : print("๋น„ํŠธ์ฝ”์ธ") ๊ฒฐ๊ณผ๋น„ํŠธ์ฝ”์ธ๋น„ํŠธ์ฝ”์ธ๋น„ํŠธ์ฝ”์ธ  for i in range..