형변환 (python)

최민석·2021년 7월 14일
0

data science

목록 보기
2/12

데이터 분석을 위하여 작업하기 좋기 위하여 전처리가 필요하다
raw data를 가져오다보면 "5,562" 와 같은 문자열 형태로 저장된 데이터가 존재하다
이를 자료형을 변환하려고 해도 쉼표","가 존재하여 곤란한 경우가 있다
아래와 같은 솔루션으로 이를 해결해보자

반복문을 통한 데이터 클리닝 솔루션

def col_cleaning(col):
  # 빈 리스트 준비
  temp_list = [] 

  for i in col:
    temp = int(i.replace(",", ""))  # ','제거 후  int로 변환 
    temp_list.append(temp)  #변환 데이터를 리스트로 추가

  return temp_list # 함수의 결과로 리스트를 반환

사용자 정의 함수를 통한 적용

def toInt(string):
    return int(string.replace(',',''))
    
df_tidy['col1'] = df_tidy['col1'].apply(toInt)

조건식을 통한 텍스트 대체

raw data 중에는 '-' 혹은 '.' 등의 텍스트로 보여질 때가 있다
replace 외에도 일괄 np.where를 통한 대체를 할 수 있다

#- 제거
for i in se_tree:
    se_tree[i]  = np.where(se_tree[i] == '-', '0', se_tree[i])

replace를 통한 일괄 대체

trees = trees.replace({'-':0})
profile
학습기록

0개의 댓글