๐Ÿ Python

[Python]pandas

๋‰ด์ด NUEY 2024. 6. 12. 00:35
๋ฐ˜์‘ํ˜•

 

pandas Cheat Sheet :
์š”์•ฝ๋ณธ

๊ตฌ๊ธ€์— pandas cheat sheet๋ผ๊ณ  ์น˜๋ฉด ๋‚˜์˜จ๋‹ค.


pandas
ํŠน์ง•
  •  
  • ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ด๋ฉฐ ๋‹ค์–‘ํ•œ ํ‘œํ˜„๋ ฅ์„ ๊ฐ–์ถ˜ ์ž๋ฃŒ ๊ตฌ์กฐ.
    • ์‹ค์„ธ๊ณ„ ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง„ ํŒŒ์ด์ฌ ํŒจํ‚ค์ง€.
  • ๋‹ค์–‘ํ•œ ํ˜•ํƒœ์˜ ๋ฐ์ดํ„ฐ์— ์ ํ•ฉ.
    • ์ด์ข… ์ž๋ฃŒํ˜•์˜ ์—ด์„ ๊ฐ€์ง„ ํ…Œ์ด๋ธ” ๋ฐ์ดํ„ฐ.
    • ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ.(๋‚ ์”จ์™€ ์ฃผ๊ฐ€์ฒ˜๋Ÿผ ์‹œ๊ฐ„์— ๋”ฐ๋ผ ๋ณ€ํ•˜๋Š” ๋ฐ์ดํ„ฐ)
    • ๋ ˆ์ด๋ธ”(์ œ๋ชฉ)์„ ๊ฐ€์ง„ ๋‹ค์–‘ํ•œ ํ–‰๋ ฌ ๋ฐ์ดํ„ฐ.
    • ๋‹ค์–‘ํ•œ ๊ด€์ธก ํ†ต๊ณ„ ๋ฐ์ดํ„ฐ.
  • ํ•ต์‹ฌ ๊ตฌ์ฃ .
    • series : 1์ฐจ์› ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง„ ํ•˜๋‚˜์˜ ์—ด.
    • DataFrame : ๋ณต์ˆ˜์˜ ์—ด์„ ๊ฐ€์ง„ 2์ฐจ์› ๋ฐ์ดํ„ฐ.(์—‘์…€ ์‹œํŠธ ํ•˜๋‚˜์™€ ๊ฐ™๋‹ค.)
  • pandas๊ฐ€ ์ž˜ํ•˜๋Š” ์ผ.
    • ๊ฒฐ์ธก ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ.(์ค‘๊ฐ„์ค‘๊ฐ„ ๋ฐ์ดํ„ฐ๊ฐ€ ๋น ์ง„ ๊ฒฝ์šฐ๋ฅผ ์ž˜ ์ฒ˜๋ฆฌํ•œ๋‹ค)
    • ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€/์‚ญ์ œ.
    • ๋ฐ์ดํ„ฐ ์ •๋ ฌ๊ณผ ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์กฐ์ž‘.
โ€ป pandas๋Š” 'panel data'๋ผ๋Š”๊ณ„๋Ÿ‰๊ฒฝ์ œํ•™๋ถ„์•ผ ์šฉ์–ด์—์„œ ์œ ๋ž˜๋˜์—ˆ๋‹ค.
โ€ป import pandas as pd ์™€ ๊ฐ™์ด ์ค„์—ฌ์„œ ์“ธ ๊ฒฝ์šฐ pd๋ฅผ ์ฃผ๋กœ ์“ด๋‹ค.

pandas๋กœ ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ
  • python์˜ List, Dictionary, NumPy ๋“ฑ์˜ ๋ฐฐ์—ด์„ ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„(์—‘์…€)๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
  • CSV๋‚˜ ์—‘์…€ ํŒŒ์ผ ๋“ฑ์„ ์—ด ์ˆ˜ ์žˆ๋‹ค.
  • URL์„ ์ด์šฉํ•ด ์›น ์‚ฌ์ดํŠธ์˜ CSV ๋˜๋Š” Json๊ณผ ๊ฐ™์€ ์›๊ฒฉ ํŒŒ์ผ ๋˜๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์—ด ์ˆ˜ ์žˆ๋‹ค.

  • ๋ฐ์ดํ„ฐ ๋ณด๊ธฐ ๋ฐ ๊ฒ€์‚ฌ
    • mean() : ๋ชจ๋“  ์—ด์˜ ํ‰๊ท  ๊ณ„์‚ฐ.
    • corr() : ๋ฐ์ดํ„ฐ ํ”„๋ ˆ์ž„ ์—ด ์‚ฌ์ด์˜ ์ƒ๊ด€ ๊ด€๊ณ„ ๊ณ„์‚ฐ.
    • count() : ๊ฐ ์—ด์—์„œ null์ด ์•„๋‹Œ ๊ฐ’์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ณ„์‚ฐ.
  • ํ•„ํ„ฐ, ์ •๋ ฌ ๋ฐ ๊ทธ๋ฃนํ™”
    • sort_values() : ๋ฐ์ดํ„ฐ ์ •๋ ฌ.
    • ์กฐ๊ฑด์„ ์ด์šฉํ•˜์—ฌ ํ•„ํ„ฐ๋ง ๊ฐ€๋Šฅ.
    • groupby() : ๊ธฐ์ค€์— ๋”ฐ๋ผ ๊ทธ๋ฃน์œผ๋กœ ๋ถ„ํ•  ๊ฐ€๋Šฅ.
  • ๋ฐ์ดํ„ฐ ์ •์ œ
    • ๋ˆ„๋ฝ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.
    • ํŠน์ • ๊ฐ’์„ ๋‹ค๋ฅธ ๊ฐ’์œผ๋กœ ๋Œ€์ฒด๊ฐ€๋Šฅํ•˜๋‹ค.

pandas
๋ฐ์ดํ„ฐ ๊ตฌ์กฐ

  • ๋ฐ์ดํ„ฐ ์ €์žฅ์„ ์œ„ํ•˜์—ฌ Series์™€ Data Frame ๋‘๊ฐ€์ง€์˜ ๊ตฌ์กฐ๊ฐ€ ์žˆ๋‹ค.
  • ๋‘๊ฐ€์ง€ ๋ชจ๋‘ NumPy ๋ฐฐ์—ด์„ ์ด์š”ํ•˜๋ฏ€๋กœ ์†๋„๊ฐ€ ๋น ๋ฅด๋‹ค.
  • ๊ฐ’ ๋ณ€๊ฒฝ์ด ๊ฐ€๋Šฅํ•˜๊ณ , Data Frame์€ ํฌ๊ธฐ๋„ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ.
  • ํ–‰๊ณผ ์—ด์€ ์ด๋ฆ„์ด ๋ถ€์—ฌ๋˜๋ฉฐ ํ–‰์˜ ์ด๋ฆ„์€ index. ์—ด์˜ ์ด๋ฆ„์€ columns๋ผ ๋ถ€๋ฅธ๋‹ค.
  • ๋‹น์—ฐํ•˜๊ฒŒ๋„ DataFrame์ด ๋” ๋งŽ์ด ์‚ฌ์šฉ๋œ๋‹ค.
๋ฐ์ดํ„ฐ ๊ตฌ์กฐ ์ฐจ์› ์„ค๋ช…
Series 1 ๋ ˆ์ด๋ธ”label์ด ๋ถ™์–ด ์žˆ๋Š” 1์ฐจ์› ๋ฒกํ„ฐ.
Data Frame 2 ํ–‰๊ณผ ์—ด๋กœ ๋œ 2์ฐจ์› ํ…Œ์ด๋ธ”, ๊ฐ ์—ด์€ series๋กœ ๋˜์–ด์žˆ๋‹ค.
→ series์˜ ๋ชจ์Œ์ด data frame์œผ๋กœ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
โ€ป ์ค„์—ฌ์„œ df๋กœ ๋งŽ์ด ์“ด๋‹ค.

 

numpy.nan
: ๊ฒฐ์ธก์น˜

  • numpy์˜ nan์€ NaN(Not a Number)๊ณผ ๋™์ผํ•œ ํ‘œ๊ธฐ์ด๋‹ค.
  • ์ˆ˜์น˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์—†์„ ๊ฒฝ์šฐ ์ด๋ฅผ ํ‘œ๊ธฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.
  • nan์ด ์žˆ์„ ๊ฒฝ์šฐ ์‹ค์ˆ˜.

CSV ํŒŒ์ผ :
Comma
Seperated
Value
→์‰ผํ‘œ๋กœ ๊ตฌ๋ถ„๋œ ๋ฐ์ดํ„ฐ.
read_csv() :
csvํŒŒ์ผ ์ฝ์–ด์˜ค๊ธฐ

์œ„ csvํŒŒ์ผ์˜ ์‹œ์ž‘์ด ,์ฝคํŒŒ๋กœ ์‹œ์ž‘ํ•˜๋Š” ์ด์œ 

 

ex02ํŒŒ์ผ ์ž‘์—…์ค‘ dataํด๋”์— ์žˆ๋Š” ๊ฑธ ๊ฐ€์ ธ๋‹ค ์“ธ ๊ฒฝ์šฐ

 

pandas์˜ read_csv()ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

์ž๋™์™„์„ฑ ๊ธฐ๋Šฅ์ธ Tab์ด ์•ˆ ๋จนํž ๊ฒฝ์šฐ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉ.
%config Completer.use_jedi = False

 

df๋ฅผ runํ•ด๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋œธ.

  • ,๋กœ ์‹œ์ž‘ํ•ด์„œ ์ปฌ๋Ÿผ๋ช…์„ ์ง€์ •ํ•˜์ง€ ์•Š์•˜์„ ๊ฒฝ์šฐ Unnamed: ๋กœ ๋งŒ๋“ค์–ด์ง„๋‹ค.
  • ์ž๋™์œผ๋กœ index๊ฐ€ ์ƒ์„ฑ๋œ๋‹ค. 0, 1, 2, 3..

Shift + Tab :
ํ•จ์ˆ˜ ์‚ฌ์šฉ ์˜ต์…˜ ๋ณด๊ธฐ

ํ•จ์ˆ˜()์•ˆ์—์„œ ,๋ฅผ ์ฐ๊ณ  Shift + Tab์„ ๋ˆ„๋ฅด๋ฉด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.
์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ +๋ฅผ ๋ˆ„๋ฅด๋ฉด ์ด๋ ‡๊ฒŒ ์ƒ์„ธ์„ค์ •์ด ๋ณด์ธ๋‹ค.


, index_col :
์ง€์ • ์—ด์„ index๋กœ ์‚ฌ์šฉ

 

์œ„์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋ฉด ๊ตญ๊ฐ€์ฝ”๋“œ(ex.KR)๋กœ๋„ ์œ ์ผ์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— index๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด ์—ด์„ index๋กœ ์ง€์ •ํ•ด๋ณด์ž.

ํ•จ์ˆ˜ ์˜ต์…˜์œผ๋กœ index_col=0 ์ฒซ๋ฒˆ์งธ ์—ด์„ index๋กœ ์ง€์ •ํ–ˆ๋‹ค.

 


df['์ปฌ๋Ÿผ๋ช…'] :
ํŠน์ • ์—ด๋งŒ ์„ ํƒํ•˜๊ธฐ

 

๋‘๊ฐœ ์ด์ƒ์˜ ์—ด์„ ์ง€์ •ํ•ด์„œ ๋ถˆ๋Ÿฌ์˜ค๊ณ  ์‹ถ์„ ๊ฒฝ์šฐ์—๋Š”
์•„๋ž˜์ฒ˜๋Ÿผ List[ ]๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

 

๋ฐ˜์‘ํ˜•