๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Python/Pandas

[pandas] ์กฐ๊ฑด์— ๋งž๋Š” ๋ฐ์ดํ„ฐ ํ•„ํ„ฐ๋ง : where( ), query( )

by ISLA! 2023. 9. 7.

๐Ÿฅ‘ ์กฐ๊ฑด์— ๋งž์ง€ ์•Š๋Š” ๊ฐ’์„ ์ผ๊ด„ ๋Œ€์ฒดํ•˜๊ณ  ์‹ถ์„ ๋•Œ : where( )

  • ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด ํ™•์ธ : num_actor ์—ด์˜ ๊ฐ’์ด 2์ด๋ฉด ๊ทธ๋Œ€๋กœ ๋‘๊ณ , ์•„๋‹ ๊ฒฝ์šฐ False๋กœ ๋ณ€๊ฒฝ
  • ํ˜•์‹ : .where(์กฐ๊ฑด, ๊ฑฐ์ง“์ผ๋•Œ์˜ ๊ฐ’)

 

copied_data  = df.copy()
copied_data['two_actors'] = copied_data['num_actor'].where(copied_data['num_actor'] == 2, "False")
copied_data[['two_actors']].head(2)

 

 

๐Ÿฅ‘ ์ฝ”๋“œ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ž‘์„ฑํ•˜์—ฌ ํ•„ํ„ฐ๋งํ•˜๊ณ  ์‹ถ์„ ๋•Œ : query( )

  • query( ) ๋ฉ”์„œ๋“œ๋Š” ๋ฌธ์ž์—ด๋กœ ํ‘œํ˜„๋œ ์กฐ๊ฑด์„ ์ž…๋ ฅ์œผ๋กœ ๋ฐ›๋Š”๋‹ค
  • ์กฐ๊ฑด์‹์€ ๋ฐ์ดํ„ฐํ”„๋ ˆ์ž„์˜ ์—ด ์ด๋ฆ„์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์„ฑ๋œ๋‹ค
  • ์—ฌ๋Ÿฌ๊ฐœ์˜ ์กฐ๊ฑด์€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค
  • ์•„๋ž˜ ์˜ˆ์‹œ์—์„œ, data[data['time']] < 60 ๋ณด๋‹ค ํ›จ์”ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•„ํ„ฐ๋ง์ด ๊ฐ€๋Šฅ
copied_data = df.copy()
under_60 = copied_data.query('time < 60')
under_60.head()

 

 

copied_data = df.copy()
under_2staff = copied_data.query('num_staff < 2')
under_2staff.head()

 

728x90