묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
grouby().mean()오류
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 df.groupby('원두').mean() 실행시 TypeError: agg function failed [how->mean,dtype->object] 이 오류는 어떻게 해결하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
의사결정나무로 할 때 에러코드가 뜨는데 이유를 모르겠어요ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2, 내장함수 질문
선생님 안녕하세요! 시험이 다가오면서 헷갈리거나 저번에도 살짝 아리쏭했던 부분이 복습하면서 이해못한 부분이 명확해지면서 질문들이 많아졌는데 항상 자세히 알려주셔서 감사합니다 ㅠㅠㅎㅎ 오늘도 질문드립니다!! 1. X_train데이터와 y_train데이터가 나누어져서 제공받았을 때 이를 합쳐야 하는 경우가 무엇인가요? 그리고 만약 합친 경우 나중에 꼭 분리를 해야하나요? 2. 작업형 2를 진행할 때 결측치가 있을 시 행은 삭제하면 안되고, 컬럼은 train, test데이터 각각에 모두 삭제는 가능한 것 맞을까요? 3. count() 함수는 axis=0일 때 컬럼을 기준으로 세는 것이 맞나요? 원래라면 axis=0이 행을 기준으로 하는 것으로 알고있는데 count()는 반대인듯 해서요! 4. 데이터 피처 엔지니어링을 진행할 때 스케일링 시 X_train[cols]는 데이터 프레임 형태로 진행되는 것 맞을까요? 그렇다면 라벨인코딩에서는 for문을 사용하여 X_train[col]로 진행하는데 그러면 데이터 프레임이 아닌 시리즈 형태인것 아닌가요?? 이 부분이 헷갈려서 여쭤봅니다! 5. 만약 작업형 2에서 범주형 데이터가 1~2개만 있다면 수치형 데이터로만 모델을 평가도 해보고 범주형을 인코딩해서 다함께 평가 두가지를 모두 해보는게 좋을까요, 아니면 범주형 데이터가 있다면 인코딩을 했을 때를 무조건 해보는 것이 좋을까요? 6. describe에서 이상치가 눈에 보인다면 행을 삭제 못하는데 어떻게 해야하나요? 아예 그 컬럼을 삭제하는게 나을까요? 7. random_state값을 달리하면 평가지표도 다르게 나오던데 아무숫자나 고정해서 쓰면될까요? 모든 것에 random_state=0 이런식으로 고정해서요! 8. n_estimators는 max_depth를 안쓰고도 써도 되나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 범주형 데이터 처리시
from sklearn.preprocessing import LabelEncodercols = ['Gender','Education_Level','Marital_Status','Income_Category','Card_Category'] 이렇게 하나하나 다 적는방법도 잇지만 cols=train.select_dtypes(include="O").columns이렇게도 가능하다고 하셧는데 만약 이렇게하면 다른 네임명으로 받으면서 test도 따로 해줘야하나요 cols2=test.select_dtypes(include="O").columns이렇게요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제 1
코랩으로 입력중인데 from sklearn.preprocessing import LabelEncoder cols = ['Gender','Education_Level','Marital_Status','Income_Category','Card_Category'] for col in cols: le=LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) target = train.pop('Attrition_Flag')에러가 나와요 왜그런거죠 KeyError Traceback (most recent call last)/usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance) 3801 try:-> 3802 return self._engine.get_loc(casted_key) 3803 except KeyError as err:6 framespandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item()KeyError: 'Attrition_Flag'The above exception was the direct cause of the following exception:KeyError Traceback (most recent call last)/usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance) 3802 return self._engine.get_loc(casted_key) 3803 except KeyError as err:-> 3804 raise KeyError(key) from err 3805 except TypeError: 3806 # If we have a listlike key, checkindexing_error will raiseKeyError: 'Attrition_Flag'
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3-4 Feature engineering 데이터 전처리 질문입니다.
X_test 데이터 전처리에서 'age'와 'hours.per.week'의 fillna가 X_test가 아닌 X_train의 평균과 중앙값으로 이루어졌는데요, 아래와 같이 X_test값으로 fillna하면 안 되는 걸까요? X_test['age'] = X_test['age'].fillna(int(X_test['age'].mean())) X_test['hours.per.week'] = X_test['hours.per.week'].fillna(X_test['hours.per.week'].median()) 원본# X_test데이터 X_test['workclass'] = X_test['workclass'].fillna(X_test['workclass'].mode()[0]) X_test['native.country'] = X_test['native.country'].fillna(X_test['native.country'].mode()[0]) X_test['occupation'] = X_test['occupation'].fillna("X") X_test['age'] = X_test['age'].fillna(int(X_train['age'].mean())) X_test['hours.per.week'] = X_test['hours.per.week'].fillna(X_train['hours.per.week'].median())
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
[학습법] D-10 남은상태에서 작업형3은 어떻게 준비해야할까요?
선생님 안녕하세요~ 그간 많은 질문을 남겼는데요! ㅠㅠ 작업형1,2는 기출을 바탕으로 연습문제도 꽤나 있어서 캐글을 포함하여 강의에 있는 문제까지 풀면서 대비하고 있습니다.. 다만 작업형3은 인강에 있는 문제와 코드 공부하고 있는데, 아직까지 개념이 흩날려있다고 해야하나요.. 뭔가 딱 잡히는 게 없는데, 어떤식으로 대비하는게 좋을까요? ㅜㅜ일단 전 완전 초보자라서작업형2에서 만점, 작업형1에서 많아야 2개, 작업형3은 최대1개 맞추는 전략으로 갈까합니다 ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 - 타이타닉 작업형2
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 LabelEncoderle=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)'이런 에러값이 나오는데 왜그런거죠?강사님이 작성하신 풀이에는 결측치값을 놔두시고 오브젝트형인 데이터도 다 수치형으로 안바꾸시던데 왜그런거죠?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업 2유형 , 파일3개 일때 train_test_split 어떻게해야할까요?
아직 train_test_split 이 좀 헷갈리는거같아요. 파일 2개일때는 잘 하는데 3개일때 예시 한번 알려주실수있으실까요? 햇갈립니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
대응 표본 t-검정에서 정규성 검정 문의
https://www.kaggle.com/code/agileteam/t3-example/notebook 위와 같은 대응 표본 t-검정 문제에서, 정규성 검정을 진행하는 집단에 대해 궁금합니다.1) shapiro(df['bp_pre']), shapiro(df['bp_post']) 각 집단에 대해서 모두 수행해야 하는지,2) df['diff'] = df['bp_post'] - df['bp_pre'] 집단 간 차이에 대해서 정규성 검정을 수행하는지 두번째로 표본 검정 문제에서 정규성 가정을 제시하지 않았다면 모든 shapiro부터 수행해야 한다고 이해했는데, 제시해주신 풀이에는 정규성 검정을 수행하지 않고 ttest_rel로 바로 진행하셨던데,문제의 가정에 따라서 정규성 검정을 수행해야 하는것이 아닌가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
lightGBM 문의드립니다.
전처리가 거의 필요 없는 것 같은데..시험때 lgbm을 사용해도 전혀 패널티는 없는건가요?예측은 랜덤포레스트가 낫나요 lgbm이 낫나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제1 질문드려요
작업형2 모의문제 1에서 Baseline과 LabelEncoder, One-Hot 인코딩 3개 모두 수행해서 가장 높은 값을 제출하던데 시험에도 그렇게 3개를 다 실행해서 가장 높은값으로 제출해야되는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
pred와 pred_proba의 차이
쳐아하기 전에accuracy, precision, recall, f1_score 출력전에는pred = model.predict(X_val)이었고y_val과 pred값을 넣고 평가값을 출력했는데 Roc-auc에선pred = model.predict_proba(X_val)평가에 입력값이 y_val과 pred[:1]인 이유가 있을까요. ?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
대응표본검정의 정규성검정 질문
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요 대응표본검정 > Shapiro-Wilk 검정 할 때, 'before' 'after' 순서를 알고 싶습니다.구글링을 통해 무조건 아래 순서대로 작성해야 한다는 글을 보아서 질문 드립니다.stats.shapiro(df['before'] - df['after']) 강의를 통해 문제에서 주어지는 μd를 참고하여, 대응표본검정(ttest_rel)을 작성하는 것으로 이해했습니다. μd = (before – after)의 평균stats.ttest_rel(df['before'] , df['after'])μd = (after - before)의 평균 stats.ttest_rel(df['after'], df['before']) 그렇다면 Shapiro-Wilk 검정을 할 때도 문제에서 주어지는 μd를 참고하여, 작성하면 될까요? μd = (before – after)의 평균stats.shapiro(df['before'] - df['after'])μd = (after - before)의 평균 stats.shapiro(df['after'] - df['before'])
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
타겟 수 확인할 때
타겟 수 확인할 때 왜 y_train 으로 해야하나요? X_train으로 하면 안되는지, 에러가 발생하는 이유가 무엇인지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업2유형 데이터 전치리 관련 문의
안녕하세요, 선생님 아직 개념이 정확히 안잡혀서 문의 하나드립니다. 작업 2유형에서 Train/Test 데이터 전처리, 피처 엔지니어링시 2개 데이터 셋 모두 진행해야되는걸로 알고있는데요. Test 데이터에서 컬럼 삭제 후 모델링해도 된다고 알고있는데, (예를들어 Unnamed: 0 이라는 index 칼럼이 있을 경우)행 삭제는 하면 안되는 걸까요? (Test 데이터의 행 삭제를 하게 되면 모델링 이후 test 데이터 평가시 오류가 발생하는걸로 알고있습니다.) 결론적으로 전처리, 피처 엔지니어링시 절대 건들지 않아야 할 데이터 (주최 측 평가시 영향을 미치는 데이터)가 뭔지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 3 답 제출 관련
작업형 3번 답안 제출시 하드코딩 하면 안되는건가요?혹시 답안 제출은 어떤 형식으로 해야할지 알 수 있나요?ex) pvalue 값을 제출 해야하는 경우라면 값이 0.02인걸 확인하고 답안란에다 0.02를 적어도 무방한가요? 아니면 pvlaue 값을 나타낼수 있는 코딩을 해야하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
컬럼에 그냥 인덱싱할 때와 iloc를 써서 인덱싱할 때 출력값이 달라요.
df = pd.read_csv('../input/bigdatacertificationkr/basic1.csv')print(df['f1'].sort_values(ascending=False).head(12))print(df['f1'].sort_values(ascending=False).iloc[9])print(df['f1'].sort_values(ascending=False)[9]) 위의 코드를 실행하면 하나는 88, 하나는 74가 나옵니다..74는 어디서 나오는 건지 모르겠어요..print(df['f1'].sort_values(ascending=False)[0])은 NaN나오덴데.. 그냥 인덱싱하면 행을 나타내진 않나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2에서 test_ID의 경우
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요 train = train.drop('ID', axis=1) test_ID = test.pop('ID')의 경우 한번 삭제되면 그 다음부터는 이미 삭제 되었기 때문에 오류로 뜨는 것으로 알고 있습니다. 실전에서는 하나의 코드에서만 할 수 있는데, 이럴 때는 어떻게 해야하나요? 한번만 실행시키고, 그 다음부터는 지워야 하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
대응표본 t 검정에 대한 질문입니다.
안녕하세요..^^대응표본 t 검정에서 정규성 검정을 할 때 강의에서는 afrer와 before의 차, 즉 diff를 이용했는데,다른 자료들을 보면 shapiro(afrer), shapiro(before)와 같이 차를 이용하기 보단 각각에 대한 정규성을 검정하는 것으로 소개된 것들이 많더라구요... 둘 사이의 차이가 분명히 있을 것 같은데, 어떻게 이해해야 하나요?