inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

이원 분산 분석

유형2번 코드 작성해보았는데...

해결된 질문

143

한정수

작성한 질문수 10

0

# 시험환경 세팅 (코드 변경 X)

import pandas as pd

import numpy as np

from sklearn.model_selection import train_test_split

def exam_data_load(df, target, id_name="", null_name=""):

if id_name == "":

df = df.reset_index().rename(columns={"index": "id"})

id_name = 'id'

else:

id_name = id_name

if null_name != "":

df[df == null_name] = np.nan

X_train, X_test = train_test_split(df, test_size=0.2, random_state=2021)

y_train = X_train[[id_name, target]]

X_train = X_train.drop(columns=[target])

y_test = X_test[[id_name, target]]

X_test = X_test.drop(columns=[target])

return X_train, X_test, y_train, y_test

df = pd.read_csv("../input/titanic/train.csv")

X_train, X_test, y_train, y_test = exam_data_load(df, target='Survived', id_name='PassengerId')

X_train.shape, X_test.shape, y_train.shape, y_test.shape

#Survived예측

print(X_test.shape)

target=y_train['Survived']

test_id=X_test['PassengerId'].copy()

test=X_test

train=X_train

print(train.shape, test.shape)

train=train.drop('PassengerId', axis=1)

test=test.drop('PassengerId', axis=1)

train=train.drop('Name', axis=1)

test=test.drop('Name', axis=1)

print(train.shape, test.shape)

#합치기

df=pd.concat([train, test])

df['Age']=df['Age'].fillna(df['Age'].mean())

df['Cabin']=df['Cabin'].fillna(df['Cabin'].mode()[0])

df['Embarked']=df['Embarked'].fillna(df['Embarked'].mode()[0])

#인코딩

from sklearn.preprocessing import LabelEncoder

cols=df.select_dtypes(include='O').columns

for col in cols:

le=LabelEncoder()

df[col]=le.fit_transform(df[col])

#쪼개기(712, 179)

train=df[:712]

test=df[712:]

print(train.shape, test.shape)

print(target.shape)

from sklearn.model_selection import train_test_split

x_tr, x_val, y_tr, y_val=train_test_split(train, target, test_size=.2, random_state=2022)

from sklearn.ensemble import RandomForestClassifier

rf=RandomForestClassifier(random_state=2022)

rf.fit(x_tr, y_tr)

pred=rf.predict(test)

print(pred)

print(pred.shape)

print(len(test_id))

submit=pd.DataFrame({

'PassengerId': test_id,

'Survived': pred

})

submit.to_csv('수험번호.csv', index=False)

print(submit.shape)

 

 

캐글 타이타닉 보고 이렇게 작성해보았는데, 혹시 0점 될만한 요인이 있을까요??ㅠㅠ test데이터 행 수 하고 pred수 하고 동일한거 확인했습니다!

 

그리고 제출할때는 split로 안쪼개고 바로 fit(train, target)해서 predict(test)해도 되는 부분일까요?

python 머신러닝 빅데이터 pandas 빅데이터분석기사

답변 1

0

퇴근후딴짓

검증데이터 평가지표로 확인하지 않는다면

x_tr, x_val, y_tr, y_val=train_test_split(train, target, test_size=.2, random_state=2022)

코드가 무의미 합니다. 평가 지표를 확인하려고 사용하는 것이에요~

 

fit(train, target)해서 predict(test)해도 되는 부분일까요?

네 문제없습니다. 다만 평가 지표 점수를 예상할 수 없어요~

0

한정수

선생님 그러면 train_test_split으로 분리하여 만든 모델을 테스트해서 제출해도 되는거죠?ㅠㅜ0점 처리 나올까봐 너무 불안해서요 죄송합ㄴ디ㅏ

질문 드립니다.

0

38

2

강의 내용 관련 질문드립니다~

0

35

2

수강 연장 문의

0

33

1

강의자료 일괄 다운로드

0

43

2

수강기간 연장 문의드립니다

0

29

1

list 문제 질문드립니다~

0

31

2

빅분기 실기 12회 재도전

0

40

1

강의 기간 연장 가능여부 검토 요청건

0

30

1

수강기간 연장 문의 드립니다

0

36

2

수강기간 연장 문의드립니다

0

47

2

질문이요

0

51

2

수강기간 연장 문의드립니다.

0

50

2

문제 3-2 질문드립니다

0

44

2

수강기간 연장 문의 드립니다.

0

58

2

변수, 칼럼 , df 구분

0

50

2

수강기간 연장 문의드립니다.

0

50

2

수강기간 연장 문의

0

48

2

수강기간 연장 문의드립니다.

0

42

2

수강기한 연장 문의

0

80

2

수강기간 연장 문의드립니다

0

57

2

결정트리에서 적절한 깊이 선택 후 시각화 과정에서 학습 데이터만 사용하는 이유

0

45

2

수강기간 연장 문의드립니다.

0

71

2

수강연장 문의

0

77

2

수강연장문의

0

53

2