묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형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(컬럼명)했는데 왜 첫번째는 에러가 나고 두번째는 정사적으로 작동하나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제 3 문제7번
인덱스 값이 2001인 데이터(행)을 선택할 때df.loc[2001]df.loc[2001].mean()loc 대신 df.iloc[1,:].mean()위처럼 iloc 함수를 사용해도 되나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
roc_auc 결과 값 문의
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세 위와 같이 실행했는데 baseline roc_auc가 높게 나옵니다 그리고 y_test 실행결과 label과 점수가 비슷합니다. 어떤 이유일때문일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
9회 기출유형 원본파일 관련 질문
선생님 9회 기출유형 원본파일은 깃허브상에 없던데 업데이트 예정인가요?
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
강의를 보면서 강사님과 똑같이 진행을 하는데 값이 다릅니다. 그리고 영상에서는 max_depth를 설정했을 때가 설정하지 않았을 때 보다 값이 더 올라갔는데 저 같은 경우는 설정한 후 값이 더 내려갔습니다. 정상적인 건가요?#rf from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import roc_auc_score, f1_score, accuracy_score rf = RandomForestClassifier(random_state=2025,max_depth=3) rf.fit(X_tr,y_tr) pred = rf.predict(X_val) pred_proba = rf.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)) # 0.9227272727272727 # 0.8571428571428571 # 0.8378378378378378 # max_depth = 3 # 0.9242424242424243 # 0.8 # 0.7837837837837838
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이해가 가지 않는 것
roc_auc_score, f1_score, accuracy_score를 구할때 print문의 y_val,pred를 넣는데 왜 저 2가지를 넣는건가요? 그리고 proba는 뭔가요?print(roc_auc_score(y_val,pred_proba[:,1])) print(f1_score(y_val,pred)) print(accuracy_score(y_val,pred))