묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 8회 2유형에서 평가지표 사용
평가지표를 사용할때mse는 924.75가 나왔는데 r2를 찍어보니까 0.27이 나왔습니다.이 경우에 문제에서 mse를 이용해서 평가한다고 했는데 그대로 내도 문제가 없을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
round, int
작업형 1-1 문제 마지막 부분을 아래와 같이 풀면 1116이 나오고 print(round(df['proline'].mean(),0)) print(int(df['proline'].mean())) 위와 같이 풀면 1115가 나옵니다.왜일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
pred = (pred>0.5).astype(int)
수정된 모델로 b 데이터를 사용해 예측한 후 ,b데이터의 target과 비교해 정확도를 계산하시오. 정확도는 0과 1사이의 값이다.라고 했을 때 정확도가 0과 1사이의 값이라서 pred = (pred>0.5).astype(int) 이 코드를 쓰는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
import statsmodels.api as sm
import statsmodels.api as sm혹시 이건 왜 작성하는건가요?작성 안해도 코드가 제대로 실행 되던데요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2유형 문의
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요train,test데이터 범주형 수가 다르면 concat 후 레이블인코딩 또는 원핫인코딩 후 다시 train,test로 나뉘는데 이중 레이블인코딩은 train데이터엔 있고 test데이터에는 없을때에만 가능한게 맞을까요?10회 2유형 범주형 갯수를 보면 train에는 42 범주형에는 41이어도 동일한 주구매상품이라 가능한거죠?얼핏 다른곳에 train없고 test에만 있을경우 사용하면 안된다는 글을 보았거든요.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2 (target이 문자형태일때)
이진 분류에서 target값이 문자형태일 때 acuuracy는 target 값이 숫자형태일 때 처럼 수행하고f1은 pos_label을 통해 양성값을 지정해주면 되는데roc_auc와 recall, precision 평가지표들은 어떻게 수행해야하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
제출 시 index 관련 질문
import lightgbm as lgb rk = lgb.LGBMRegressor(random_state=628, verbose=-1) rk.fit(X_tr,y_tr) pred = rk.predict(X_val) from sklearn.metrics import root_mean_squared_error ruf = root_mean_squared_error(y_val,pred) ruf pred = rk.predict(test) submit = pd.DataFrame({'pred':pred}) submit.to_csv("result.csv", index = False) print(pd.read_csv("result.csv").head()) 여기까지 작성하고 실행을 했는데 pred 0 15343.154157 1 15824.571222 2 14148.946309 3 17381.447059 4 6259.560969 이렇게 나오는 이유가 뭘까요.. 처음에 까먹어서 다시 했는데 계속 저렇게 나와요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
컬럼 개수
저 같은 경우에는 컬럼 개수가 안뜨는데 이유가 뭔가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫인코딩 pd.concat하는 경우
train object 컬럼과 test object 컬럼의 기초 통계 확인후 unique 개수가 다른 경우에는 pd.concat을 통해 train+test를 합친 후 pd.get_dummies(원핫-인코딩 진행 후) 길이만큼 나누는 부분이 진행하는 게 맞을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
테스트 사이즈
테스트 사이즈를 나누는 기준이 있나요??작으면 0.15, 좀 크면 0.2이런식으로요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
F 검정 및 로그, 합동 분산 추정량 공식 출현에 걱정됩니다...
선생님, 안녕하세요. 다름이 아니라, 제3유형의 출제범위가 생각보다 넓은 듯 하여 걱정입니다...F 값, 합동 분산 추정량, 로그 씌우는 함수 등... 배우지 못했거나 알지 못하는 개념 및 함수가 갑작스레 등장하게 될까 걱정이네요...어느정도까지 숙지해야하는지도 감이 안서 난감합니다...ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 3번 예시문제 관련 문의
import pandas as pd train = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p2/heart/2files/train.csv") test = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/main/p2/heart/2files/test.csv") # train = pd.read_csv("train.csv") # test = pd.read_csv("test.csv") print(train.shape, test.shape) target = train.pop('output') from sklearn.model_selection import train_test_split X_tr,X_val,y_tr,y_val = train_test_split(train,target,test_size=0.5,random_state=2022) print(X_tr.shape,X_val.shape,y_tr.shape,y_val.shape) from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state=2022,max_depth=5, n_estimators=400) model.fit(X_tr,y_tr) pred = model.predict_proba(X_val) from sklearn.metrics import roc_auc_score roc_auc = roc_auc_score(y_val,pred[:,1]) print(roc_auc)작업형2 3번 예시 문제에서 강의 스크립트와 동일하게 작성했는데 roc_auc 평가 결과가 1.0으로 나오게 됩니다.1로 나오는 결과는 모델이 검증 데이터를 완벽하게 예측하는 경우라고 하는데, 해당 스크립트 맞는지한번 봐주시면 감사하겠습니다!^^
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 8회 작업형 2
문제를 라벨인코딩이 아닌 원핫인코딩으로 풀고 싶은데, 챗 gpt 에 물어봤더니, # 열 정렬/맞춤 필수 (시험 감점 포인트!)train, test = train.align(test, join='left', axis=1, fill_value=0)이 코드가 필수라고 해서요! 원핫인코딩을 할 떄는 항상 안전하게 이 코드를 작성해주면 좋을까요?아니면 이 문제의 경우 특히 그런걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
탐색적 데이터 분석
저는 1.데이터 크기 확인print(train.shape,test.shape)2.결측치 수 print(train.isnull().sum())print(test.isnull().sum()) 3.#target unique 수print(train['Heat_Load'].value_counts())4.데이터 정보(자료형)print(train.info())정도만 확인 하는데 value_counts()로 확인하는 이유와 object의 unique개수를 확인 하는 이유가 뭔가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
질문드립니다.
안녕하세요.3유형 관련하여, 문제가 주어지면 알아서 독립성/정규성/등분산성 까지 검증을 해야하는지 궁금합니다~! 예를 들면예) 과자의 무게는 200g과 다른지 검정하세요. 1.정규성 검정 (shapiro) 이후 결과에 따라willcoxon이나 ttest_1samp를 진행해야 하는 것인지. 2.그게 아니라면, 정규성은 주어지고willcoxon이나 ttest_1samp를 하라고 주어지는 것인지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 3회 작업형2 lightgbm 질문
기출 3회 작업형2 lgbm으로 풀다가 질문드립니다 #lightgbm import lightgbm as lgb rk = lgb.LGBMClassifier(random_state=628, verbose=-1) rk.fit(X_tr, y_tr) 여기까지 했는데 LightGBMError: Do not support special JSON characters in feature name. 이렇게 오류가 뜨는 건 어떻게 해야하는 건가요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
머신러닝 분류 모델과 회귀모델의 종류
어떤게 있나요 헷갈려서 ex)분류모델-랜덤포레스트,Xgboost,LightGBM이런 식으로 정리 좀 해주세요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
데이터 전처리 과정
강사님 안녕하세요데이터 전처리 과정에서 어떤 조건?으로 결측치를 제가하나요?여기서 이름과 host_id를 제거하신거같은데 이유가 있나요??그리고 모의문제1에서도 어떤 이유 저 컬럼을 없앤건지 궁금합니다
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2회 기출유형 3번 문제
3번문제에 이렇게 코드를 짜봤는데 결과값이 다르게 나옵니다ㅠ 어디를 수정해야 할까요?ㅠq3 = df['age'].quantile(0.75) q1 = df['age'].quantile(0.25) IQR = q3 - q1 line1 = q1 - 1.5 * IQR line2 = q3 + 1.5 * IQR print(sum(df['age'] < line1)) print(sum(df['age'] > line2))
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
코드 검토
안녕하세요 혼자 문제 풀이를 해보다가 제가 작성한 코드들이 문제가 없는지 여쭤보고싶습니다.그리고 마지막 제출단계에서 test 데이터에 'Attritino_Flag'를 삭제했는데 (drop을 안시키고 작성했는데 오류가 뜨더니 자동으로 drop시키는 코드로 수정되었습니다.) 왜 삭제해야 오류가 안나는지 궁금합니다. # 1. 문제 정의 (분류) target: Atrrition_Flag(1: 이탈, 0: 유지) # 2. 데이터 불러오기 # 3. 탐색적 데이터 분석(EDA) # train.info() # dtypes: float64(5), int64(11), object(5) # train.isnull().sum() # 0 # train.describe(include='O') # test.info() # dtypes: float64(5), int64(10), object(5) # test.isnull().sum() # 0 # train['Attrition_Flag'].value_counts() # 0: 6815, 1: 1286 # 4. 데이터 전처리(인코딩, 데이터 전처리) # 4-1. 원핫인코딩 data = pd.concat([train, test], axis = 0) data = pd.get_dummies(data) train = data.iloc[:len(train)].copy() test = data.iloc[len(train):].copy() # train.info() # bool(23), float64(6), int64(10) # test.info() # bool(23), float64(6), int64(10) # 5. 검증 데이터 나누기 from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split( train.drop('Attrition_Flag',axis=1), train['Attrition_Flag'], test_size = 0.2, random_state = 0 ) # 6. 모델 학습 및 평가 # 6-1. 모델불러오기 from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state=0) # 6-2. 학습(fit) rf.fit(X_tr, y_tr) # 6-3. 예측(predict) pred = rf.predict(X_val) # 6-4. 예측 결과 확인 # pred[:10] # rf.classes_ # pred # 6-5. 평가 # 평가: ROC-AUC, 정확도(Accuracy), F1, 정밀도(Precision), 재현율(Recall) from sklearn.metrics import roc_auc_score, accuracy_score, f1_score, precision_score, recall_score accuracy = accuracy_score(y_val, pred) print('accuracy:',accuracy) # accuracy: 0.9549660703269587 f1 = f1_score(y_val, pred) print('f1:',f1) # f1: 0.8381374722838137 precision = precision_score(y_val, pred) print('precision:',precision) # precision: 0.9264705882352942 recall = recall_score(y_val, pred) print('recall:',recall) # recall: 0.7651821862348178 pred = rf.predict_proba(X_val) roc_auc = roc_auc_score(y_val, pred[:,1]) print('roc_auc:',roc_auc) # roc_auc: 0.9860421123349186 # 7. 제출 pred = rf.predict_proba(test.drop('Attrition_Flag', axis=1)) pred submit = pd.DataFrame({ 'CLIENTNUM': test['CLIENTNUM'], 'Attrition_Flag': pred[:,1] }) submit.to_csv('000000.csv',index=False)