본문 바로가기
DNN with Keras/Machine Learning

그룹화, 정렬 및 섞기 (1)

by goatlab 2023. 7. 27.
728x90
반응형
SMALL

Grouping, Sorting, and Shuffling

 

전체 판다스 데이터 프레임에 영향을 미치는 몇 가지 방법이 있다. 이러한 기술을 통해 데이터 세트를 그룹화, 정렬 및 셔플할 수 있다. 이는 모두 데이터 전처리 및 평가를 위한 필수 작업이다.

 

Shuffling a Dataset

 

데이터 세트의 행 순서대로 숨어 있는 정보가 있을 수 있다. 시계열 데이터를 다루고 있지 않는 한 행의 순서는 유의하지 않아야 한다. 그러나 순서의 데이터를 가지고 있는 것이 문제가 될 수 있다. 데이터를 훈 및 검증으로 분할하는 경우를 고려해야 한다. 데이터를 k겹 교차 검증으로 분리하는 경우에도 문제가 발생할 수 있다. 이러한 문제 때문에 데이터 세트를 셔플하는 것이 중요하다.

 

종종 셔플과 재인덱싱이 함께 수행된다. 셔플링은 데이터 세트의 순서를 무작위로 만든다. 그러나 판다스의 행 번호는 변경되지 않는다.

 

import os
import pandas as pd
import numpy as np

np.random.seed(42)

df = pd.read_csv('auto-mpg.csv', na_values = ['NA', '?'])

df = df.reindex(np.random.permutation(df.index))

pd.set_option('display.max_columns', 7)
pd.set_option('display.max_rows', 5)
display(df)

 

다음 코드는 재인덱싱을 보여준다. 재인덱스가 행 인덱스를 정렬하는 방법에 주목해야 한다.

 

df.reset_index(inplace = True, drop = True)

display(df)

728x90
반응형
LIST