📝파이썬 판다스 데이터프레임 조건 데이터 가져오기
조건 하나를 만족하는 데이터 전체 가져오기 / 특정 컬럼 가져오기
# 해당 컬럼의 값이 3이상인 데이터(행)만 가져오기
>>> df.loc[ df['컬럼'] >= 3 ]
# 해당 컬럼a의 값이 3이상인 특정 컬럼들만 가져오기
>>> df.loc[ df['컬럼a'] >= 3, ['컬럼', '컬럼'] ] # 콜론(:)도 가능
조건 두개를 만족하는 데이터 전체 가져오기 ( &를 사용한다 )
# 해당 컬럼의 값이 4이상이고 8이하인 데이터(행)만 가져오기
>>> df.loc[ (df['컬럼'] >= 4) & (df['컬럼'] <= 8) ]
# 해당 컬럼a의 값이 4이상이고 8이하인 특정 컬럼들만 가져오기
>>> df.loc[ (df['컬럼'] >= 4) & (df['컬럼'] <= 8), ['컬럼','컬럼'] ] # 콜론(:)도 가능
함수를 사용해 특정 조건을 만족하는 데이터만 가져오기도 가능하다
# 해당 컬럼에서 최대값과 일치하는 데이터(행을) 가져오기
>>> df.loc[ (df['컬럼']) == (df['컬럼'].max()) ]
# 해당 컬럼에서 최대값과 일치하는 특정 컬럼들만 가져오기
>>> df.loc[ (df['컬럼']) == (df['컬럼'].max()), ['컬럼','컬럼'] ] # 콜론(:)도 가능
조건을 여러개 사용해야할 경우 isin으로도 처리가 가능하다
# 조건이 여러개일때 정석 방법
>>> df.loc[ (df['컬럼'] >= 95) & ((df['컬럼'] == '컬럼 데이터') | (df['컬럼'] == '컬럼 데이터')) ]
# isin 사용하면 줄일 수 있다
>>> df.loc[ (df['컬럼'] >= 95) & (df['컬럼'].isin(['컬럼 데이터', '컬럼 데이터'])) ]
'Python > Pandas' 카테고리의 다른 글
[Python] Pandas DataFrame 정렬하기 sort_values(), sort_index() (0) | 2022.11.25 |
---|---|
[Python] Pandas DataFrame 함수 적용하기 apply() (0) | 2022.11.25 |
[Python] Pandas DataFrame 중복 데이터 그룹하기 groupby() (0) | 2022.11.24 |
[Python] Pandas DataFrame 함수 숫자 데이터만 계산하기(numeric_only=True) (0) | 2022.11.24 |
[Python] Pandas DataFrame NaN값 처리하기 isna(), notna(), dropna(), fillna() (0) | 2022.11.24 |
댓글