df.dtypes: 현재 데이터 타입을 확인astype(): 간단한 타입 변환 (df['컬럼'].astype(int/float))pd.to_numeric(): 문자열을 숫자로 변환할 때, errors='coerce' 옵션을 사용하면 변환 불가능한 값을 자동으로 NaN으로 처리df['컬럼'].str.replace(',', '').astype(float) - 콤마 제거 후 숫자로 변환df['컬럼'].map({'Yes': True, 'No': False}) - 문자열 'Yes'/'No' 등을 True/False로 매핑pd.to_datetime(): 대부분의 날짜 형식을 자동으로 인식하여 datetime64[ns] 타입으로 변환(date_col_clean - other_date_col_clean).dt.days - 날짜 차이를 일(day) 단위로 계산.dt 접근자).dt.year: 연도 추출.dt.month: 월 추출.dt.day_name(): 요일 이름 추출.dt.dayofweek: 요일 번호 (월=0, 일=6).dt.quarter: 분기 추출주말 주문 여부: orders_df['order_date_clean'].dt.dayofweek >= 5
빠른 배송 여부: orders_df['delivery_days'] <= 3
신규 고객 여부: orders_df['days_since_signup'] <= 30
연도-분기 조합: orders_df['order_date_clean'].dt.year.astype(str) + 'Q' + orders_df['quarter'].astype(str)
월초/월말 주문 여부: orders_df['order_date_clean'].dt.day <= 7 또는 >= 25
| 함수명 | 적용 대상 | 반환 타입 | 주요 기능 설명 | 주 사용 목적 |
|---|---|---|---|---|
drop_duplicates() | DataFrame/Series | DataFrame/Series | 중복된 행 또는 값 제거 (기본: 첫 번째만 남김) | 중복 행을 제거하고 깨끗한 데이터 만들기 |
duplicated() | DataFrame/Series | Series (bool) | 각 행(또는 값)이 중복인지 여부를 True/False로 반환 | 중복 행만 필터링할 때 유용 |
unique() | Series | numpy.ndarray | 중복 없이 고유한 값들만 추출 | 열(column)의 유일 값만 확인하고 싶을 때 |
nunique() | Series/DataFrame | int | 고유한 값의 개수만 반환 | 유니크 값 개수 통계 확인할 때 |