inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

[작업형2] 연습문제 섹션 4

Section 4. 이직 여부 예측

64

합격

작성한 질문수 40

0

  1. 이 문제에서

     

    train과 test 합쳐서 원핫인코딩

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

combined_dummies = pd.get_dummies(combined)

n_train = len(train)

train = combined_dummies[:n_train]

test = combined_dummies[n_train:]

한 이유가

city 컬럼에서 트레인 유니크 개수>테스트 유니크 개수라서 사용했다고 이해했는데,, 맞을까요?

2. 제가 코드 한거는

print(train.shape, test.shape)

# print(train.isnull().sum())

# print(test.isnull().sum())

print(train.info())

print(test.info())

print(train.describe(include="O"))

print(test.describe(include="O"))

a=set(train['city'])

b=set(test['city'])

print(a-b)

print(b-a)

target=train.pop('target')

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

df=pd.get_dummies(df)

train=train.iloc[:len(train)]

test=test.iloc[len(train):]

from sklearn.model_selection import train_test_split

X_tr, X_val, y_tr, y_val = train_test_split(target, train, test_size=0.2, random_state=0)

print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape)

from sklearn.ensemble import RandomForestClassifier

rf = RandomForestClassifier(random_state=0)

rf.fit(X_tr, y_tr)

pred = rf.predict_proba(X_val)

이렇게 하니까

 

 

~~~~~~

(12260,) (3066,) (12260, 13) (3066, 13)

---------------------------------------------------------------------------

ValueError Traceback (most recent call last)

/tmp/ipython-input-1337250417.py in <cell line: 0>()

24 from sklearn.ensemble import RandomForestClassifier

25 rf = RandomForestClassifier(random_state=0)

---> 26 rf.fit(X_tr, y_tr)

27 pred = rf.predict_proba(X_val)

4 frames

/usr/local/lib/python3.12/dist-packages/sklearn/utils/validation.py in check_array(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_writeable, force_all_finite, ensure_all_finite, ensure_non_negative, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, estimator, input_name)

1091 "if it contains a single sample."

1092 )

-> 1093 raise ValueError(msg)

1094

1095 if dtype_numeric and hasattr(array.dtype, "kind") and array.dtype.kind in "USV":

ValueError: Expected a 2-dimensional container but got <class 'pandas.core.series.Series'> instead. Pass a DataFrame containing a single row (i.e. single sample) or a single column (i.e. single feature) instead.

이런 에러가 나옵니다ㅠ

분할까지는 했는데,, 랜덤포레스트부터 오류가 뜹니다

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

답변 2

0

퇴근후딴짓

  1. 네 유니크 개수가 서로 달라서입니다.

  2. 아래 정현님이 말씀한대로 train_test_split(target, train)에서 train이랑target위치가 맞지 않습니다.

에러가 난다면 제가 작성한 모범 답안과 비교 부탁드리겠습니다.

0

문정현

split할때 train이랑target위치가 바뀐거같은데

0

퇴근후딴짓

정확합니다. 답변 감사합니다!!

강의 연장 문의

0

7

1

수강 신청 연장 문의드립니다.

0

18

1

작업형 1번문제... 환경관련

0

24

2

12회 기출은 언제 업데이트 될까요??

0

34

2

8/6 작성한 연장문의 질문글에 대한 재요청

0

36

2

수강기간 연장 문의

0

33

2

수강기간 연장문의

0

35

2

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

0

35

2

수강 기간 연장 문의

0

44

2

수강연장 가능 문의 (기간 약 한달반)

0

57

2

수강기간 연장 가능할까요 선생님

0

72

2

Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.

0

50

3

수강연장요청 문의

0

84

2

아무래도 다음 시험 연장은 어렵겠죠?

0

104

2

빅분기 12회 결과 관련 문의

0

110

1

책이랑 강의랑 순서나 예제가 다른것 같네요

0

79

2

수강연장 문의

0

102

2

재검토 요청 방법 좀 알려주셔요...-.-;;

0

102

2

12회 실기 질문(작업형 2)

0

89

2

뒤로가기 버튼 같은 것이 있나요?

0

63

1

강의 연장 문의

0

97

2

출력값 질문

0

69

2

수업노트가 어디에 있나요?

0

62

1

실기시험 제출관련

0

224

3