캐글 작업형 2 (T2-6. Bike-Regressor) 파일까지 생성 후, 다운로드 후 submit을 누르면 아래와 같은 메세지가 납니다. 이유 확인 부탁드립니다. 캐글 작업형 (T 2-3 Adult census ~) 1) 라벨 인코딩 오류 object 컬럼을 라벨 인코딩 진행 시 위와 같은 에러가 발생합니다. 인터넷을 찾아보니 문자열과 숫자가 혼합되어 있는지 확인하라고 하는데, Object 컬럼 ('workclass') 1개만 선택해서 해도 변환이 안되는데.. 확인 부탁드립니다. 2) 원핫 인코딩 시 train, test 열 차이 원핫 인코딩을 진행 후, 열 갯수가 1개 차이가 났다가, 민맥스 스케일링 후 다시 52개로 맞춰졌습니다. test로 학습 후 결과 제출 시에는 52, 51 개로 결국 1개 차이가 나서 오류가 나는데요.. 이유를 알 수 있을까요?
> /usr/local/lib/python3.9/dist-packages/xgboost/ compat.py:31 : FutureWarning: pandas.Int 64Index is deprecated and will be removed from pandas in a future version. Use pandas.Index with the appropriate dtype instead. from pandas import MultiIndex, Int64Index https://dataq.goorm.io/exam/3/%EB%B9%85%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B6%84%EC%84%9D%EA%B8%B0%EC%82%AC-%EC%8B%A4%EA%B8%B0-%EC%B2%B4%ED%97%98/quiz/4 시험환경에서 xgboost 를 불러올 때 위와 같은 에러가 납니다. 찾아보니 'int64index'를 사용하고 있어서 발생하는 문제고, pandas와 xgboost를 업데이트 하거나 dtype을 직접 int로 변경해서 해결하도록 안내해주네요. xgboost는 제외하고 대비해도 괜찮을까요?
원핫인코딩 관련하여 질문이 있습니다. cols = [ object형 컬럼들, , , ] 으로 지정한 후 어떤 문제에서는 pd.get_dummies(df[cols]) 로 되어있는 곳도 있고, pd.get_dummies(df, columns=cols)로 되어있는 곳도 있는데, 둘다 마찬가지 결과가 나오는걸까요? 추가적으로, 다중분류 부분에서 보면 숫자로되어 있는 object형 변수는 자동으로 원핫인코딩이 되지 않으므로 pd.get_dummies(df[0])으로 코딩해야 한다고 하셨는데요, 그렇다면 위의 예시에서 df, columns=cols로 했을 경우에는 숫자로 되어있는 변수는 dtype이 object형이어도 자동으로 원핫인코딩이 되지않는걸까요..?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 작업형 2 유형 f1_score로 랜포 돌렸을때 값이 0.4961.. 이 낮게 나오는데 시험에서 이렇게 나와도 괜찮나요? 스케일링 라벨인코딩 작업만 했습니다
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 분류 문제 해설할 경우 test예측할 때 대부분 predict_proba 로 제출한 이유를 궁금하게 생각하였는데... 제가 생각하기에 그 이유는 첫 번째로, 문제에서 0과 1 중 1에 해당할 확률을 구하는 문제라는 점, (예시 신용카드서비스를 떠나는 고객을 찾아라, 심장마비 확률이 높은사람?, 등등) 두 번째로, 제출 예시가 소수점이라는 점, CLIENTNUM,Attrition_Flag 788544108,0.633 719356008,0.123 712142733,0.355 id,output 41,0.633 28,0.123 222,0.355 이라서 test예측할 때 predict_proba 로 제출하신거 맞죠? 반대로, 신규 고객이 어떤 분류에 속할지, 난방 부하 단계를 예측하라에서는 predict로 test를 예측하셔서... ㅠㅠ 정말 기초적인 질문 죄송합니다.
선생님 안녕하세요!! 공부하면서 헷갈려 정확히 알고 싶은 부분 질문드립니다!! :) 1. 작업형 1과 작업형 3의 배점이 각각 어떻게 되는지 궁금합니다! 단답형이 소문제 3점씩해서 10문제, 그리고 작업형1?이 10점씩 3문제라고 하셨던것 같은데 여기서 말씀하신 단답형이 작업형 3일까요?! 2. 스케일링 할 때 target 컬럼이 붙어있을 시 이를 빼고 스케일링 해야 하는것 맞을까요?? 3. 수치형과 범주형 데이터를 나누는 경우가 어떤 것이 있을까요? - 모두 cols를 사용하여 스케일링하고 인코딩한다면 굳이 나눌 필요 없지 않을까 라는 생각이 들어서 여쭤봅니다!! 4. 섹션 4 작업형 1 모의문제 1 문제2번 하드코딩 유무 위에서 예를 들어 주어진 데이터에서 결측치가 30% 이상 되는 컬럼을 찾고 -> 이 부분을 풀 때 df.isnull().sum()으로 f1 컬럼이라는 것을 알 수 있는데, 그 이후 풀어야 하는 부분(해당 컬럼에 결측치가 있는 데이터 행 삭제)을 그냥 위에서처럼 df = df.dropna(subset=['f1'])이라고 풀어도 되는것일까요? 하드코딩의 기준을 잘 모르겠어서 여쭤봅니다! 5. 분산분석 데이터 긴 데이터 형태로 무조건 바꾸어야 하나요? 이원 분산분석 때에는 안바꾸고 바로 한걸로 기억해서요!
print(X_train.describe()) print(X_test.describe()) cond1=X_train['총구매액']>=0 cond2=X_train['최대구매액']>=0 cond3=X_test['총구매액']>=0 cond4=X_test['총구매액']>=0 x_train 과 x_test 총구매액과 최대구매액에 음수가 존재하는데 이럴경우는 해당 행을 어떻게 처리하면될까요? test 데이터의 경우 칼럼은 필요시 삭제 가능하다 행은 삭제하면 안된다고 강의에서 배워서 질문드립니다. 수치형 데이터의 경우 민맥스 스케일, 혹은 스탠다드 스케일ㄹ로 스케일링 하므로, 음수(이상치) 처리는 크게 신경쓰지 않아도될것 같기도하구요..!
centos 6을 다운 받을 수 없어 centos7을 다운 받아 진행하려고 합니다. 지금 진행하다가 막힌 부분은 server01과 server02를 virtual Machine에서 centos7 파일 적용이 안 됩니다.\ 이 다음에 아무것도 안 뜨고 검은색 화면만 뜹니다
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요 데이터 전처리 시 결측치 처리 할떄 환불금액에 NA 가 있어서 0으로 채웠는데, 이를 환불금액의 평균값으로 채우는게 점수에 영향이 있을까요? 결측치 및 이상치 처리에는 정답이 있는것인지 궁금합니다. 또한 피처엔지니어링을 할때 데이터를 수치, 범주형으로 분리 하고 다시 병합하는 과정도 필수가 아닐까요? 아래와 피처는 같이 작업하는 과정으로 이해하고있습니다. 수치형- 민맥스 스케일링 (필수는 아님) 범주형- 인코딩( 많으면 라벨, 적으면 원핫) : 필수 이렇게 생각하면 될까요? 감사합니다.
행(row)이 가로고 열(column)이 세로 잖아요. 문제를 풀다가 이 기본 개념이 헷갈리는 멘붕상태를 경험해서 글 올립니다... ㅠ axis=1 이 세로(칼럼)별로 정렬하는거라고 생각하고 있었는데 sum(axis=1) 인 경우 왜 행별로 값을 구하고, sum(axis=0)은 칼럼별로 값을 구하는지 순간 이해가 안되서.... 칼럼이 a1,a2,a3 이런 식으로 있다면, axis=1일 때 각 칼럼별로 계산헤서 a1의 합, a2의 합, a3의 합, 이런식으로 나오는 줄 알았는데, axis=0일 때 a1의 합, a2의 합이 구해지더라고요.... 이걸 어떻게 하면 쉽게 이해하고 외울 수 있을까요....??
성심성의껏 답변달아주셔서 감사합니다. 기출 5회 2유형에서 회귀분석에서 이렇게 작성해보았는데 import lightgbm as lgb model2 = lgb.LGBMRegressor() model2.fit(X_train, y_train) pred2 = model2.predict(X_test) print(pred2) 결과가 나올때 나오는 이 설명 내용은 머 그냥 알려주는것 같긴한데 시험볼때 문제 없겠지요? [LightGBM] [Info] Auto-choosing row-wise multi-threading, the overhead of testing was 0.000194 seconds. You can set force_row_wise=true to remove the overhead. And if memory is not enough, you can set force_col_wise=true . [LightGBM] [Info] Total Bins 388 [LightGBM] [Info] Number of data points in the train set: 3759, number of used features: 8 [LightGBM] [Info] Start training from score 12353.321362 그리고 결과값이 이렇게 소수로 나오는데, 예측가격은 정수형으로 나와야 하는거아닌가요?? ㅠㅠ 아직 많이 부족합니다. [15684.51702898 16434.89804293 14563.42614282 ... 9815.50704033 13794.84066529 5558.57863346]
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하십니까 오늘도 문제를 풀어보고 있는 와중에 마지막 부분에서 TypeError: 'dict' object is not callable 가 뜨네요 위치는 아래 처럼 46번에서 나오네요 문제가 무엇일까요...? TypeError Traceback (most recent call last) <ipython-input-101-9bd54b1c48b7> in <cell line: 46>() 44 45 pre = rf.predict(e_test) ---> 46 sm = pd.DataFrame({ 47 'pred' : pre 48 }) import pandas as pd e_train = pd.read _csv('energy_train.csv') e_test = pd.read _csv('energy_test.csv') pd.set_option('display.max_columns',None) # print(e_ train.info ()) # print(e_train.shape, e_test.shape) (537, 10) (231, 9) # print(e_test.isnull().sum()) 결측치는 X # # e_train.nunique() # 12 12 7 4 2 4 4 6 467(217) 5 hl = e_train.pop('Heat_Load') c_tr = e_ train.select _dtypes(exclude='O').columns from sklearn.preprocessing import MinMaxScaler scaler = MinMaxScaler() cols = c_tr e_train[cols] = scaler.fit _transform(e_train[cols]) e_test[cols] = scaler.transform(e_test[cols]) from sklearn.preprocessing import LabelEncoder le = LabelEncoder() col = ['Roof', 'Height', 'Orient'] for c in col : e_train[c] = le.fit _transform(e_train[c]) e_test[c] = le.transform(e_test[c]) from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split( e_train,hl,test_size=0.1,random_state=2023 ) # print(X_tr.shape,X_val.shape,y_tr.shape,y_val.shape) from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import f1_score rf = RandomForestClassifier() rf.fit (X_tr,y_tr) pred = rf.predict(X_val) f1_score(y_val, pred, average='macro') pre = rf.predict(e_test) sm = pd.DataFrame({ 'pred' : pre }) sm.to _csv('result.csv', index=False)
from statsmodels.formula.api import ols from statsmodels.stats.anova import anova_lm model = ols(formula, data).fit() anova_lm(model) <---- 이 부분에서 typ = 2 이런식으로 파라미터를 적는 경우들도 있던데 이거는 어떤건지 알 수 있나여 ?!