Python pandas DataFrame 이나 Series 내 ‘문자열 칼럼’을 ‘숫자형’으로 변환(how to convert string columns to numeric data types in pandas DataFrame, Series) 하는 2가지 방법에 대한 해결책!
(1) pd.to_numeric() 함수를 이용한 문자열 칼럼의 숫자형 변환
(2) astype() 메소드를 이용한 문자열 칼럼의 숫자형 변환
1-1. 한개의 문자열 칼럼을 숫자형으로 바꾸기
변수명[‘새로운컬럼’] = pd.to_numeric(변수명[‘숫자형으로 바꿀 문자형 컬럼’])
1-2. apply() 함수와 to_numeric() 함수를 사용해 DataFrame 내 다수의 문자열 칼럼을 숫자형으로 바꾸기
변수명[[‘새로운컬럼1’, ‘새로운컬럼2’]] = 변수명[[‘기존컬럼’, ‘기존컬럼’]].apply(pd.to_numeric)
1-3. 모두 한번에 바꾸기
[새로운변수명] = [기존변수명].apply(pd.to_numeric)
2-1. DataFrame 내 모든 문자열 칼럼을 float로 한꺼번에 변환하기
[세로운변수명] = [변수명].astype(float)
2-2. DataFrame 내 문자열 칼럼별로 int, float 데이터 형식 개별 지정해서 숫자형으로 변환하기
[새로운변수명] = [변수명].astype({‘컬럼1’: int,
‘컬럼2’: np.float})
- DataFrame에 문자가 포함된 칼럼이 같이 있을 경우 ValueError