> For the complete documentation index, see [llms.txt](https://air-pro.gitbook.io/air-delay-project/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://air-pro.gitbook.io/air-delay-project/undefined-2/undefined-3/3.md).

# 3차 전처리 과정

## 전처리 과정 명세

이때까지의 과정과 대표적인 차이점은 다음과 같다.&#x20;

1. 계획 실제 시간차이가 -180분 이하일 경우 제외
2. 학습 데이터에서 분 단위 정보를 제거
3. 기존의 출발과 도착 데이터셋으로 나눴던 것을 다시 병합
4. 시간 데이터 그룹화

## 실행 코드

```python
    df = df.loc[df['CNL'] == 'N']
	#등록 기호 제거
	df = df[df['REG'].notnull()]
	#부정기편 제거하기
	df = df[ df['IRR'] == "N" ]
	# 시/분 단위로 나누기
	STT_Hour = []
	STT_Minute = []
	ATT_Hour = []
	ATT_Minute = []
	STT = df['STT']
	ATT = df['ATT']
	sub = STT.str.split(':', expand = True)
	STT_Hour = sub.iloc[0:, 0]
	STT_Minute = sub.iloc[0:, 1]
	sub2 = ATT.str.split(':', expand = True)
	ATT_Hour = sub2.iloc[0:, 0]
	ATT_Minute = sub2.iloc[0:, 1]
	df['STT_H'] = STT_Hour.astype(int)
	df['STT_M'] = STT_Minute.astype(int)
	df['ATT_H'] = ATT_Hour.astype(int)
	df['ATT_M'] = ATT_Minute.astype(int)
	df_STT_Time = df['STT_H'] * 60 + df['STT_M']
	df_ATT_Time = df['ATT_H'] * 60 + df['ATT_M']
	df_H3 = df_ATT_Time - df_STT_Time
	# H3값이 음수면 빨리 출발, 양수면 늦은 출발(지연가능)
	df['Time'] = df_H3
	df = df.loc[(df['Time'] >= -180) | (df['DLY'] != 'Y') | (df['ATT_H'] < 0) | (df['ATT_H'] > 3) | (df['STT_H'] < 22)]
	df = df.loc[(df['STT_H'] != 0) & (df['STT_H'] != 1) & (df['STT_H'] != 23)]
	df['STT_H'].loc[(df['STT_H'] == 6)] = 0
	df['STT_H'].loc[(df['STT_H'] >= 7) & (df['STT_H'] <= 12)] = 1
	df['STT_H'].loc[(df['STT_H'] >= 13) & (df['STT_H'] <= 19)] = 2
	df['STT_H'].loc[(df['STT_H'] == 20)] = 3
	df['STT_H'].loc[(df['STT_H'] == 21) | (df['STT_H'] == 22)] = 4
```
