지방이의 Data Science Lab

[Python] 세상 편한 필터링 .query 본문

Data Analysis/Python

[Python] 세상 편한 필터링 .query

[지현] 2021. 2. 9. 19:27
기본형태:
df.query('컬럼명 > 1')

 

.query는 내게 세상 편하다.

이게 조금더 머리에 잘 박히는 것 같다.

다만 알아야하는 부분이 몇가지 존재한다.


(1) 컬럼명에 스페이스 바가 있는 경우: ` ` 사용

1
no_genres_list = genres.query('`(no genres listed)` == 1').index

 

(2) dtypes에 숫자/string 확인하고 맞춰야 함: string인 경우 " " 사용

1
yr1993_list = movies.query('year == "1993"').index

 

(3)리스트로 가지고 있는 경우: @ 사용

1
2
3
4
5
6
7
8
ratings.query('movieId in @yr1993_list')['rating'].mean()
 
output = []
for year in movies.year.unique():
    yr_list = movies.query('year == @year').index
    avg_ratings = round(ratings.query('movieId in @yr_list')['rating'].mean(), 2)
    output.append((year, avg_ratings))
 
 

 

Comments