오늘은 직접 데이터를 가지고 전처리 하는 시간을 가졌다.
데이터 모든 열이 유요한 데이터를 가지고 있지 않다는 것을 발견하였고, 이를 처리하기 위해 trainset과 testset에서 동시에 의미를 갖지 않는 것을 전처리를 진행하였다.
train_wt_columns = train_df.columns[(train_df == 'WT').all()].tolist()
test_wt_columns = test_df.columns[(test_df == 'WT').all()].tolist()
print('데이터셋에서 값이 모두 WT인 열 개수')
print('trainSet: ', len(train_wt_columns))
print('testSet: ', len(test_wt_columns))
cnt = 0
both_wt_columns = []
for gene in train_wt_columns:
if gene in test_wt_columns:
both_wt_columns.append(gene)
cnt += 1
print('두 데이터셋에서 값이 모두 WT인 열 개수:', cnt)
both_wt_columns
또한 모든 행의 의미를 갖고 있는지 확인하였는데, 이도 열과 동일하게 의미를 갖지 않는 것이 확인되어 전처리를 진행하였다.
train_wt_rows = train_df[(train_df.iloc[:, 2:] == 'WT').all(axis=1)]
test_wt_rows = test_df[(test_df.iloc[:, 1:] == 'WT').all(axis=1)]
print('데이터셋에서 값이 모두 WT인 행 개수')
print('trainSet: ', len(train_wt_rows))
print('testSet: ', len(test_wt_rows))
이때 gene의 가장 많은 THYM으로 처리하도록 하였다.
→ 이후 matrix의 sequence를 바꿔주는 작업을 진행하였다.