[Python] loc()
Pandas์ loc๋ ๋ ์ด๋ธ ๊ธฐ๋ฐ ๋ฐ์ดํฐ ์ ํ ๋ฐฉ๋ฒ์ ์ ๊ณตํฉ๋๋ค. ์ฆ, ์ธ๋ฑ์ค์ ์ด๋ฆ์ด๋ ์ด ๋ ์ด๋ธ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ํํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ ํํ DataFrame.loc[<row_selection>, <column_selection>]
<row_selection>: ์ ํํ๋ ค๋ ํ์ ์ง์ ํฉ๋๋ค. ์ด๋ ๋จ์ผ ๋ ์ด๋ธ, ๋ ์ด๋ธ ๋ฆฌ์คํธ, ๋ ์ด๋ธ ์ฌ๋ผ์ด์ฑ, ๋ถ๋ฆฌ์ธ ๋ฐฐ์ด ๋ฑ ๋ค์ํ ํํ๊ฐ ๋ ์ ์์ต๋๋ค.
<column_selection>: ์ ํํ๋ ค๋ ์ด์ ์ง์ ํฉ๋๋ค. ์ด๋ ๋ง์ฐฌ๊ฐ์ง๋ก ๋จ์ผ ๋ ์ด๋ธ, ๋ ์ด๋ธ ๋ฆฌ์คํธ, ๋ ์ด๋ธ ์ฌ๋ผ์ด์ฑ ๋ฑ์ผ๋ก ์ง์ ๋ฉ๋๋ค.
# 'A' ์ด ์ ํ
df.loc[:, 'A']
# 'A'์ 'B'์ด ์ ํ
df.loc[:, ['A', 'B']]
# ์ธ๋ฑ์ค 0๋ถํฐ 2๊น์ง ํ๊ณผ ๋ชจ๋ ์ด ์ ํ
df.loc[0:2,:]
# ์กฐ๊ฑด์ ๋ฐ๋ฅธ ํ๊ณผ ๋ชจ๋ ์ด ์ ํ (์: A์ด ๊ฐ > 5)
df.loc[df['A'] > 5,:]
1. ์ฃผ์ด์ง ๋ฐ์ดํฐ์์ A๊ฐ B๋ณด๋ค ํฐ ์ผ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ค๊ธฐ
โ
๋ฐ์ดํฐ ์ด๋ฆ์ results
์ค๋ต์ results['A' > 'B']
โ
์ ๋ต
results[results['A'] > results['B']]
2. ์ ๊ฒฐ๊ณผ์์ 'set'์ ์ปฌ๋ผ ๊ฐ์ ์ถ๋ ฅํ๊ธฐ
โ
๋์ ์ค๋ต results[results['A'] > results['B'].'set']
โ
์ ๋ต
results.loc[results['A'] > results['B'], 'set']