Python to AI

Python - Pandas(feat.isin(), astype())

최 수빈 2024. 12. 8. 17:03

 

기본 조건부 필터링

import pandas as pd

#예시 데이터프레임 생성
data = {
    '이름': ['철수', '영희', '민수', '지수'],
    '나이': [25, 30, 22, 35],
    '직업': ['학생', '회사원', '학생', '프리랜서']
           }
df = pd.DataFrame(data)

#나이가 25 이상인 행만 선택
filtered_df = df[df['나이'] >= 25]
filtered_dftered_df

 

 

여러 조건을 사용한 필터링(And(&), OR(|))

#여러 조건을 사용한 필터릴 AMd(&), OR(|)

#나이가 25이상이고, 직업이 '학생'인 행만 선택
filtered_df = df[(df['나이'] >= 25) & (df['직업'] == '학생')]
filtered_df

 

isin()을 사용한 필터링 - 특정 값들이 포함된 행을 필터링 할 때 유용

#isin()을 사용한 필터링 - 특정 값들이 포함된 행을 필터링 할 때 유용

#직업이 '학생' 또는 '프리랜서'인 행 선택
filtered_df = df[df['직업'].isin(['학생', '프리랜서'])]
filtered_df

 

~연산자를 사용한 반대 조건 필터링 - 특정 조건 부정하는 데이터 선택할 때 사용

# ~연산자를 시용한 반대 조건 필터링 - 특정 조건 부정하는 데이터 선택할 때 사용

#직업이 '학생'이 아닌 행 선택
filtered_df = df[~(df['직업'] == '학생')]
filtered_df

 

데이터 타입 변환

#dtype으로 데이터 타입확인
print(df.dtypes)

#astype()을 사용한 데이터 타입 변환

#'나이'열을 정수형(Int)에서 실수형(float)로 변환
df['나이'] = df['나이'].astype(float)
df.dtypes

 

날짜 타입으로 변환

#예시 데이터프레임 생성
data = {
    '이름' : ['철수', '영희', '민수'],
    '가입일' : ['2023-01-01', '2022-12-15', '2023-05-22'],
    '직업': ['학생', '회사원', '프리랜서']
}
df = pd.DataFrame(data)

#'가입일'dmㄹ 날짜 타입으로 변환
df['가입일'] = pd.to_datetime(df['가입일'])
df.dtypes

 

  • datetime64: 날짜와 시간을 나타내는 NumPy 데이터 타입
  • [ns]: 나노초(nanoseconds) 단위로 시간 정밀도를 나타냄
  • datetime64[ns] : Pandas 라이브러리에서 사용하는 데이터 유형 중 하나, 날짜와 시간을 고해상도로 표현하기 위한 데이터 타입. Timestamp 객체나 시계열 데이터에서 자주 사용.

 

 

 

카테고리 데이터로 변환 - 메모리 절약, 성능 높이기 위해 사용

#'직업'열을 카테고리형으로 변환
df['직업'] = df['직업'].astype('category')
df.dtypes