묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션12 작업형 2회 기출유형
섹션12 작업형 2회 기출유형아래처럼 풀이했을 때, TypeError: float() argument must be a string or a real number, not 'LabelEncoder' 오류메시지 뜹니다. 어디서 오류가 난건지 이러한 풀이방법은 잘못된건지 알 수 있을까요? # EDAX_train = X_train.drop(columns = ['ID'])X_test_id = X_test.pop('ID')y_train = y_train.drop(columns = ['ID']) # 수치형 데이터 스케일링num = ['Customer_care_calls', 'Customer_rating', 'Cost_of_the_Product', 'Prior_purchases', 'Discount_offered', 'Weight_in_gms']from sklearn.preprocessing import RobustScalerscaler = RobustScaler()X_train[num] = scaler.fit_transform(X_train[num])X_test[num] = scaler.fit_transform(X_test[num]) # 범주형 데이터 원핫인코딩cols = ['Mode_of_Shipment', 'Product_importance', 'Gender']X_train = pd.get_dummies(data = X_train, columns = cols)X_test = pd.get_dummies(data = X_test, columns = cols) # 범주형 데이터 라벨인코딩from sklearn.preprocessing import LabelEncoderencoder = LabelEncoder()X_train['Warehouse_block'] = encoder.fit(X_train['Warehouse_block'])X_test['Warehouse_block'] = encoder.fit(X_test['Warehouse_block']) # 분리from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(X_train, y_train, test_size = 0.2, random_state = 2023) # 모델 및 평가from sklearn.ensemble import RandomForestClassifiermodel = RandomForestClassifier()model.fit(X_tr, y_tr)pred = model.predict_proba(X_val) # 평가from sklearn.metrics import roc_auc_scoreroc_auc_score(y_val, pred[:, 1])
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2유형 csv 제출
시험환경 테스트에서는 csv파일명을 : result.csv로 제출하라고 되어있는데실제 시험에서는 수험번호를 파일명으로 제출하나요? 강의 속에서는 항상 수험번호를 csv 파일명으로 만들어서 궁금해서 문의 드립니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
4회 기출유형 마지막 문제
United kingdom 단독이 아닌 포함된 country를 찾으려면 어떤 방식을 사용할 수 있을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모델 선택 질문 드립니다.
안녕하세요~ 수강생입니다!작업형2 유형을 풀다보니 문득 궁금한 점이 있어서 질문 올립니다. 만일 실전에서 회귀문제 RMSE를 묻는 문제라고 가정한다면....모델을 아래 코드 예시와 같이 다양하게 할 수 있을텐데요..#### 랜포를 썼을 경우 from sklearn.ensemble import RandomForestRegressor model = RandomForestRegressor(random_state=2023, max_depth=5) model.fit(X_tr, y_tr) pred = model.predict(X_val) from sklearn.metrics import r2_score, mean_absolute_error, mean_squared_error def rmse(y_test, y_pred): return np.sqrt(mean_squared_error(y_test, y_pred)) # print('r2_score:', r2_score(y_val, pred)) # print('mean_absolute_error:', mean_absolute_error(y_val, pred)) # print('mean_squared_error:', mean_squared_error(y_val, pred)) # print('rmse:', rmse(y_val, pred)) #### 부스트를 썼을 경우 from xgboost import XGBRegressor model = XGBRegressor() model.fit(X_tr,y_tr) pred=model.predict(X_val) from sklearn.metrics import r2_score, mean_absolute_error, mean_squared_error def rmse(y_test, y_pred): return np.sqrt(mean_squared_error(y_test, y_pred)) # print('r2_score:', r2_score(y_val, pred)) # print('mean_absolute_error:', mean_absolute_error(y_val, pred)) # print('mean_squared_error:', mean_squared_error(y_val, pred)) # print('rmse:', rmse(y_val, pred) 예를들어 위 예시 코드 중에 랜포가 부스트보다 성능이 좋았다면,최종 제출해야 하는 것은 아래의 코드처럼 1) 랜포나 부스트 둘중에 성능이 좋은 것을 선택, 2) 각 모델에서 하이퍼파라미터 튜닝을 해본 후에 질문의 RMSE가 성능이 제일 잘 나온 것(하이퍼파라미터 값 고정)으로 쭉 뒤에 코딩하고 제출하면 되는 건가요?결국 1)번과 2)번의 불필요한 모델이나 평가방법은 주석 처리하거나 삭제처리문제의 RMSE 성능을 봐야하는데 RMSE 코드를 잘모를 경우를 대비하여 sklearn.metrics에 질문의 RMSE 외에 r2_score, mean_absolute_error, mean_squared_error 값들을 한번 보는 용도인거죠? #### 랜포를 썼을 경우 from sklearn.ensemble import RandomForestRegressor model = RandomForestRegressor(random_state=2023, max_depth=5) model.fit(X_tr, y_tr) pred = model.predict(X_val) from sklearn.metrics import mean_squared_error def rmse(y_test, y_pred): return np.sqrt(mean_squared_error(y_test, y_pred)) # print('rmse:', rmse(y_val, pred))
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
결측치가 있는 행을 제거할 때
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 df = pd.DataFrame({ '날짜': ['20220103', '20220105', None, '20230127', '20220203', '20220205', '20230210', '20230223', '20230312', '20230422', '20', '23'], '제품': ['A', 'B', None, 'B', 'A', None, 'A', 'B', 'A', 'B', 'A', 'A'], '판매수': [3, None, 5, 10, 10, 10, 15, 15, 20, None, 30, 40], '개당수익': [300, 400, 500, 600, 400, 500, 500, 600, 600, 700, 600, 600] 판매수 컬럼에 결측치가 있는 행을 제거하라고 할 때, df = df['판매수'].dropna()df = df.dropna(subset = '판매수')1번과 2번의 차이는 무엇인가요? ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 작업 2유형 질문드립니다!
저는 문제를 풀이할 때 고객의 성별을 예측하라고 해서 roc_auc를 사용했지만 predict를 사용했습니다. 하지만 이번에 올려주신 강의를 보고 roc_auc는 proba를 사용해야된다고 알게되었는데요,proba는 어차피 분류모델에서만 적용되는걸로 알고있는데 그렇다면 분류모델에서 사용가능한 평가지표(f1 스코어, 정확도, 재현율 등) 별 정해져있는게 있을까요? predict 를 써야하는지 predict_proba를 사용해야되는지요...! 확률과 확률값에 대한 차이가 도통 감이 안와서 문의드립니다. 예를들어 평가지표가 주어지지 않고 이 문제에서 단순히 백화점 구매 고객의 성별을 예측하라는 말을 읽고 어떻게 확률값을 구하라는것을 알 수 있을까요..? 예시결과도 단순히 0과 1로 나와있어서 오히려 더 궁금합니다.사실 제가 predict를 사용한것도 예시결과가 0, 1로 되있어서 그런건데 확률값을 구한다고 하면 proba로 구했을때처럼 0.45 이런식의 소수점이라 생각했거든요...
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
셤이 코앞이라.. 작업형 3 유형 도저히 감이 안 오는데요..
이제 일주일 남은 시점에서.. 3유형 어떤 부분을 중점으로 학습하면 도움이 될까요 ? 비모수 검정까지 공부 하려니 좀 벅찹니다.. ㅠ ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제3 y_test 결과값 조회시 0.87이 나오면 점수가 그렇게 반영되는건가요?
영상 마지막 부분에 선생님께서 y_test 결과값 조회시 0.87이 나오면 작업형2번 문제에 대해서 배점이 100%를 만점으로 쳤을 때 87%의 배점이 반영되는 건가요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션4 작업형 모의문제3/문제7번 관련
안녕하세요! 섹션4 모의문제 7번 관련하여, 행으로 되어있는 2001,2003의 평균과 데이터를 비교하는 문제인데요,앞에서의 문제4처럼 열과 행을 바꿔주어 아래처럼 코딩해도 되는것인지 문의드립니다.값은 동일하게 나오더라구요. df=df.Tprint(sum(df[2001]>df[2001].mean())+ sum(df[2003]<df[2003].mean()))
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
에러메시지 마주하기 - 4번 에러 관련
안녕하세요!4번 에러에서 이상값을 x_train과 y_train에 동일하게 삭제해 주어야 하는것을 보았는데요,이상치 삭제의 경우, x_test에서는 동일하게 삭제하지 않는 것인지 문의드립니다. x_test는 주어진대로 돌려야 하는걸까요? 또한 train데이터를 train/val 나누는 경우는 나누기전에 미리 파일을 합쳐서 이상치 삭제를 하면 되는 것일까요~ ?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2유형 label encoding
작업형 2유형 라벨 인코딩 할 때다른 교재에서는 X_train 과 X_test 데이터를 모두 fitting 시키던데수업에서 다룬 X_train은 fit_transform 시키고 X_test는 Transform만 시키는 방식과어떤 차이가 있는지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
오즈비 노션 어디 있나요?
어디 있는지 보이지가 않네요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2에서 변수를 변환 할 때 문의 드립니다.
작업형 2에서 변수 unique 수에 따라서 원핫 혹은 라벨 인코딩을 한다고 하던데 보통 몇개를 기준으로 하나요 ? unique 가 많을 때 원핫이 유리한지 라벨인코딩이 유리한지.. @ @ 헷갈려서요..
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
데이터 전처리(공식 예시문제 작업형2)
예시 문제에서 pd.concat을 써보고 싶어서 이렇게 써봤는데 이때 그러면 라벨링 할때 fit_transform만 써도 괜찮은가요? 따로 또 transform을 안해줘도 괜찮나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
logit 이나 ols 사용할때 앞에 C( )를 붙이는 이유?
ANOVA를 배울때는 ols 사용할때 독립변수 앞에 C()를 붙이는것이 분산분석은 범주형 분석이기에 앞에 C를 붙인다고 생각했는데요~로지스틱 회귀분석은 독립변수가 수치형, 종속변수가 이산/명목형으로 알고있는데.. Gender 앞에 C를 붙이는 이유가 있을가요? 오히려 Gender은 수치로 바꿔줘야할것 같은데.. 혹시 C 의 의미가 수치형->범주형, 범주형->수치형으로 양쪽 모두 바꿔주는 역할인건지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션6 시험환경살펴보기(제2유형)
시험환경 체험링크 타고 들어가 강의랑 같이 보고 있는데, 링크에서는 train, test 2개의 데이터셋만 제공 되있고, 문제 내용도 조금 차이가 있는거 같습니다. 확인 좀 부탁드리겠습니다 ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
4회 기출 작업형2
섹션14 작업형2 어떤 부분이 문제일까요 ㅠㅠ?ValueError: could not convert string to float: 'Healthcare' 이런 오류가 뜹니다.. target = train.pop('Segmentation')test_ID = test.pop('ID') # 연속형 변수 스케일링num = ['Age', 'Work_Experience', 'Family_Size']from sklearn.preprocessing import RobustScalerscaler = RobustScaler()train[num] = scaler.fit_transform(train[num])test[num] = scaler.fit_transform(test[num]) # 범주형 변수 원핫인코딩cols = ['Gender', 'Ever_Married', 'Graduated', 'Spending_Score']train = pd.get_dummies(data = train, columns = cols)test = pd.get_dummies(data = test, columns = cols) # 평가from sklearn.ensemble import RandomForestClassifiermodel = RandomForestClassifier()model.fit(train, target)pred = model.predict(test) # 제출pred = model.predict(test)pd.DataFrame({'ID': test_cust_id, 'Segmentation': pred}).to_csv('003000000.csv', index=False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션 11 작업형2 구버전 문의
피처엔지니어링 부분에서from sklearn.preprocessing import LabelEncoder cols = ['주구매상품', '주구매지점'] for col in cols: le = LabelEncoder() X_train[col] = le.fit_transform(X_train[col]) X_test[col] = le.transform(X_test[col]) X_train.head()이 코드 실행했을때 ValueError: invalid literal for int() with base 10: '골프' 이런 에러가 뜨는데 이유가 무엇인가요..?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
goorm 작업환경에서 코딩 중 엔터 칠 때마다 들여쓰기 되는 현상
30,32~36번 부분 처럼엔터 칠 때마다 들여쓰기가 기본으로 되어지는데... 이거 어떻게 원래대로 돌릴 수 있을까요...??초기화 버튼을 눌러도 계속 이렇게 되네요...
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회기출문제 작업형2 검증데이터 분리 질문
섹션13 3회 기출유형(작업형2)6:15검증데이터 분리에서 (('TravelInsurance', axis = 1), train['TravelInsurance'], test_size = 0.1, random_state = 1204)위에 알려주신 방법 말고 (train, train[‘TravelInsurance’], test_size = 0.1, random_state = 1204)전처리 단계에서 불필요한 컬럼으로 간주하고 drop 후에 분리에서 윗 줄처럼 해도 될까요? 만약 안된다면, 괄호 안에 앞 2개가 매번 달라서 어떻게 입력해야할지 잘 모르겠어요. 이 문제에서 drop 방법은 왜 사용 안하신건지 궁금합니다. 제출할 때 'index' = test.index로 들어가는것도 왜 그런지 궁금합니다.