묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
라벨인코딩, 원핫인코딩 중 선택하는 기준이 무엇인지 궁금합니다.
인코딩 시, 라벨인코딩, 원핫인코딩 중 선택하는 기준이 무엇인지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의고사 2번 (5-2) 오류 질문
선생님 안녕하세요. 작업형2 모의고사 2번 관련하여 질문드립니다. train_test_split까지 잘 넘어온 다음에 sklearn.ensemble 작성하려고 다시 코드 실행하니, 자꾸 같은 부분에서 해당 이미지처럼 에러가 나는데요. 선생님이 작성하신 답안 그대로 ctrl c / v 했는데도 같은 에러가 뜨는데, 어떤 것 때문일까요? import pandas as pd test = pd.read_csv("test.csv") train = pd.read_csv("train.csv") print(train.shape,test.shape) #결측값 찾기 # train.isnull().sum() 'name', 'host_name', 'last_review','reviews_per_month' #object값 확인 # train.info() -> object 6개 #2 EDA처리 # train.info() last_review 빼고 전부다 object형임 print(train.shape) train = train.drop(cols, axis=1) test = test.drop(cols, axis = 1) print(train.shape) #reviews_per_month는 결측값 채워주기 train['reviews_per_month'] = train['reviews_per_month'].fillna(0) test['reviews_per_month'] = test['reviews_per_month'].fillna(0) # 결측치 없음 #id제거 train = train.drop('id', axis =1) test_id = test.pop('id') test.head(2) #라벨인코딩 cols = train.select_dtypes(include = 'object').columns from sklearn.preprocessing import LabelEncoder for col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) #train_test_split from sklearn.model_selection import train_test_split X_tr,X_val,y_tr,y_val = train_test_split(train.drop('price',axis=1), train['price'] , test_size = 0.3,random_state = 42) ## 전부 train에서 뽑는거임 # print(X_tr.shape,X_val.shape, y_tr.shape, y_val.shape) from sklearn.ensemble import RandomForestRegressor model = RandomForestRegressor() model.fit(X_tr,y_tr) pred = model.predict(X_val) test.head()그리고 작업형2 회귀문제가 나온다면, 해당 이 부분은 외워야 하는 걸까요..? 필수적이면 닥암기하려고 합니다..# 평가 import numpy as np from sklearn.metrics import r2_score, mean_absolute_error, mean_squared_error def rmse(y_test, y_pred): #RMSE return np.sqrt(mean_squared_error(y_test, y_pred)) def rmsle(y_test, y_pred): #RMSLE return np.sqrt(np.mean(np.power(np.log1p(y_test) - np.log1p(y_pred), 2))) def mape(y_test, y_pred): #MAPE return np.mean(np.abs((y_test - y_pred) / y_test)) * 100
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
코랩 노트북을 못찾겠습니다.
시계열 데이터 강의를 듣고있는데... 그전까지는 코랩 노트북 링크를 화면에 띄워주셔서그거 입력해서 들어가서 제 구글 드라이브로 복사했는데 시계열 데이터 강의부터는 제공되는 코랩 노트북을 찾지 못하겟네요ㅠ ㅠ확인 부탁드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
코랩 실습 중 발생되는 문제 해결 방법 문의
안녕하세요영상을 따라 실습을 하는데, 코드를 치지도 않았는데알아서 자동완성이 됩니다.혹시 이 기능을 끄기 위해선 어떻게 해야할까요...(아무리 서칭해도 안나와서.. 여기에 문의드립니다 ㅜㅅㅜ.. 도와주세요,,,)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2에서 RMSE나 정확도 등 평가 코드는 주석 처리하면 안되나요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요코랩에서 작업형 2의 경우, 주어진 평가방식에 따라 테스트 데이터와 검증데이터를 평가한 후 평가 코드를 주석 처리했었는데,시험 환경에서는 점수에 영향이 있을 것 같아 질문드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5-3 작업형 2 모의. 평가지표 값이 전부 1 나옴
선생님 안녕하세요. 5-3 강의보면서 따라하는데 roc_auc, f1, 정확도 평가지표 값이 전부 1로 나옵니다.... 검증 데이터 분리까지 똑같이 따라 했고요(random_state = 값은 동일하게만 주면 된다고 해서 전 그냥 다 100으로 놓고 했습니다) 일단 작성한건 아래와 같고요# 랜덤포레스트 ROC-AUC, 정확도(Accuracy), F1 from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import f1_score, accuracy_score, roc_auc_score rf = RandomForestClassifier(random_state=100) rf.fit(X_tr,y_tr) pred_rf = rf.predict(X_val) proba_rf = rf.predict_proba(X_val) print(roc_auc_score(y_val,proba_rf[:,1])) # "ROC_AUC:", print(f1_score(y_val,pred_rf)) # "F1:", print(accuracy_score(y_val,pred_rf)) # "Accuracy:",결과 값은 다 1.01.01.0 으로 나오는데... 이거 뭔가 잘못 된거 같은데, 뭘 잘못한걸까요...?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 3회, 작업유형1 의 2번
기출 3회, 작업유형1 의 2번칼럼명이 2000일때 df['2000'] 이라고 하면 에러가 나고 df[2000]이라고 하면 에러가안나던데, 컬럼명은 '' 로 묶어야 하는게 아닌지요?'' 로 묶지않은 2000일때가 답이 되는 이유가 궁금합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
4회 기출 작업형2
왜 어떨때는 이렇게 쓰고rf.fit(x_tr, y_tr) pred_val = rf.predict(x_val)rf.fit(train, target) pred = rf.predict(test)풀이영상에서는 바로 트레인, 타겟이라고 적는지 궁금합니다! 추가로, 아래 코드에서 수치형 변수->스케일링, 범주형 변수 -> 인코딩을 진행하고 싶은데주석처리한 코드 부분을 어떻게 수정하면 될까요?? # your code # 라이브러리 불러오기 import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") # EDA train.shape, test.shape # ((6665, 11), (2154, 10)) train.isnull().sum() test.isnull().sum() # train.info() # test.info() # 전처리(타겟, 결측치, 인코딩, 스케일링) train = train.drop("ID", axis = 1) test_ID = test.pop("ID") target = train.pop("Segmentation") # train.head() # test.head() # c_train = train[["Gender", "Ever_Married", "Graduated", "Profession", "Spending_Score", "Var_1"]] # c_test = test[["Gender", "Ever_Married", "Graduated", "Profession", "Spending_Score", "Var_1"]] # c_train = pd.get_dummies(c_train) # c_test = pd.get_dummies(c_test) train = pd.get_dummies(train) test = pd.get_dummies(test) # n_train = train[["Age", "Work_Experience", "Family_Size"]] # n_test = test[["Age", "Work_Experience", "Family_Size"]] # from sklearn.preprocessing import StandardScaler # scaler = StandardScaler() # n_train = scaler.fit_transform(n_train) # n_test = scaler.fit(n_test) # train = pd.concat([c_train, n_train]) # test = pd.concat([c_test, n_test]) # train.info() # test.info() # 모델링(학습) 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 = 40) from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier() rf.fit(x_tr, y_tr) pred_val = rf.predict(x_val) # 평가 Macro f1-score from sklearn.metrics import f1_score f1 = f1_score(y_val, pred_val, average = "macro") pred_test = rf.predict(test) # 제출(데이터프레임, pdf, index = False) result = pd.DataFrame({ "ID" : test_ID , "Segmentation" : pred_test }) result.to_csv("수험번호.csv", index = False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
LabelEncoder 질문드립니다.
안녕하세요 강사님!LabelEncoder 작업 중 한 번씩 오류를 마주하는 경우가 생깁니다. 아마 강의 중에 말씀해주셨던 train_data 와 test_data 를 합친 후 인코딩 작업을 진행하면 될거라는(?) 얘기와 관련이 있을 것 같은데.. (혹시 제가 잘못 이해하고 있는거면 정정 부탁드립니다 ㅠㅜ) 인코더 돌릴 때 테스트 데이터랑 합친 후 학습한다고 가정했을 때, fit_transform() 과 transform() 중 어떤 걸 사용해야하는지와 두 메소드의 차이점이 궁금합니다. 제가 이해한 내용으로는 train_data 는 fit_transform(),test_data 는 transform() 을 사용해야한다고 이해했는데 합쳐서 작업해야한다고 할 때 뭘 사용해야하고, 어떻게 사용하는게 맞는 방법인지 잘 모르겠습니다 ㅠ 매 번 질문에 답변해주셔서 감사합니다!많이 배워가고 있습니다! ======== 질문 추가 ========혹시 아래와 같은 방식으로 진행되면 될까요...? for col in col_obj: encoder = LabelEncoder() encoder.fit(pd_concat[col]) X_tr[col] = encoder.transform(X_tr[col]) X_val[col] = encoder.transform(X_val[col])
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
y_train 의 값
train_test_split() 함수내에서 y_train 을 나누는 방법에 차이가 있는 이유가 무엇일까요?첫번째 사진은 y_train['Reached.on.Time_Y.N'] 으로 했고 열에 값이 출력되지 않았는데,두번째 사진은 y_train.drop('ID', axis=1) 로 했는데 열값이 1이 나왔습니다. 두 방법 모두 결국에는 y_train에서 'Reached.on.Time_Y.N' 만 남기는 것은 동일한데 왜 열값의 출력이 다른지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
[질문] 모델 학습 후 평가 시 오류
위와 같은 오류가 나오는데 roc_auc는 평가가 되는데 accuracy는 평가 중에 오류가 나옵니다... 혹시 다음과 같은 오류는 문제점이 무엇인지 잘 모르겠습니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5-2 작업형2 모델&평가 부분에서 동일한 값 출력
안녕하세요. 작업형 2 회귀모델 사용하고 평가지표로 모델 평가하는 부분에서 질문이 있어서 문의합니다 넘파이 없이 해보려고 아래처럼 간단하게 만들어봤는데요. from sklearn.metrics import r2_score, mean_absolute_error, mean_squared_error # 릿지 모델 from sklearn.linear_model import Ridge rd = Ridge(random_state=100) rd.fit(X_tr,y_tr) pred_rd = rd.predict(X_val) mse = mean_squared_error(y_val,pred_rd) # rmse 간단 사용을 위해 우선 mse()를 변수 할당 rmse = mse ** 0.5 # 그런 다음 rmse 처리 방식에 맞는 변수 생성 print("r2:",r2_score(y_val,pred_rd)) print("mae:",mean_absolute_error(y_val,pred_rd)) print("mse:",mean_squared_error(y_val,pred_rd)) print("rmse:",rmse) r2: 0.06396849293045404mae: 75.39756630227993mse: 62725.96352602316rmse: 250.4515193126669 # 라쏘 모델 from sklearn.linear_model import Lasso ls = Lasso(random_state=100) rd.fit(X_tr,y_tr) pred_ls = rd.predict(X_val) mse = mean_squared_error(y_val,pred_ls) rmse = mse ** 0.5 print("r2:",r2_score(y_val,pred_ls)) print("mae:",mean_absolute_error(y_val,pred_ls)) print("mse:",mean_squared_error(y_val,pred_ls)) print("rmse:",rmse) r2: 0.06396849293045404mae: 75.39756630227993mse: 62725.96352602316rmse: 250.4515193126669 선형회귀,XGB,랜덤포레스트 등은 결과값이 모델별로 각각 다르게 나왔는데(랜덤포레스트의 결정계수 값이 제일 높아서 실습하면서 저도 랜덤포레스트를 적용했습니다)릿지랑 라쏘 이 2가지 모델은 위에서 처럼 결과값 출력이 완전 동일하게 나와서.....(rmse는 선형회귀를 제외한 나머지 4가지 전부 동일 값이 출력 되었습니다...이건 뭘 잘못한걸까요..?)검증데이터 예측값 계산 변수 다 할당했고, 할당한 예측 변수를 각 평가 모델에 대입했는데... 왜 이런 결과가 나오는지, 뭔가 잘못한 부분이 있으니 값이 같게 나오는거 같은데... 어느 부분이 잘못 되었는지 알려주시면 감사하겠습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 관련 질문 있습니다.
안녕하세요 강의 잘 듣고 있습니다!작업형2 관련 질문 세개 있습니다.Q1) 랜덤포레스트 하이퍼파라미터 조절 max_depth나 n_estimator(아래처럼 ) 분류가 아닌 회귀분석일때도 사용해도 되나요??Q2) 데이터개수가 너무 많으면 원핫인코딩보다 라벨인코더가 낫다고 하셨는데 개수가 많은 기준이 보통 어느 정도인지 궁금합니다! Q3) 검증데이터 분리 시에 test_size는 어느 정도가 적당한지 궁금합니다. 데이터가 적으면 0.1 ~ 0.15 아니면 0.2 정도로 해도 될까요?
-
미해결파이썬 증권 데이터 수집과 분석으로 신호와 소음 찾기
5.1 제약 데이터 수집 오류 해결
안녕하세요, 섹션 10의 [5/6] 강의 실습을 진행하는데 result의 column이 다른 경우가 있어서 후에 concat을 하는 과정에 에러가 발생합니다. 이런 경우 어떻게 해결할 수 있나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
모의고사_작업형1-1 질문
선생님, 강의 내용a = a[:int(len(a)/2)]cond = a['target'] == 0a = a[cond]print(int(a['proline'].mean()))에서a = a[:int(len(a)/2)]a = a['target'] == 0 <-- cond 대신 aa = a[a] <-- cond 대신 aprint(int(a['proline'].mean()))로 실행해보았습니다. 데이터 프레임 값을 새로 갱신해 저장하는데, 'proline'에서 오류가 나는 이유가 궁금합니다. 새로운 조건명(con)을 넣어야만 실행되는지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제2
영상으로 4:53초에 나오는 코드입니다. 선생님이 작성하셨을 때는 되는데 제가 작성해서 칼럼 별 유니크 값을 보려고 하니 오류가 뜨네요. 혹시 파이썬 버전의 문제일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
[기출]공식예시문제 -> 예시문제 작업형3(구버전)/가설검정
[기출]공식예시문제 -> 예시문제 작업형3(구버전)/가설검정 강의는 구버전 이라고 적혀있는데 들어야하는 강의가 맞는지 궁금합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모델링 여러개 돌려보고 평가지표 제일 높은걸로 최종제출해야하나요??
안녕하세요, 작업형2 문제를 풀 때 여러 모델로 돌려보고평가지표 제일 높은걸로 최종제출해야 하나요??혹시, 모델 한가지로만 돌려보고 제출하게되면 감점요인이 있는지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
카이제곱 독립성(동질성 검정) 코드에서요~
처음에 노션 이론 부분에서 stats.chi2_contingency(table, 이 담에 correction=True) 로 되어있었는데 코랩 실습에서 "correction=True"를 안 쓰셔서요. 안 써도 되는 건가요???
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
6회 기출 유형(작업형1) 문제 질문
좋은 강의 감사드립니다. 기출 문제를 풀던 중 의문사항이 몇 가지 생겨 질문드립니다.<첫 번째 질문>2번 문제의 '전체 교사 수'를 구하라고 되어있는데, 선생님의 풀이를 보면 교사1인당 수가 출력되어 있습니다. 전체 교사 수를 출력해야하니 교사수 열의 값이 답으로 도출되어야 하지 않습니까? 문제의 오타인지, 제가 오해하고 있는 것인지 알려주시면 감사하겠습니다. <두 번째 질문> 총 범죄 건수의 월평균 값을 출력하라고 되어 있는데, 선생님의 풀이를 보면 월합계가 출력되어 있습니다. 해당 연도의 총 범죄 건수의 월평균 값을 구하려면 월합계 / 6이 되어야 하는 것이 아닌가 싶어 질문드립니다. 감사합니다.