묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제3
문제에서 평가지표가 ROC-AUC, 정확도, F1 세가지가 있고모델&평가할 때 이 지표 세가지를 다 구해서 확인을 했는데마지막에 test데이터를 활용해서 실제 예측을 할 때는 왜 pred_proba를 사용한건가요?ROC-AUC를 기준으로 선택해서 그런건가요?그럼 정확도 기준으로 선택하면 pred 사용해도 되는건가요? <문제>## 심장마비 확률이 높은사람?- 성별, 나이, 혈압, 콜레스테롤, 공복혈당, 최대 심박수 등의 컬럼이 있음- 평가: ROC-AUC, 정확도(Accuracy), F1 을 구하시오- target : output (1:심장마비 확률 높음, 0:심장마비 확률 낮음)- csv파일 생성 : 수험번호.csv (예시 아래 참조) <모델&평가># xgbfrom xgboost import XGBClassifierfrom sklearn.metrics import roc_auc_score, f1_score, accuracy_scorexgb = XGBClassifier(random_state=2022)xgb.fit(X_tr, y_tr)pred = xgb.predict(X_val)pred_proba = xgb.predict_proba(X_val)print(roc_auc_score(y_val, pred_proba[:,1]))print(f1_score(y_val, pred))print(accuracy_score(y_val, pred)) <예측 및 csv 제출>pred_proba = xgb.predict_proba(test)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
가설검정(빈칸) 풀이답
from scipy import stats stats.wilcoxon(df['after'],df['before'],alternative='greater')안녕하세요~ 가설점정 강의자료중에 빈칸으로 공부를 하다가 질문남깁니다. 빈칸자료로 풀었을때 답이 /usr/local/lib/python3.11/dist-packages/scipy/stats/_wilcoxon.py:172: RuntimeWarning: invalid value encountered in scalar divide z = (r_plus - mn) / se WilcoxonResult(statistic=np.float64(0.0), pvalue=np.float64(1.0)) 이맇게 나오는데요~ 강의자료랑 답도 다르고 ..왜 그런가요?ㅜ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
6회 기출 유형(작업형1) 2문제
다른분이 동일한 질문한 내용이 있는데 답변이 이해가 되지 않아 추가문의드립니다. df['맡은학생수'] = (df['1학년'] + df['2학년'] + df['3학년'] + df['4학년'] + df['5학년'] + df['6학년']) / df['교사수'] df.sort_values(['맡은학생수'], ascending=False) print(df) print(int(df.head(1)['교사수']))위는 풀이에 대한 내용이고 결과값은 20이 나왔습니다.(강의의 답은 19입니다.)풀이에 잘 못된 부분이 있을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 필사 전략 강의 중 질문
-강의위치) 24:57df[cond1&2] 적고 'Run All'을 눌렀을 때,강의에서는 저렇게 표 형식으로 결과값을 볼 수 있는데 제 컴퓨터에서는 표 형식이 아니라 저렇게 풀어서 나옵니다.설정을 변경해야하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글
우측 상단 'Save Version'옆에 >I 버튼 눌러서 데이터 경로 복사할 수 있다고 하셨는데제 컴퓨터에선 저 버튼이 안 뜹니다!!저 버튼을 어떻게 활성화 할 수 있는거죠? <강의> <제 컴퓨터>
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 작업형2(신 버전)
질문1)모델 학습 및 예측하기 전에 왜 수치형 데이터만 cols로 뽑으셨는지 궁금합니다. 혹시 object 형태는 인코딩 작업으로 모두 수치형 자료로 바꿔줘야 하는데 그 과정을 생략하기 위해서 cols 형태로 뽑으신건가요 ? 질문2)target = train.pop()이부분이 잘 이해가 가지 않습니다 model.fit(train[cols], train['성별'])을 해줘도 상관은 없는건가요? 항상 수업에서 검증 데이터를 x_tr, x_val, y_tr, y_val로 나눠서 model.fit(x_tr, y_tr)형태로 넣는 것에 익숙하다 보니 혼동이 오는 것 같습니다 ㅠㅠ!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
train 데이터에 ID값을 갑자기 왜 삭제하나요 ? train = train.drop("ID", axis=1) train.head(1)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
영상에서는 원핫 인코딩 이후 int형으로 바뀌는데 저는 bool 형식으로 바꼈습니다. 정상적인가요?<class 'pandas.core.frame.DataFrame'> RangeIndex: 6665 entries, 0 to 6664 Data columns (total 30 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 ID 6665 non-null int64 1 Age 6665 non-null int64 2 Work_Experience 6665 non-null float64 3 Family_Size 6665 non-null float64 4 Segmentation 6665 non-null int64 5 Gender_Female 6665 non-null bool 6 Gender_Male 6665 non-null bool 7 Ever_Married_No 6665 non-null bool 8 Ever_Married_Yes 6665 non-null bool 9 Graduated_No 6665 non-null bool 10 Graduated_Yes 6665 non-null bool 11 Profession_Artist 6665 non-null bool 12 Profession_Doctor 6665 non-null bool 13 Profession_Engineer 6665 non-null bool 14 Profession_Entertainment 6665 non-null bool 15 Profession_Executive 6665 non-null bool 16 Profession_Healthcare 6665 non-null bool 17 Profession_Homemaker 6665 non-null bool 18 Profession_Lawyer 6665 non-null bool 19 Profession_Marketing 6665 non-null bool 20 Spending_Score_Average 6665 non-null bool 21 Spending_Score_High 6665 non-null bool 22 Spending_Score_Low 6665 non-null bool 23 Var_1_Cat_1 6665 non-null bool 24 Var_1_Cat_2 6665 non-null bool 25 Var_1_Cat_3 6665 non-null bool 26 Var_1_Cat_4 6665 non-null bool 27 Var_1_Cat_5 6665 non-null bool 28 Var_1_Cat_6 6665 non-null bool 29 Var_1_Cat_7 6665 non-null bool dtypes: bool(25), float64(2), int64(3) memory usage: 423.2 KB add코드add텍스트
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
데이터프레임을 만들때 'ID'는 test_id로 pop 했기 때문에 'ID':test_ID가 되는게 이해가 되는데 그러면 'Segmentation'은 :pred가 아닌 target이 되어야 하는것 아닌가요? target = train.pop('Segmentation') test_ID = test.pop('ID') # 예측 결과 -> 데이터 프레임 submit = pd.DataFrame({ 'ID': test_ID, 'Segmentation':pred }) submit
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
rf.fit(train,target)에 들어가는 값과 pred = rf.predict(test)에 들어가는 값이 train,target, test가 들어가는 이유가 있나요? 저기 들어가는 값의 기준이 궁금합니다. # 모델 선택 및 학습 from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state=0) rf.fit(train, target) pred = rf.predict(test) pred
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
sementation과 id를 삭제하는 이유가 뭔가요? 그리고 id를 복사할 때 train 데이터가 아닌 test 데이터를 사용하는 이유도 뭔가요 ?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제 3
영상 위치) 21:25 결과 예측 관련 질문입니다. 1) 랜덤포레스트랑 XGB로 평가한 후, 마지막에 예측은 XGB로 했는데어떤 기준으로 XGB를 선택하는건가요?? 2) pred랑 pred_proba 중에 pred_proba를 사용한 이유가 있나요?pred_proba = xgb.predict_proba(test)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
강사님은 0부터 496이 나오는데 저는 1489까지 나옵니다. 그리고 답도 차이가 많이 납니다. 괜찮은 것 인가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
predict를 사용할때와 predict_proba를 사용할때의 차이가 무엇인가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫인코딩
원핫 인코딩을 했을때 강의에는 0또는 1로 나오는데 제가 했을땐 True와 False로 나옵니다. 괜찮은가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
수치형 변수 스케일링을 할때 cols 에서 왜 TravelInsurance 는 제외시키나요?그리고 display함수가 print함수와 다른 점은 무엇인가요? # 수치형 변수 스케일링 from sklearn.preprocessing import RobustScaler scaler = RobustScaler() cols = ['Age','AnnualIncome','FamilyMembers','ChronicDiseases'] display(a_train.head()) a_train[cols] = scaler.fit_transform(a_train[cols]) a_test[cols] = scaler.transform(a_test[cols]) a_train.head()
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
T2-1. 타이타닉(Titanic) Simple Baseline 질문있습니다
# 시험환경 세팅 (코드 변경 X)import pandas as pdimport numpy as npfrom sklearn.model_selection import train_test_splitdef exam_data_load(df, target, id_name="", null_name=""):if id_name == "":df = df.reset_index().rename(columns={"index": "id"})id_name = 'id'else:id_name = id_name if null_name != "":df[df == null_name] = np.nan X_train, X_test = train_test_split(df, test_size=0.2, random_state=2021) y_train = X_train[[id_name, target]]X_train = X_train.drop(columns=[target]) y_test = X_test[[id_name, target]]X_test = X_test.drop(columns=[target])return X_train, X_test, y_train, y_test df = pd.read_csv("../input/titanic/train.csv")X_train, X_test, y_train, y_test = exam_data_load(df, target='Survived', id_name='PassengerId')#print(X_train.shape, X_test.shape, y_train.shape, y_test.shape)X_train = X_train.drop(['Cabin','Name','Ticket'],axis=1)X_test = X_test.drop(['Cabin','Name','Ticket'],axis=1)X_train['Age']=X_train['Age'].loc[X_train['Age']>=1]X_train['Age']=X_train['Age'].fillna(X_train['Age'].mean())X_test['Age']=X_test['Age'].loc[X_test['Age']>=1]X_test['Age']=X_test['Age'].fillna(X_test['Age'].mean())X_train['Embarked']=X_train['Embarked'].fillna(X_train['Embarked'].mode()[0])X_test['Embarked']=X_test['Embarked'].fillna(X_test['Embarked'].mode()[0])cond=pd.get_dummies(X_train['Sex'])cond2=pd.get_dummies(X_test['Sex'])X_train['female']=cond.iloc[:,0]X_train['male']=cond.iloc[:,1]X_test['female']=cond2.iloc[:,0]X_test['male']=cond2.iloc[:,1]X_train = X_train.drop('Sex',axis=1)X_test = X_test.drop('Sex',axis=1)from sklearn.preprocessing import LabelEncoderle=LabelEncoder()cols=['Embarked']for col in cols:le = LabelEncoder()X_train[col]=le.fit_transform(X_train[col])X_test[col]=le.transform(X_test[col])from sklearn.model_selection import train_test_splitX_tr,X_val,y_tr,y_val=train_test_split(X_train,y_train['Survived'],test_size=0.2,random_state=42)from sklearn.metrics import accuracy_scorefrom sklearn.ensemble import RandomForestClassifiermodel = RandomForestClassifier(random_state=42)model.fit(X_tr,y_tr)pred = model.predict(X_val)accuracy_score(y_val,pred)pred=model.predict(X_test)submit = pd.DataFrame({'PassengerId' : X_test['PassengerId'],'Survived' : pred})submit.to_csv("003000000.csv",index=False)submit.head()pd.read_csv("/kaggle/working/003000000.csv")accuracy_score(y_test['Survived'],submit['Survived']) 베이스라인 안보고 혼자 해봤습니다.이렇게 작성했는데 마지막줄에서 점수는 나오는데 타이타닉 캐글 대회에는 제출이 안되서요 혹시 어느부분이 잘못된건지 알수있을까요??그리고 이렇게 실행해도 맞는건지도 답변 부탁드립니다
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 모의문제 2
작업형 결측치 포함된 columns들 삭제하는 과정에서, 영상에서는 host_id는 결측치가 존재하지 않는데 drop으로 삭제하였습니다. 따로 이유가 있는걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
32. 캐글(kaggle) 필사 전략 수업 노트
32. 캐글(kaggle) 필사 전략 강의에서 노션 정리하신 것을 수업 노트에 올려 주신다고 하셨는데, 확인이 안되어 문의드립니다! (18:10)
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
groupby()안 괄호 관련
첫 번째, 두 번째 둘 다 groupby(컬럼명)했는데 왜 첫번째는 에러가 나고 두번째는 정사적으로 작동하나요??