묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[핵집] 2024 빅데이터 분석기사(필기)_과목 1~2
통합강의안 요청 건
안녕하세요통합강의안 있으시면 아래 메일로 송부 부탁드립니다.infogm49@gmail.com
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
인코딩 전후 데이터 크기 관련
작업형2 예시문제는X_train과 X_test의 '주구매상품' 컬럼의 카테고리 개수와 종류가 다른 경우였습니다(차집합 소형가전)인코딩 전에 두 데이터를 concat -> 인코딩 후 -> 다시 두 개로 분리하는 것은 원핫 인코딩에만 해당되는 것일까요?왜냐면 라벨 인코딩은 제가 concat 과정을 생략하고 모델 선택 및 예측까지 진행했을 때 딱히 에러가 발생하거나 성능에 문제가 있어보이진 않았습니다. 선생님도 강의에서 라벨 인코딩을 진행하면서 concat 과정을 거치지 않은 걸로 보이고요object형의 카테고리 개수가 다르더라도 라벨 인코딩을 선택한다면 별도의 처리를 거치지 않아도 되는 것인지가 궁금합니다늘 감사드립니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회 기출유형 작업형 2 roc auc score 에러 질문드립니다.
시험환경에서는 제공되지 않겟지만, 궁금해서 돌려보면 아래 에러가 발생합니다. 아래 에러는 어떤 에러인지 궁금합니다. --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-63-01bc5037f802> in <cell line: 2>() 1 from sklearn.metrics import roc_auc_score ----> 2 roc_auc_score(y_val, pred) 5 frames/usr/local/lib/python3.10/dist-packages/sklearn/utils/validation.py in check_consistent_length(*arrays) 395 uniques = np.unique(lengths) 396 if len(uniques) > 1: --> 397 raise ValueError( 398 "Found input variables with inconsistent numbers of samples: %r" 399 % [int(l) for l in lengths] ValueError: Found input variables with inconsistent numbers of samples: [298, 497]
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제2 질문
히스토그램이랑 describe로 확인한 price 값 중에 굉장히 멀리떨어져있는 값이 나왔는데, 이건 이상치로 해석하는게 아닌가요?'그리고 강의에서 r 2값이 0.077이 나왔는데. 이게 평가 지표에서 좋게 받을 수 있는건가요?R에서는 상관관계랑 *** 로 변수를 선택하는게 있었던거 같은데, 파이썬에서는 그냥 진행해야하는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
모의고사2-test인덱스 정렬 질문드립니다~
안녕하세요! 모의고사풀어보기 2에서 시험 환경에 선생님이 올려주신 코드를 그대로 복사해서 print(test)를 해보면 아래와 같이 인덱스가 오름차순으로 정렬되지 않아 마지막 값에 'index':test.index를 했을 때도 선생님 화면과 다르게 나오던데, 혹시 데이터가 바뀐 걸까요..? 늘 친절히 알려주셔서 감사합니다!!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
not defined 에러메시지 관련
안녕하세요. 5회기출에서 스케일링하다가 에러메시지가 나왔는데 무슨 문제인지 알려주시면 감사하겠습니다import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") # 3. 수치형 이상치 스케일링 # print(train.head()) train.select_dtypes(exclude='object') # 수치형 컬럼 확인 cols = ['mileage', 'tax','mpg', 'engineSize'] from sklearn.preprocessing import MinMaxScaler Scaler = MinMaxScaler() train[cols] = scaler.fit_transform(train[cols]) test[cols] = scaler.transform(test[cols]) # print(train.head()) --------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-53-9214327183aa> in <cell line: 11>() 9 from sklearn.preprocessing import MinMaxScaler 10 Scaler = MinMaxScaler() ---> 11 train[cols] = scaler.fit_transform(train[cols]) 12 test[cols] = scaler.transform(test[cols]) 13 NameError: name 'scaler' is not defined
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
독립성 검정
안녕하세요?독립성 검정강의에서문제를 꼬아서 낸다고 하면 데이터를 정제된 데이터로 바꾸는 데이터 프레임으로 만드는거 혹시 어떻게 하면 좋을지 잘 모르겠어요 ㅠㅠdf.groupby('근무지')['근무기간'].sum() 해서 합계는 다 구하겠는데, 데이터 프레임으로 만드는건 피봇 기능을 써야할것 같은데...
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
결측치 처리
중앙값을 사용하여 결측치를 채울 때, 훈련 데이터와 테스트 데이터에서 동일한 중앙값을 사용(훈련데이터의 중앙값을 테스트 데이터에 사용)하면 되나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2회 기출유형 작업형 2 id 값 오류 질문 드립니다.
# 랜덤포레스트 from sklearn.ensemble import RandomForestClassifier rf=RandomForestClassifier(random_state=2023) rf.fit(X_tr,y_tr) pred=rf.predict_proba(X_val) pred=rf.predict_proba(X_test) pd.DataFrame({'ID':X_test['ID'],'Reached.on.Time_Y.N':pred[:,1]}).to_csv('dddd.csv',Index=False)위 코드로 실행 시 , 아래 ID값에 대한 오류가 나와 오류 해석 및 해결방법 문의드립니다,, KeyError Traceback (most recent call last) /usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance) 3801 try: -> 3802 return self._engine.get_loc(casted_key) 3803 except KeyError as err: 4 framespandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item() pandas/_libs/hashtable_class_helper.pxi in pandas._libs.hashtable.PyObjectHashTable.get_item() KeyError: 'ID' The above exception was the direct cause of the following exception: KeyError Traceback (most recent call last) /usr/local/lib/python3.10/dist-packages/pandas/core/indexes/base.py in get_loc(self, key, method, tolerance) 3802 return self._engine.get_loc(casted_key) 3803 except KeyError as err: -> 3804 raise KeyError(key) from err 3805 except TypeError: 3806 # If we have a listlike key, _check_indexing_error will raise KeyError: 'ID'
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제1 출력오류
안녕하세요.강사님 작업형2 모의문제1의 피드백을 통해 문제를 해결할 수 있었습니다. 하지만 출력했을 때, 값이 정상적으로 나오긴하나 오류메시지도 함께 떠서 실제 시험에서 괜찮은지 여쭤봅니다..아래는 코드 및 출력화면입니다.감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5회 기출유형 (작업형2)
안녕하세요! 강의 복습중 질문 드립니다.1) 평가방법이 RMSE 라는건 출제자가 제가 작성한 코드를 채점할때 RMSE 를 사용하여 채점한다는건가요? 아니면 수험자가 코드작성시 RMSE를 사용하여 평가한 결과물을 제출해야하는건가요? ㅠㅠ (즉, 평가방법이 작성한 코드안에 꼭 포함이 되어야하는지 궁금합니다..!)2) 제기준 최대한 간단하게 코드를 작성해보았는데.. 답변에 쓰여있는 결과물과 예측값의 수치가 선생님이 작성하신 코드의 답변과는 살짝씩 다릅니다 ㅠㅠ 각자 작성한 코드의 설정에 따라서 예측값이 조금씩 상이한걸까요? 아니면 제 코드에서 틀린부분이 있을까요?제가 작성한 코드는 아래와 같습니다# 데이터 불러오기 import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") #데이터확인하기 #train(3759,9), #test(1617,8) #인코딩 from sklearn.preprocessing import LabelEncoder cols = train.select_dtypes(include = 'object').columns for col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) #데이터분리 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.2,random_state=2022) #모델링 from sklearn.ensemble import RandomForestRegressor model = RandomForestRegressor(random_state=2022) model.fit(x_tr,y_tr) pred = model.predict(x_val) #평가 #예측 pred = model.predict(test) #저장 pd.DataFrame({'price':pred}).to_csv('result.csv',index=False) pd.read_csv('result.csv') 결과물 : price 0 15523.21 1 16663.56 2 14343.95 3 18657.40 4 6353.98 ... ... 1612 11539.81 1613 17506.87 1614 9601.09 1615 14062.15 1616 4549.09 1617 rows × 1 columns 답변에 있는 결과물 : pred 0 15434.26 1 15676.44 2 14335.40 3 18634.28 4 6329.75 ... ... 1612 11524.45 1613 17570.62 1614 9965.65 1615 14391.21 1616 5023.73
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
모의고사 풀어보기2 csv파일 내보내기 중
안녕하세요. 강의 잘 듣고 있습니다. csv 파일 내보낼 때(강의)pd.DataFrame({ 'index': test.index, 'target':pred }).to_csv("____.csv", index=Faslse)< 나> reset_index()쓰고 해도 되는지 궁금합니다.# 내보내기 submit = pd.DataFrame({ 'target': pred }).reset_index().to_csv("result.csv", index = False)<나 결과>--"Unnamed:0" ?submit = pd.DataFrame({ 'target': pred }).to_csv("result.csv")reset_index()도 안 쓰고 csv 파일 내보내기 할때.. .false도 안 쓰니 "Unnamed:0"이라는 칼럼이 생겼습니다. 얘는... result.csv에서 자동으로 만들어낸 인덱스? 인가요? submit에 넣어준 칼럼도 아닌데 왜 생기는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 신용카드 데이터 문제 문의
# 출력을 원하실 경우 print() 함수 활용 # 예시) print(df.head()) # getcwd(), chdir() 등 작업 폴더 설정 불필요 # 파일 경로 상 내부 드라이브 경로(C: 등) 접근 불가 # 데이터 파일 읽기 예제 import pandas as pd X_test = pd.read_csv("data/X_test.csv") X_train = pd.read_csv("data/X_train.csv") y_train = pd.read_csv("data/y_train.csv") # 사용자 코딩 # 답안 제출 참고 # 아래 코드 예측변수와 수험번호를 개인별로 변경하여 활용 # pd.DataFrame({'cust_id': X_test.cust_id, 'gender': pred}).to_csv('003000000.csv', index=False) # print(X_test.shape, X_train.shape, y_train.shape) # print(X_test.isnull().sum()) # print(X_test['환불금액'].describe()) # print(X_train.isnull().sum()) # print(y_train.isnull().sum()) # print(X_test.shape, X_train.shape, y_train.shape) # print(X_train.isnull().sum()) X_test['환불금액'] = X_test['환불금액'].fillna(0) X_train['환불금액'] = X_train['환불금액'].fillna(0) # print(X_train.isnull().sum()) # print(X_test.shape, X_train.shape) # print(X_test.describe(include ='object')) # print(X_train.describe(include ='object')) # print(X_test.shape, X_train.shape) # con_data = X_train.concat(X_test.) print(X_test.shape, X_train.shape) cust_ID= X_test.pop('cust_id') X_train = X_train.drop('cust_id',axis =1) y_cust_ID = y_train.pop('cust_id') print(X_test.shape, X_train.shape) print(y_train.head()) X_com = pd.concat([X_test, X_train],axis=0) X_com = pd.get_dummies(X_com) print(X_com.shape) X_test = X_com.iloc[0:2482,:] X_train = X_com.iloc[2482:5982,:] print(X_test.shape, X_train.shape,y_train.shape) from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val =train_test_split(X_train,y_train,test_size =0.1,random_state =0) print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) import lightgbm as lgm model = lgm.LGBMClassifier() model.fit(X_tr, y_tr) pred = model.predict_proba(X_val) 마지막에서 오류가 발생했습니다.DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel().return f(*args, **kwargs) # from sklearn.ensemble import RandomForestClassifier# rf = RandomForestClassifier()# rf.fit(X_tr, y_tr)# pred = rf.predict_proba(X_val)랜덤 포레스트로 돌려도 같은 오류가 발생합니다어떤걸 잘못한건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제2 질문있습니다.
자료형 타입이 object 컬럼 삭제 시강의내용처럼 따로 col에 데이터 선택하지 않고df=df.drop(df[['id','city','f3','f4','subscribed']], axis=1) 위처럼 코딩해도 되는가요?
-
미해결[EduAtoZ] 빅데이터분석기사 실기 (with Python)
강의 자료 문의
섹션 5. Step4. 통계적 검정의 정규성 검정 실습 강의에서 사용하는 'Bigdata_S5_모수검정' 코랩 파일은 어디서 찾을 수 있나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2모의문제1 / 평가 (predict/predict_proba)질문
안녕하세요. 작업형2 모의문제1에서 평가 시roc_auc_score를 쓸 때는 predict_proba와,roc_auc_score(y_val, pred[:,1])형태를, 나머지 평가 방법을 쓸 때는 predict와(y_val, pred)형태를 쓰시던데요!! 문제에서 신용카드 이탈 확률을 찾는거라 predict_proba라고 생각했는데,그냥 predict를 쓰는 것은 평가 방법 때문인가요? (일단 roc제외한 평가에는 predict를 쓰고 마지막 제출 시 proba로 다시 예측하는건지?) 수치형 컬럼 전처리에서col=['age', 'bmi', 'children'] <-수치형 컬럼나열from sklearn.preprocessing StandardScalerscaler=StandardScalertrain[col]=scaler.fit_transform(train[col])test[col]=scaler.transform(test[col])형태로 전처리를 하면keyError: "None of [Index(['age', 'bmi', 'children'], dtype='object')] are in the [index]"이런 에러가 자꾸 발생하는데 어디가 잘못된건지 궁금합니다!!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 결측치 대체
선생님 안녕하세요!작업형 2 유형 예시문제 관련해 질문이 있습니다.▲ '환불금액' 결측치 대체 전▲ '환불금액' 결측치 대체 후'환불금액' 결측치가 기존에는 float형이었는데 중앙값으로 대체하니 object형으로 바뀌었는데, 이렇게 하는게 맞는지 궁금합니다.그리고 다음과정인 범주형 → 수치형으로 바꿀때 '환불금액'도 바꿔야하나요?매번 양질의 강의 제공해주셔서 감사합니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2) 캐글 t2-4 houseprices예측 문제 질문드립니다
안녕하세요! 캐글 질문을 올려도되는지 모르겠으나,,ㅠㅠ 질문할 곳이 없어 한 가지만 여쭤보려고 합니다 https://www.kaggle.com/code/agileteam/t2-4-house-prices-regression/notebook이 문제에서 마지막에 csv파일 만드실 때id값을 y_test.Id로 넣으시던데요! 수험자에게 y_test데이터가 주어지는 건가요..?그동안은 x_test데이터에서 id등을 불러와서 썼는데, 이 문제처럼 x_test데이터에 그 값이 없으면 y_test에서 불러오면 되는걸까요..? 강의와 무관한 질문 죄송합니다ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회 기출유형(작업형2) 코드 (lightgbm 관련)
import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") pd.set_option('display.max_columns', None) # print(train.head()) # print(test.head()) # print(train.info()) # print(test.info()) from sklearn.preprocessing import LabelEncoder cols = train.select_dtypes(include='object') le = LabelEncoder() for col in cols : train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) # print(train.head()) # print(train.info()) train = train.drop('Unnamed: 0',axis=1) test = test.drop('Unnamed: 0', axis=1) from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train.drop(['TravelInsurance'],axis=1),train['TravelInsurance'],test_size=0.2,random_state=0) # print(help(train_test_split)) from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier() rf.fit(X_tr, y_tr) pred = rf.predict_proba(X_val) # print(pred) import lightgbm as lgb model = lgb.LGBMClassifier() model.fit(X_tr, y_tr) lgb_pred = model.predict_proba(X_val) from sklearn.metrics import roc_auc_score # print(roc_auc_score(y_val, pred[:, 1])) # print(roc_auc_score(y_val, lgb_pred[:, 1])) res = model.predict_proba(test) submit = pd.DataFrame({'index': test.index, 'y_pred': res[:, 1]}) submit.to_csv('950326.csv', index=False) print(pd.read_csv('950326.csv'))lightgbm을 randomforest와 비교해서 두 가지 정도만 준비해가려고 작업형 2를 다시 풀고있습니다.LightGBM을 쓰려고 하니 아래와 같은 오류가 발생했습니다.'LightGBMError: Do not support special JSON characters in feature name.' 이게 혹시나 다운로드 파일의'Unnamed: 0' 컬럼 때문인가 해서 drop해보고 코드를 작성하니 정상적으로 돌아가더군요.train = train.drop('Unnamed: 0',axis=1) test = test.drop('Unnamed: 0', axis=1) LightGBM은 컬럼에 특수문자가 있으면 안 되는 게 맞는지 확인 한 번만 부탁드립니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제1 오류 문의
안녕하세요. 작업형2 모의문제1를 스스로 코딩하는 과정에서 발생한 오류를 해결하지 못하겠습니다..다음은 제가 작성한 코드파일입니다.정확도, 정밀도, 재현율, F1 출력 시 오류가 발생한 것을 볼 수 있으며, 문제점을 파악하기 어렵습니다...피드백 부탁드립니다..감사합니다.