df["price"] = (
df["price"]
.astype("string")
.str.replace("원", "", regex=False)
.str.replace(",", "", regex=False)
)
df["price"] = pd.to_numeric(df["price"], errors="coerce")
df["price"]
목적
숫자 계산이나 분석하려면 문자열 제거하고 숫자형으로 바꿔야 함
이걸로 평균, 합계, 머신러닝 모델 입력 등 가능해짐
.astype("string")price 컬럼을 문자열 타입으로 바꿔줌
.str.replace() 같은 문자열 메서드 쓰기 위해 필요
.str.replace("원", "", regex=False)"1200원" → "1200" 이렇게 "원" 단위 제거
정규식 없이 문자 그대로 찾으려고 regex=False 사용
.str.replace(",", "", regex=False)천 단위 쉼표 제거 ("1,200" → "1200")
pd.to_numeric(..., errors="coerce")문자열을 숫자형으로 변환
숫자로 바꿀 수 없는 값은 NaN으로 처리됨 (예: "무료")
| 원래 값 | 문자열 처리 후 | 숫자형 결과 |
|---|---|---|
| "1,200원" | "1200" | 1200 |
| "무료" | "무료" | NaN |