묻고 답해요
148만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
test파일 예측에서 자꾸 에러가 발생합니다.
train = pd.read_csv('/kaggle/input/working8-2/churn_train.csv')test = pd.read_csv('/kaggle/input/working8-2/churn_test.csv')target = train.pop('TotalCharges')train = pd.get_dummies(train)test = pd.get_dummies(test)from sklearn.model_selection import train_test_splitX_tr,X_val,y_tr,y_val = train_test_split(train, target, test_size=0.2, random_state=2022)from sklearn.metrics import mean_absolute_errorfrom sklearn.ensemble import RandomForestRegressorrf = RandomForestRegressor(random_state=2022, max_depth=7, n_estimators=600)rf.fit(X_tr,y_tr)pred = rf.predict(X_val)answer = rf.predict(test)rf.predict(X_val)까지는 잘 예측이 되어,866.4986350062683의 값을 얻었습니다.그리하여 마지막으로 본 test파일을 예측하여 제출하려고 하는데, 계속해서 오류가 발생하네요 ㅠㅠㅠ아래는 에러 코드입니다.ValueError Traceback (most recent call last) Cell In[97], line 14 12 rf.fit(X_tr,y_tr) 13 pred = rf.predict(X_val) ---> 14 answer = rf.predict(test) File /opt/conda/lib/python3.10/site-packages/sklearn/ensemble/_forest.py:981, in ForestRegressor.predict(self, X) 979 check_is_fitted(self) 980 # Check data --> 981 X = self._validate_X_predict(X) 983 # Assign chunk of trees to jobs 984 n_jobs, _, _ = _partition_estimators(self.n_estimators, self.n_jobs) File /opt/conda/lib/python3.10/site-packages/sklearn/ensemble/_forest.py:602, in BaseForest._validate_X_predict(self, X) 599 """ 600 Validate X whenever one tries to predict, apply, predict_proba.""" 601 check_is_fitted(self) --> 602 X = self._validate_data(X, dtype=DTYPE, accept_sparse="csr", reset=False) 603 if issparse(X) and (X.indices.dtype != np.intc or X.indptr.dtype != np.intc): 604 raise ValueError("No support for np.int64 index based sparse matrices") File /opt/conda/lib/python3.10/site-packages/sklearn/base.py:548, in BaseEstimator._validate_data(self, X, y, reset, validate_separately, **check_params) 483 def _validate_data( 484 self, 485 X="no_validation", (...) 489 **check_params, 490 ): 491 """Validate input data and set or check the `n_features_in_` attribute. 492 493 Parameters (...) 546 validated. 547 """ --> 548 self._check_feature_names(X, reset=reset) 550 if y is None and self._get_tags()["requires_y"]: 551 raise ValueError( 552 f"This {self.__class__.__name__} estimator " 553 "requires y to be passed, but the target y is None." 554 ) File /opt/conda/lib/python3.10/site-packages/sklearn/base.py:481, in BaseEstimator._check_feature_names(self, X, reset) 476 if not missing_names and not unexpected_names: 477 message += ( 478 "Feature names must be in the same order as they were in fit.\n" 479 ) --> 481 raise ValueError(message) ValueError: The feature names should match those that were passed during fit. Feature names unseen at fit time: - customerID_CUST0001 - customerID_CUST0002 - customerID_CUST0006 - customerID_CUST0007 - customerID_CUST0008 - ... Feature names seen at fit time, yet now missing: - customerID_CUST0000 - customerID_CUST0003 - customerID_CUST0004 - customerID_CUST0005 - customerID_CUST0009 - ...
-
해결됨직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피
배포 파일 작성방법 문의
현재 엑셀에서 값을 가져와서 필드값으로 입력하는 것으로 배포파일을 만들어 부서에 테스트 해보려고 하는데요,혹시 배포파일을 만드는 방법도 강의 커리큘럼에 있을까요?알려주시면 바로 수강하고자 합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
4번 질문드립니다.
문제 4번 질문드립니다.cols = df.select_dtypes(exclude='object').columns df = df[cols]왜 이건되고cond1 = df.select_dtypes(include='object').columnsdf= df[~cond1]왜이건 안되나요?
-
해결됨[파이썬/Python] 문과생도 이해하는 DFS 알고리즘! - 입문편
촌수계산(백준 2644) 질문
영상 2:53왜 연결된 노드중에 가장 작은 노드부터 방문해야 하나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제 3번
>>views 컬럼에 결측치가 있는 데이터(행)을 삭제하고, f3 컬럼의 결측치는 0, silver는 1, gold는 2, vip는 3 으로 변환한 후 총 합을 정수형으로 출력하시오<<이 문제를 풀이할 때, 강사님이 말씀해주신 것처럼 문제를 풀었는데답 밑에 이런 문구들이 표기됩니다.133 <ipython-input-34-9be3d2c84afd>:11: FutureWarning: Downcasting behavior in `replace` is deprecated and will be removed in a future version. To retain the old behavior, explicitly call `result.infer_objects(copy=False)`. To opt-in to the future behavior, set `pd.set_option('future.no_silent_downcasting', True)` df['f3'] = df['f3'].replace('silver',1).replace('gold',2).replace('vip',3)이렇게 표기되어도 정답 인정은 되는 것인지 궁금합니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
종속,독립의 구분
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요! 열심히 한강의씩 듣고있는 수강생입니다.항상 너무 자세히 설명도 너무 잘 해주셔서 감사합니다.일원분산분석 수강중 melt를 진행하고 이렇게 나온것까지는 이해가 됐습니다! 혹시 분산분석테이블에서 ols를 할 때 종속, 독립을 넣어야하는데 어떻게 구분해야할지가 문득 궁금해져서 질문을 남기게 되었습니다..! 보통은 맨 우측에있는 부분을 종속변수로 알면 될까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
파이썬기초2 문자열변경 - 여러단어 변경 관련 문의
#text= text.replace("파이썬", "머신러닝").replace("분석기사", "분석을 위한") 에서여러단어 변경 시 유의사항으로 앞에서 부터 실행돼서 파이썬부터 머신러닝으로 바꿔야 한다고 말씀하셨는데 앞에서 부터 실행되면 분석기사부터 바꿔야되는 거 아닌가요?왜냐면 text = 빅데이터 분석기사 파이썬 공부 순이라서.앞에서 부터 실행된다는게 분석기사부터 바뀌는게 아닌가 하는 생각이 들어서 여쭤봅니다. #text= text.replace("분석기사", "분석을 위한").replace("파이썬", "머신러닝") 으로 바꿔서 실행해보니'빅데이터 분석을 위한 머신러닝 공부' 라는 값이 도출됩니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출8회 작업형2 원핫인코딩으로 하면 자꾸 오류가 나요 ㅠ
어디가 문제일까요? ㅠㅠ 라벨인코딩이 너무 어렵게 느껴져서 원핫인코딩만 외웠는데 적용이 힘드네요 도와주세요~~
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
일주일전 준비 시작분들위한 정리자료
각 작업형 끝에 캐글 문제 풀이 적혀있는데 이건 어디서 푸는걸까요? 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
rf = RandomForestClassifier(random_state=0)
rf = RandomForestClassifier(random_state=0) 여기서 random_state를 꼭 해줘야 하나요? 이제까지는 안했던거 같아서요.
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
1987번 관련 질문입니다.
1987번 제 풀이가 선생님의 리스트 풀이와 비슷하다고 생각해서 제출을 해봤는데 시간 초과가 나는 것 같습니다. 이상하다고 생각해서 선생님께서 작성해주신 예시코드도 복붙해봤는데 똑같이 시간 초과가 나는 것 같아서요... 혹시 뭐가 문제일까요? 컴퓨터마다 시간이 달라서 그런걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
회사 PC로 구글드라이브 접속이 안되어서...
혹시 학습용 CSV 파일을 메일로 받아볼수 있을까요?
-
해결됨세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)
3085번 사탕 게임에서 제 풀이가 왜 틀린걸로 처리되는지 잘 모르겠습니다.
안녕하세요 선생님. 백준 3085번 풀이2와 제 풀이가 비슷한 것 같은데 제 풀이는 틀린 것으로 나오는데 어떤 부분이 잘못됐는지 잘 모르겠습니다. 제가 어떤 부분을 놓치고 있는지 알려주시면 감사하겠습니다!import sys from itertools import combinations def input(): return sys.stdin.readline().rstrip() def get_max(i,j): global data, n ser1 = data[i] ser2 = [data[k][j] for k in range(n)] return max(count_max(ser1), count_max(ser2)) def count_max(ser): count = 0 bef = '.' for idx in range(len(ser)): if bef != ser[idx]: count = 1 else: count += 1 bef = ser[idx] return count n = int(input()) data = [] for _ in range(n): data.append(list(input())) dx = [0,1,-1,0] dy = [1,0,0,-1] cur_max = 0 for i in range(n): for j in range(n): if i == j: cur_max = max(cur_max, get_max(i, j)) for di, dj in zip(dx,dy): ni = i + di nj = j + dj if not ((0 <= ni < n) & (0 <= nj < n)): continue if (data[ni][nj] == data[i][j]): continue data[i][j], data[ni][nj] = data[ni][nj], data[i][j] cur_max = max(cur_max, get_max(i, j)) data[i][j], data[ni][nj] = data[ni][nj], data[i][j] print(cur_max)
-
해결됨Azure Native로 나만의 GPT 만들기
400 연결 오류
안녕하세요, 강의 너무 잘 듣고 있습니다.잘 따라가고 있던 와중 프론트 코드에 URL 상수를 지정하는 과정들을 거치고 UI가 있는 창에서 개발자 도구를 열어도 연결 완료 문구가 뜨지 않아 글 남깁니다.저와 같은 문제로 질문 주신 커뮤니티의 다른 분께 프론트 파일과 주소를 남겨달라고 하셔서메일로 프론트 파일과 주소를 보내드린 상태입니다.한 번만 확인해 주신다면 감사드립니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫 인코딩 concat
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 import pandas as pdtrain = pd.read_csv("data/customer_train.csv")test = pd.read_csv("data/customer_test.csv")# print(train.shape,test.shape) #2482# print(train.info(),test.info())# print(train.isnull().sum()) # 결측값 존재함# print(test.isnull().sum()) # 결측값 존재함# 전처리train = train.fillna(0)test =test.fillna(0)# print(train.isnull().sum())# print(test.isnull().sum())target = train.pop('성별')df= pd.concat([train,test])df = pd.get_dummies(df)train = df.iloc[:len(train)]test = df.iloc[len(train):]print(train.shape,test.shape)# 모델 분리 및 검증 from sklearn.model_selection import train_test_splitX_tr,X_val,y_tr,y_val = train_test_split(train,target,test_size=0.2,random_state=22)# print(X_tr.shape,X_val.shape,y_tr.shape,y_val.shape)# 모델 학습 from sklearn.ensemble import RandomForestClassifierrf = RandomForestClassifier(random_state=22)rf.fit(X_tr,y_tr)pred = rf.predict_proba(X_val)# 결과 pred = rf.predict_proba(test)submit = pd.DataFrame({'pred':pred[:,1]})submit.to_csv('result.csv',index=False)print(pd.read_csv('result.csv').head())print(pd.read_csv('result.csv').shape) #2482 이 식으로 풀어도 될까요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
스케일링 관련
안녕하세요 선생님작업형 2유형에서 스케일링, 로그변환 등을 꼭 해야하는걸까요?말씀하신 기본 베이스라인으로만 머신러닝 진행하고 제출 시에 문제 되는 부분이있을까해서요.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫 인코딩
pd.get_dummies(train, columns = cols) pd.get_dummies(train[cols]) 이 둘의 차이는 단순하게 원핫 인코딩 한것만 보여주는지 전부 다 보여주는지의 차이 같은데요, 아래 걸로 해도 상관 없나요..?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
pred_proba[:,1] 오류
from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state = 0, max_depth = 3, n_estimators = 200) model.fit(X_tr, y_tr) pred_proba = model.predict_proba(X_val) from sklearn.metrics import roc_auc_score print(pred_proba) print(roc_auc_score(y_val, pred_proba[:, 1]))안녕하세요,모델학습 후 검증하려고 하니 print(roc_auc_score(y_val, pred_proba[:, 1]))에서 아래와 같은 오류가 발생합니다.list indices must be integers or slices, not tuple 혹시 pred_proba의 형태에 문제가 있어서 그러나 출력해봤더니 아래처럼 array가 2개가 뜨는데 원래 출력되던 값이랑 다른 것 같기도 한데 어떤 부분이 잘못된걸까요..?[array([[6.17771951e-04, 3.90720727e-04, 5.61044129e-04, ..., 1.88014875e-05, 2.71602426e-05, 9.26113606e-05], [4.72241735e-04, 7.55194719e-04, 3.70085375e-04, ..., 7.58005053e-06, 2.24283166e-05, 3.95537961e-05], [2.06135825e-05, 1.04454196e-05, 1.96540881e-06, ..., 2.93436306e-05, 1.84382330e-05, 6.98070487e-05], ..., [2.26718012e-05, 2.39307053e-05, 1.96540881e-06, ..., 3.02043842e-05, 1.54553261e-05, 6.62548451e-05], [1.51536674e-05, 2.15648698e-05, 2.06815630e-06, ..., 4.15875993e-05, 3.06270026e-05, 3.26545900e-05], [2.84102759e-05, 1.47138847e-05, 6.29396294e-06, ..., 3.17093190e-05, 1.71020727e-05, 4.92247989e-05]]), array([[0.05156594, 0.94843406], [0.0402204 , 0.9597796 ], [0.54197093, 0.45802907], ..., [0.53420482, 0.46579518], [0.5344612 , 0.4655388 ], [0.53436829, 0.46563171]])] @ 위 문제를 기존에는 y_train의 'ID' 값을 drop하지 않았다가, y_train의 'ID' 값을 drop하니해결되었는데 그것과 관련이 있는 것일까요?그리고, 'ID'값을 제거하려고 할 때에는 X_train, y_train, X_test 세 데이터 프레임 모두의 'ID'값을 반드시 제거해야 하는 것인가요?
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
검증 데이터 분리 시 문의
검증 데이터 분리 시,X_tr ~ = train_test_split( train.drop('output', axis=1) 에서전단계에서 데이터 전처리 할 때, 이미 train에서 output 드랍하고 train에 저장했는데 (train = train.drop('output')) 검증 데이터 분리 작성 시 다시 drop 해주는 이유가 있나요?X_tr ~ = train_test_split( train) 이렇게 바로 하면 안되나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
라벨인코딩
안녕하세요!명목형 자료의 인코딩 시 Test 데이터에만 있는 Unique 값이 있을 수 있어 데이터를 합치고 인코딩 한 후에 다시 분리하는 것으로 이해하였습니다.예시에 사용된 원핫인코딩의 pd.get_dummies와 달리 라벨인코딩의 경우 사이킷런의 인코더를 이용하는데, 이에 따라 fit_transform, transform으로 나누어 진행하는 것 같습니다.질문은! 라벨인코딩의 경우에 Train, Test 데이터를 합쳐서 인코딩 할 때 fit_transform을 사용하면 될까요?