모든 시험장의 시험환경에서 lightgbm 사용이 가능할까요?? 혹시 버전에 따라서 사용이 불가능한 곳이 있지 않을까 걱정되어 질문합니다! 인코딩 작업을 할 때 모든 범주형 컬럼을 labelencoder 하거나 아니면 one_hot을 하는게 좋을까요..? 아니면 선생님께서 알려주신대로 종류가 10개 이하인 컬름은 one_hot을 하고 10개 이상인 컬럼은 label작업을 하는게 좋을까요..? 머리가 너무 복잡하여 하나의 방법으로 정해서 시험치러 가고 싶은데 어떤걸 선택해야할지 고민입니다.. 여기에 대해 답변해주시면 감사하겠습니다..!
이전 단일 표본 검정에서 정규성 검증을 진행할 때 willcoxon 코드를 알려주실 때stats.wilcoxon(df[’무게‘]-120, alternative=’less’)와 같이 알려주셨는데 이번 대응표본 검정에서 정규성 검증을 진행할 때 willcoxon는 stats.wilcoxon(df[‘after’] ,df[‘before’], alternative = ‘greater’)와 같이 알려주셨습니다.또한 강의에서도 after와 before의 값을 빼서 넣은 값인 df['diff']를 그대로 사용해도 된다고 말씀하셨습니다.그래서 아래 사진과 같이 임의로 df[‘after’] - df[‘before’]를 넣어서 실행해봤는데 결과값이 똑같이 나왔습니다. 그럼 단일 표본 검정에서 알려주신대로 df[’무게‘]-120와 같이 df[‘after’] - df[‘before’]로 생각하고 넣어줘도 무방한 것인가요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 from sklearn.preprocessing import MinMaxScaler cls = train.select_dtypes(exclude='O') min = MinMaxScaler() train[cls] = min.fit_transform(train[cls]) test[cls] = min.transform(test[cls]) ValueError: Boolean array expected for the condition, not int64 어디가 틀렸을까요...?
#9개 print(len(df[:9])) #10개 print(len(df.loc[:9])) #9개 print(len(df.iloc[:9])) ㅠㅠㅠㅠㅠㅠㅠ 셋 구분하기가 너무 어렵습니다 시험이 다가오니 사소한 것도 확인받아야 마음이 놓일 것 같습니다 ㅠㅠ 매번 감사합니다 ㅠㅠ
T2-1. 타이타닉(Titanic) Simple Baseline | Kaggle 위 문제에서 풀이를 하던 중에 범주형 데이터 인코딩 중에 에러가 계속 발생하여 확인했더니 최초 풀이과정에 수치형 데이터(int)를 레이블인코딩 하신 부분을 발견했습니다. 통상 과정에서 범주형 데이터를 인코딩하는 것을 접하다보니 궁금증이 생겼습니다. (1) 수치형 데이터를 레이블인코딩 해도 큰 문제가 없는지, 이 때 주의해야 할 부분이 있는지 궁금합니다. (2) 위 데이터에서 범주형 데이터를 레이블인코딩 했을 때 발생하는 에러가 어떤 이유인지 궁금합니다. ValueError: y contains previously unseen labels: 'SOTON/O.Q. 3101311'
시험 환경 체험할 때 모의문제 2번에서 환불금액 결측치 채우고 object 컬럼들 label encoding 마친 후 randomforest와 xgbclassifier 이용해서 train test split하고 모델학습하고 roc auc score를 확인해봤는데 하이퍼파라미터 튜닝을 이것저것 해봐도 최대로 나오는 값이 0.688 정도 입니다.이 정도면 시험에서 문제 없는 score인가요?하이퍼파라미터 튜닝 안 하면 60 초반 정도로 밖에 안 나와서요.
기출 6 작업형 2 import pandas as pd train = pd.rea d_csv( "energy_train.csv" ) test = pd.rea d_csv( "energy_test.csv" ) # train.shape,test.shape # print(train.head()) # print(test.head()) # print(train.isnull().sum()) # print(test.isnull().sum()) target = train.pop( 'Heat_Load' ) # print(train.describe(include='object')) train = pd.get_dummies(train) test = pd.get_dummies(test) # train.head() from sklearn.model_selection import train_test_split X_tr,X_val,y_tr,y_val = train_test_split(train,target,test_size= 0.2 ,random_state= 2023 ) from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state= 2023 ) model.fi t(X_tr,y_tr) pred = model.predict(X_val) # pred from sklearn.metrics import f1_score print (f1_score(y_val,pred,average= 'macro' )) pred = model.predict(test) pd.DataFrame({ 'pred' :pred}).to_csv( "result.csv" ,index= False ) pd.rea d_csv( "result.csv" ) 최근 인코딩 영상을 봤는데 범주형 인코딩 과정에서 train과 test unique 값이 같은지 다 비교해본 후에 진행해야 되나요? 지금은 nunique 값이 동일하면 바로 원핫인코딩이나 라벨인코딩 사용하고 있습니다. 만약 다른 값이 들어가 있으면 인코딩 할 때 오류가 발생하나요? randomforest만 이용해서 분류일 때랑 회귀일 때 나눠서 풀고 있는데 위의 코드처럼 작성하면 문제되는 점은 없을까요? randomforest에서 분류든 회귀든 max_depth와 n_estimators를 추가해서 검증 값이 높게 나오는 정도만 하면 될까요?
민맥스에서는 문제없이 돌아가는데 표준화와 로버스트 스케일링 에서는 T ransformerMixin.fit_ transform() missing 1 required positional argument: 'X' 라는 오류가 나옵니다! n_train[cols] = scaler.fit _transform(n_train[cols]) 이부분에서 에러가 나는 거 같은데 어떤 문제일까요? copy() 부분은 계속 실행하고 돌리고 있습니다
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 질문 : test에서 결측치가 발생할 경우엔 행을 삭제 못하나요? test 파일의 경우 저희가 시험장에서 볼 수 있는 것은 X_test 파일이고, y_test는 저희가 볼 수 없는 파일이잖아요. 그럼 X_test의 행을 삭제하면 오류가 뜨나요? 예를 들어 X_test에서 행이 50개인데 행을 3개 삭제하면, y_test는 50개이니까 평가가 불가능하지 않을까 싶습니다. 즉, test에는 결측치가 발생하면 X_test.fillna()를 통해 대체를 할 수 있지, X_test.dropna()처럼 행을 삭제할 수 없나요? 강의 때 올려주신 예시문제나 기출문제 해설을 봐도 작업형2에는 모두 결측치가 없어서, 이렇게 질문으로 올립니다. 시험이 다가오니 사소해 보이는 질문도 확인을 받고 싶네요 ㅠㅠ 항상 감사합니다
from sklearn.tree import DecisionTreeClassifier model = DecisionTreeClassifier(random_state = 2023) model.fit(X_tr, y_tr) pred = model.predict_proba(X_val) roc_auc_score(y_val, pred[:,1]) 안녕하세요? 마지막 pred 에서 슬라이싱할때.. 조금 헷갈리는데요..! pred[:,1]로 하는 이유가 예측(시간에 맞춰 도착하지 않을 확률) 때문인거 같은데..! 혹시 pred[:,0]을 할지 pred[:,1] 로 할지는 어떤 것을 보고 정할 수 있는지 여쭈어볼 수 있을까요?