반응형
pd.concat을 이용해서 train과 test를 붙인 뒤
전처리를 완료하고
다시 인덱스를 이용해서 분리한다.
전처리할 때, test의 정보를 이용해서 train 넣으면 안된다.
(평균으로 결측값 넣기 등)
데이터 출처
https://www.kaggle.com/c/bike-sharing-demand/data
위 Kaggle의 데이터를 이용한다.
데이터 불러오기
train
train의 레코드 개수는 총 10,886개이며
인덱스는 0부터 10885까지로 되어있다.
test
test 데이터셋 또한 레코드는 총 6,493개이며
인덱스는 0부터 6492까지로 구성 되어있다.
pd.concat
axis=0으로 concat을 하면 행이 연결된다.
총 17,379개로 만들어지며 합치더라도 인덱스는 그대로 유지된다.
train만 다시 가져오려면?
iloc를 이용한다.
train의 shape[0]은 10886이므로 10886을 포함하지 않는 10885까지 걸러내면
그게 바로 train만 얻는 것이다.
test만 다시 가져오려면?
train.shape[0]은 10886이므로 그 인덱스부터는 test의 인덱스이므로
iloc를 이용해 걸러내면 test를 다시 찾아낼 수 있다.
* train에만 있던 casual, registered, count컬럼이 생성되고 모두 누락값으로 구성되었다.
실전 - weather 컬럼 원핫인코딩
weather 컬럼의 고유값은 1, 2, 3, 4이다.
이를 get_dummies를 이용해서 각각의 컬럼으로 만들어주자.
concated와 다시 pd.concat
잘 추가되었다.
train / test로 재분리
검토
test에 causal, registered, count 컬럼이 추가된 것 말곤 이상없이 잘 분리되었다.
반응형
'Kaggle' 카테고리의 다른 글
Kaggle - Bike Sharing Demand : Fit, Predict (Random Forest) (0) | 2020.08.20 |
---|---|
Kaggle - Bike Sharing Demand : Hyperparameter Tuning (하이퍼파라미터 튜닝) (0) | 2020.08.19 |
Kaggle - Bike Sharing Demand : Evaluation (Random Forest, Cross-validation) (0) | 2020.08.19 |
Kaggle - Bike Sharing Demand : EDA & Feature Engineering (2) (0) | 2020.08.19 |
Kaggle - Bike Sharing Demand : EDA & Feature Engineering (0) | 2020.08.18 |