inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

캐글(kaggle) 필사 전략

캐글 - 타이타닉 작업형2

해결된 질문

262

munjihey1127

작성한 질문수 20

0

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

test=pd.read_csv("/kaggle/input/titanic/test.csv")

 

#전처리

train= train.fillna(0)

test= test.fillna(0)

 

from sklearn.preprocessing import LabelEncoder

le=LabelEncoder()

cols = ['Name','Sex','Ticket','Cabin','Embarked']

for col in cols:

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

test[col]=le.transform(test[col])

 

이렇게 실행했더니

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
File /opt/conda/lib/python3.10/site-packages/sklearn/utils/_encode.py:224, in _encode(values, uniques, check_unknown)
    223 try:
--> 224     return _map_to_integer(values, uniques)
    225 except KeyError as e:

File /opt/conda/lib/python3.10/site-packages/sklearn/utils/_encode.py:164, in _map_to_integer(values, uniques)
    163 table = _nandict({val: i for i, val in enumerate(uniques)})
--> 164 return np.array([table[v] for v in values])

File /opt/conda/lib/python3.10/site-packages/sklearn/utils/_encode.py:164, in <listcomp>(.0)
    163 table = _nandict({val: i for i, val in enumerate(uniques)})
--> 164 return np.array([table[v] for v in values])

File /opt/conda/lib/python3.10/site-packages/sklearn/utils/_encode.py:158, in _nandict.__missing__(self, key)
    157     return self.nan_value
--> 158 raise KeyError(key)

KeyError: 'Wilkes, Mrs. James (Ellen Needs)'

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
Cell In[58], line 22
     20 for col in cols:
     21     train[col]= le.fit_transform(train[col])
---> 22     test[col]=le.transform(test[col])

File /opt/conda/lib/python3.10/site-packages/sklearn/utils/_set_output.py:140, in _wrap_method_output.<locals>.wrapped(self, X, *args, **kwargs)
    138 @wraps(f)
    139 def wrapped(self, X, *args, **kwargs):
--> 140     data_to_wrap = f(self, X, *args, **kwargs)
    141     if isinstance(data_to_wrap, tuple):
    142         # only wrap the first output for cross decomposition
    143         return (
    144             _wrap_data_with_container(method, data_to_wrap[0], X, self),
    145             *data_to_wrap[1:],
    146         )

File /opt/conda/lib/python3.10/site-packages/sklearn/preprocessing/_label.py:139, in LabelEncoder.transform(self, y)
    136 if _num_samples(y) == 0:
    137     return np.array([])
--> 139 return _encode(y, uniques=self.classes_)

File /opt/conda/lib/python3.10/site-packages/sklearn/utils/_encode.py:226, in _encode(values, uniques, check_unknown)
    224         return _map_to_integer(values, uniques)
    225     except KeyError as e:
--> 226         raise ValueError(f"y contains previously unseen labels: {str(e)}")
    227 else:
    228     if check_unknown:

ValueError: y contains previously unseen labels: 'Wilkes, Mrs. James (Ellen Needs)'

이런 에러값이 나오는데 왜그런거죠?

강사님이 작성하신 풀이에는

결측치값을 놔두시고

오브젝트형인 데이터도 다 수치형으로 안바꾸시던데

왜그런거죠?

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

답변 1

0

퇴근후딴짓

Name은 train과 test에서의 종류가 많이 다릅니다. Name은 입력데이터로 사용하기 위해서는 다른방법을 사용해야 해요(예를들면 이름의 길이도 될 수 있고요) 입문자에게는 버리는 것을 추천합니다.

 

캐글에서의 코드는 예시일 뿐입니다. 무료로 오픈한 내용으로 꼼꼼히 작업하진 않았습니다.

작업을 초소화한 형태로 수치형만 사용해서 모델을 만들었어요 (간단한 모델로 생각해주세요)

수강 연장 가능 여부 문의

0

22

1

강의 구매했는데 교재 필수일까요

0

23

2

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

0

21

2

수강기간 연장이 가능한지 양해를 구하며 문의를 드립니다.

0

27

2

작업형2 모의문제2에서 drop이랑 인코딩

0

27

2

인코딩을 다 꼭 해봐야하는지

0

37

2

안녕하세요? 강사님 질문있습니다.(인코딩관련)

0

57

2

이진분류에서 양성 클래스가 0일 때 평가 방법

0

46

2

원핫인코딩 전 train과 test 병합여부

0

50

2

수강기간 연장

0

69

2

29강 작업2형의 이상치 처리

0

65

2

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

0

65

2

9월에 실기출제기준 개정내역에 신설된부분

0

55

1

작업형2 모의문제2 결과값 관련 문의드립니다.

0

66

2

12회차 시험 실패 후 13회 도전 예정입니다.

0

55

1

random_state 값

0

73

2

강의 연장 문의 드립니다.

0

67

2

강의 연장 문의

0

61

2

오징어게임

0

70

1

object 컬럼이 여러 개인 경우 인코딩 전처리 방법

1

49

2

데이터 전처리 순서 관련

0

64

2

작업형2 모의문제 데이터 불러오기

0

62

2

강의 연장 부탁드립니다!

0

67

2

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

0

66

2