데이터 전처리
문제 상황
- '차로' data 추출
- 사고 내용에 사고가 발생한 차로를 추출하려고 하니, 사고 내용에 '교차로' 단어 존재...
- 문제 해결 -> 'find' 함수가 아닌 'rfind' 함수를 사용해 뒤에서부터 찾기
(find 함수 전에 're' 라이브러리를 사용하려고 했던건 안비밀)
- 문제 해결 -> 'find' 함수가 아닌 'rfind' 함수를 사용해 뒤에서부터 찾기
- 첫 벌째 사고 내용에서 발견된 차로 data를 전체 column에 입력하는 문제 발생
- 사고 내용에 사고가 발생한 차로를 추출하려고 하니, 사고 내용에 '교차로' 단어 존재...
def road_index(df):
find_word = '차로'
if find_word not in str(df['돌발내용']):
road_index = 0
else:
word_index = str(df['돌발내용']).find("차로")
road_index = str(df['돌발내용'])[word_index - 2 : word_index].lstrip()
df.insert(8, '차로, road_index)
return df
위 코드의 문제점
- data가
'주공로 별님어린이집 예원유치원 진행방향 전체차로 횡단보도 도색작업 도로공사 반대 차선 확인 요망’
'지방도1132호선 수모루교차로 용당교차로 3차로 주의운전 도로공사 -’
이렇게 있을 때, 차로 column 전체에 ‘3’으로 입력되는 문제 발생 - 원인_1
- 위의 코드는 ['돌발내용'] 을 문자열로 변환하여 전체 df에 대해 검색하는 코드!
- 이를 각 행별로 처리할 수 있게 수정이 필요
- 해결_1
def road_index(df):
if '차로' in df:
word_index = df.rfind("차로")
road_index = df[word_index - 2 : word_index].lstrip()
if road_info is not None:
return road_info
else :
return '0'
df.insert(8, '차로', df['돌발내용'].apply(road_index))
return df
위 코드의 문제점
- 'X차로' 내용이 없으면 모든 데이터가 지워지는 현상 발생...
728x90
'ssung_인턴일지' 카테고리의 다른 글
8일차_Data Preprocessing(3) (0) | 2024.07.11 |
---|---|
7일차_Data Preprocessing(2) (0) | 2024.07.08 |
4일차_Data preprocessing (0) | 2024.07.07 |
3일차_YOLOv7, v8 (0) | 2024.07.07 |
2일차_Image Labeling (0) | 2024.07.02 |