묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
로지스틱 회귀 모형 문제에서 질문 드립니다.
예전에 문제를 풀 땐 별 생각이 없었는데 다시 보니 Pclass를 꼭 범주형으로 지정할 이유가 있을까요? 클래스가 등급이면 수치형으로 봐도 되지 않을까요?from statsmodels.formula.api import logitmodel = logit('Survived ~ C(Pclass) + Gender + SibSp + Parch', data=df).fit()model.params['Parch'] 다시 풀어보니 실제 문제에서 저렇게 나온다면 범주형으로 지정해야할지 수치형으로 그대로 둘지 결정하기 애매할 것 같아서 여쭤봅니다.
-
미해결[핵집] 2024 빅데이터 분석기사(실기)_작업형 1·2·3유형
기출복원문제풀이2 중 보험가입여부 예측문제 풀이 질문
강사님.. 기출복원 풀이2 중 보험가입여부 예측 문제 풀이에서요.. 마지막 모델 fit에 X_train을 입력하는 것은 좀 이상한데요... X_train의 num_cols 데이터들은 scaling을 하지 않은 값들이어서.. 굳이 전체 X_train로 학습하려면 X_tra와 X_val을 pd.concat으로 합친 후 입력해야 하지 않을까요?확인 부탁드려요.. 강사님의 예측결과와 제가 계산한 예측결과의 차이가 심해서요.. 예를 들면, 강사님 예측 / 저의 계산ID 1569 0.03312 / 0.2714ID 1344 0.02612 / 0.9889ID 1429 0.03312 / 0.1047...너무 차이가 심해서요.. 이것도 확인 부탁드려요~~~수고하시고요.
-
미해결Data Engineering Course (1) : 빅데이터 하둡 직접 설치하기
확장팩 필수 유무
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 버추얼머신 깔 때 확장팩 필수인가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
초초보를 위한 전처리 인코딩 가이드 너무 너무 감사합니다.
시험 앞두고 이런 뽀나스 영상이 정말 큰 힘이 됩니다!! ^^ 감사합니다. 작업형 3유형 ...도 필승전략.. 알려주심 너무나 감사하겠습니다. ㅜㅜ 더 많은 것을 원해서 죄송함돠 ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
실험환경 메모장에서 ctrl+f 제컴퓨터에서는 됩니다.
dir 기능 활용 해서 메모장에 담고 ctrl+f 찾아 보니 검색이 됩니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2유형 코드
col_id = ['id'] col_num = ['Age','Work_Experience','Family_Size'] col_cat = ['Gender','Ever_Married','Graduated','Profession','Spending_Score','Var_1'] col_y = ['Segmentation'] from sklearn.preprocessing import StandardScaler scaler = StandardScaler() train[col_num] = scaler.fit_transform(train[col_num]) test[col_num] = scaler.transform(test[col_num]) from sklearn.preprocessing import LabelEncoder le = LabelEncoder() for col in col_cat: train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train[col_cat + col_num], train['Segmentation'], test_size = 0.3, random_state = 123 )수업내용을 제가 편한 방식으로 조금 바꿔봤는데 이런 식으로 스케일링이랑 인코딩 진행해도 문제없을까요?아래 내용으로 계속 진행했을때 결과는 나오는데 제대로 한게 맞는지 잘 모르겠습니다...from sklearn.ensemble import RandomForestClassifier RF = RandomForestClassifier(n_estimators=300, max_depth =9 ,random_state = 123) RF.fit(X_tr, y_tr) pred = RF.predict(X_val) import lightgbm as lgb lgb = lgb.LGBMClassifier(learning_rate = 0.02, n_estimators = 400, max_depth = 5, random_state=123) lgb.fit(X_tr, y_tr) pred = lgb.predict(X_val) from sklearn.metrics import f1_score print(f1_score(y_val, pred, average = 'macro')) pred = RF.predict(test[col_cat + col_num]) pred submit = pd.DataFrame({ 'ID': test.ID, 'Segmentation': pred }) submit.to_csv("result.csv", index=False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
다중회귀에서 잔차를 resid로 구하셨는데 ..
단순선형회귀 잔차도 역시(model.resid**2).mean() 로 구하면 되나요 ?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 작업형2(신버젼)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요레이블 인코딩을 사용하면 잘 작동하는데 원핫 인코딩을 사용하면 에러가 뜨네요 혹시 이유가 컬럼갯수가 너무 많아져서 그런거일까요?ValueError: X has 72 features, but DecisionTreeClassifier is expecting 73 features as input.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션5 작업형2 모의문제1
제출하기 전에 출려해 보니 값이 이렇게 나왔는데 이렇게 나와도 괜찮은 걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2번 채점기준
분류에서 roc_auc_score회귀에서 mse 등 자체적으로 검증데이터 평가 진행 시 각 평가지표 별로 몇점 이상 나와야지 40점 만점 획득 가능할까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 작업형2(신 버전) 제출값 궁금합니다
예시문제 작업형2(신 버전) 제출csv 팡리 형식 예시를 보면pred컬럼에 0또는 1이 있는데1(남자)일 확률 (0.xx)로 제출하는 것이 헷갈립니다...정확하게 확률로 구하는거였으면 형식 예시를 다르게 보여줘야하는게 아닌가해서요 문제가 정확하지않는건지아니면 roc-auc 문제는 '양수'를 택했을 때 확률을 구하는건지 알려주세요~
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
(체험)제2유형 튜닝
우선 선생님 강의 매우 잘 듣고 있습니다. 공부하는데 너무 큰 도움 주셔서 감사합니다.(체험)제2유형 질문 드립니다.roc-auc-score 결과값이 모델 튜닝을 이것저것 해보아도 0.6을 넘지 못하네요. =============================================================import pandas as pdtrain = pd.read_csv("data/customer_train.csv")test = pd.read_csv("data/customer_test.csv")# print(train.describe())# # 사용자 코딩 # target 성별pd.set_option("display.max_columns", None)# train = train.drop(["회원ID", "환불금액"], axis=1)# test = test.drop(["회원ID","환불금액"],axis=1)train['환불금액'] = train['환불금액'].fillna(0)test['환불금액'] = test['환불금액'].fillna(0)train = train.drop(["환불금액"], axis=1)test = test.drop(["환불금액"],axis=1)# print(train.head(2))n_list = ['총구매액', '최대구매액', '방문일수', '방문당구매건수', '주말방문비율', '구매주기']# from sklearn.preprocessing import RobustScalerfrom sklearn.preprocessing import StandardScaler# scaler = RobustScaler()scaler = StandardScaler()train[n_list] = scaler.fit_transform(train[n_list])test[n_list] = scaler.transform(test[n_list])cols = ["주구매상품", "주구매지점"]from sklearn.preprocessing import LabelEncoderfor col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) target = train.pop("성별") from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size=0.2, random_state=2022)from sklearn.ensemble import RandomForestClassifierrf = RandomForestClassifier(random_state=20, max_depth=5, n_estimators=500)rf.fit(X_tr, y_tr)pred = rf.predict(X_val)from sklearn.metrics import roc_auc_scoreresult = roc_auc_score(y_val, pred)print(result)===============================================================작성 코드인데, 어떤걸 추가 해야 결과값이 더 좋을수 있을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3유형 적합도검정 문의
선생님 안녕하세요!적합도 검정 강의에서, [문제] 지난 3년간 빅데이터 분석기사 점수 분포가 60점 미만: 50%, 60-70점 35%, 80점이상 15%로였다. 이번 회차부터 단답형을 제외하고, 작업형3을 추가하여 300명을 대상으로 적용한 결과 60점 미만: 150명, 60-70점: 120명, 80점이상: 30명이었다. 이 문제에서 #관찰 ob = [150, 120, 30] #기대 ex = [0.5*300, 0.35*300, 0.15*300] from scipy import stats stats.chisquare(ob,ex) 코드를 이렇게 작성하셨는데요.캐글 T3-Chisquare에서 해당 문제를 같은 코드로 하려니.. 오류가 납니다ㅠ에러메시지는 다음처럼 나오는데.. 혹시 인강과 캐글은 어떤 차이가 있는걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 6회 작업형 2
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요강의에서는 원핫 인코딩 후 분류 예측모델을 만들었는데, 저는 결측치, 이상치가 없어 전처리는 따로 진행하지않고수치형- MinMax 스케일링범주형- 라벨 인코딩 두가지 피처엔지니어링 진행한 후 바로 랜덤포레스트 모델 만들고 학습 및 예측 하여 제출해도 무방한가요?검증 데이터로 나누는 작업(f1-score) 이것도 하지 않으면감점인지 궁금합니다..!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
데이터 split 관련
섹션 11. 예시문제 작업형 2유형에서 질문드립니다 train.val 데이터셋 구분할 때 이미 cols 을 적용해서x_tr,x_val,y_tr,y_val = train_test_split(train[cols], target, test_size = 0.15, random_state= 2023)이런식으로 구분을 했는데model에 적용할때도 꼭 cols 컬럼을 지정해줘야하나요? model.fit(X_tr,y_tr)pred = model.predict_proba(X_val)이렇게만 적으면 안되나요? 수치형데이터에서는 cols 컬럼을 지정해서 model.fit 을 했는데문자형 데이터에서는 또 cols 컬럼을 지정하지 않았는데 다르게 데이터를 넣는 이유가 있을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
제 2회 기출 작업형 2번 문제 관련 질문입니다.
안녕하세요 선생님. 문제풀이 중 궁금증이 있어 글 남깁니다.작업형 2번 문제 중 X_train 데이터와 y_train 데이터가 나뉘어 문제가 출제되었을 때, 풀이 중에 concat을 사용하여 두 데이터를 합쳐서 진행하는 부분이 있었습니다.이 부분에서 저는 df라는 변수를 생성하여 두 데이터를 합쳤고 그대로 문제풀이를 진행했는데,이렇게 문제를 풀어도 결과값은 제출이 가능하였습니다.하지만 강의 중 풀이에서는 합치기 전 데이터로 진행하시는 것으로 인지하는데, 애초에 제가 풀이한 대로 진행해도 문제가 없는지, 실제 시험에 3개의 데이터로 출제됐을 때 이렇게 문제풀이를 진행해도 되는지 궁금합니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형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))