172만명의 커뮤니티!! 함께 토론해봐요.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요. Chat gpt에서 lightGBM 전에는 아래와 같이 코딩을 해주면 된다고 하는데, 책이나 강의에서는 랜덤포레스트와 동일하게 원핫 인코딩이나 라벨인코더를 사용하고 있습니다. 어떻게 하는게 맞는건가요? train = train.astype('category') test = test.astype('category')
python 머신러닝 빅데이터 pandas 빅데이터분석기사
Studry
2025-06-19T13:42:10.858Z
댓글 2
좋아요 0
조회수 92
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2.0은 확실히 더 좋아진 것 같습니다. 유형 1, 2는 세로로 길이가 너무 길어서 보기 힘든데 2페이지로 나눈 버전도 만들어주실 수 있나요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
전상혁
2025-06-19T13:35:46.009Z
댓글 1
좋아요 0
조회수 44
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 유형 2 질문... 전처리 전에 print(train['total'].describe()) 지수표기법 ->일반 형태로 꼭 바꿔야 하나요??
python 머신러닝 빅데이터 pandas 빅데이터분석기사
2025-06-19T13:35:30.693Z
댓글 2
좋아요 0
조회수 56
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
실제 실기시험 환경에서, 답안제출화면에도 체험환경처럼 메모장이 없나요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
이정균
2025-06-19T13:13:00.373Z
댓글 2
좋아요 0
조회수 78
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 결론부터 말씀드리면, scikit-learn 버전 1.4 이상부터는 root_mean_squared_error 함수를 직접 import 해서 사용할 수 있습니다. 과거에는 RMSE를 계산하기 위해 mean_squared_error 를 불러와 제곱근을 취해야 했지만, 최신 버전에서는 더 직관적으로 사용할 수 있게 함수가 추가되었습니다. 사용 방법 (scikit-learn 1.4 이상) 아래와 같이 바로 import 하여 사용하시면 됩니다. 라는데.. 시험칠 때 바로 적용 가능한가요? 아니면 강의내용처럼 mse에 함수 만들어야 하나요? 유형 2 질문입니다. ㅜㅠㅠ
python 머신러닝 빅데이터 pandas 빅데이터분석기사
2025-06-19T13:09:14.458Z
댓글 2
좋아요 0
조회수 138
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
train = train.drop('customerID', axis=1) test = test.drop('customerID', axis=1) target = train.pop('TotalCharges') train = pd.get_dummies(train) test = pd.get_dummies(test) 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=0) print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) from sklearn.ensemble import RandomForestRegressor rf = RandomForestRegressor(random_state=0) rf.fit(X_tr, y_tr) pred = rf.predict(X_val) # print(pred) from sklearn.metrics import mean_squared_error mse = mean_squared_error(y_val, pred) print(mse) pred = rf.predict(test) result = pd.DataFrame({'pred':pred}) result.to_csv('result.csv', index=False) print(pd.read_csv('result.csv')) print(pd.read_csv('result.csv').head()) print(pd.read_csv('result.csv').shape) 원핫인코딩, 랜덤포레스트로 진행했는데 mse 값이 1561363.7676789626 크게 나오는데 이렇게 진행해도 괜찮을까요? 제출파일의 pred값을 확인해보면 선생님이 하셨던 라벨인코딩, lgbm pred 예측값과는 차이가 별로 나지는 않습니다
python 머신러닝 빅데이터 pandas 빅데이터분석기사
김범준
2025-06-19T12:59:53.501Z
댓글 2
좋아요 0
조회수 51
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
name, ID 등 드랍해도 되는가? 풀이해주신 강의를 쭉 보면 어떤 항목은 드랍했고, 예를들어 랜포로 한번에 푸는 강의에서는 드랍은 없었는데, 당장 내일 시험이라면 드랍없이 가도 괜찮을까요? 드랍안했다고해서 0점맞지는 않겠죠?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
wlysh999
2025-06-19T12:59:13.636Z
댓글 2
좋아요 0
조회수 75
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
카테고리가 달라서 concat 하는게 번거로우면 아래 해설로 진행하면 해결되는건가요? train, test = train.align(test, join='left', axis=1, fill_value=0) 원핫인코딩 : train = pd.get_dummies(train) test = pd.get_dummies(test)
python 머신러닝 빅데이터 pandas 빅데이터분석기사
wlysh999
2025-06-19T12:56:13.931Z
댓글 2
좋아요 0
조회수 60
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
import pandas as pd train = pd.read _csv("data/customer_train.csv") test = pd.read _csv("data/customer_test.csv") # print(train.shape, test.shape) #결측치 채우기 train['환불금액']=train['환불금액'].fillna(train['환불금액'].median()) test['환불금액']=test['환불금액'].fillna(test['환불금액'].median()) # print(train.isnull().sum()) #범주형컬럼 카테고리 수 확인하기 cols= train.select _dtypes(include="O").columns print(cols) for col in cols: same=set(train[col].unique())==set(test[col].unique()) print(col,same) train=train.drop('회원ID',axis=1) test=test.drop('회원ID',axis=1) target=train.pop("총구매액") mid=len(train) #데이터 합치고 인코딩 후 다시 분할하기 df=pd.concat([train,test],axis=0) print(df) #라벨인코딩하기 from sklearn.preprocessing import LabelEncoder le=LabelEncoder() for col in cols: df[col]= le.fit _transform(df[col]) # print(df.head(8)) #다시 나누기 train=df.iloc[:mid].copy() test=df.iloc[mid:].copy() print(train.shape, test.shape) #민맥스스케일링(추후) #train데이터 분할하기 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=100) # #모델구축(1) #707.539 # from sklearn.ensemble import RandomForestRegressor # model=RandomForestRegressor(random_state=100) # model.fit (X_tr, y_tr) # pred=model.predict(X_val) #모델구축(2) 705.1955 import lightgbm as lgb model=lgb.LGBMRegressor(random_state=0, verbose=-1) model.fit (X_tr, y_tr) pred=model.predict(X_val) #성능평가RMSE from sklearn.metrics import root_mean_squared_error print(root_mean_squared_error(y_val, pred)) 성능평가한 값이 선생님 결과랑 터무니없이 차이가 많이 나네요 ㅠㅠ어디가 잘못된걸까요
python 머신러닝 빅데이터 pandas 빅데이터분석기사
이선희
2025-06-19T12:35:19.367Z
댓글 3
좋아요 0
조회수 77
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 하이퍼 파라미터 튜닝을 하는데 그리드서치를 써서 해도 되나요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
이태성
2025-06-19T12:27:20.979Z
댓글 2
좋아요 0
조회수 51
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
물론 범주형 카테고리가 다른것도 확인은 했지만 그래도 concat하고 분할해도 무방한가요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
이선희
2025-06-19T12:13:57.630Z
댓글 2
좋아요 0
조회수 70
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요 평가지표 중 roc_auc_score 학습 중에 궁금한 사항이 있어서 질문드립니다. 강의나 시나공, 기출 다 이진분류 0, 1 중 1을 양성으로 예측하는 문제가 있어서 반대로 0일 확률을 예측하고 평가하는 경우 어떻게 처리해야하는지 궁금해서요..!! rf = RandomForestClassifier(random_state = 0) rf.fit(X_tr, y_tr) 그리고 rf.classes_ 로 확인해보면 [0, 1] 일 때, y_pred_rf = rf.predict_proba(X_val) 그리고 roc_auc_score에서 roc_auc_score(y_val, y_pred_rf[:, 0]) 이렇게 첫 번째 클래스(0일 확률)를 입력하면 자동으로 0을 양성으로 계산해서 모형평가가 이루어지는 건가요? 아니면 pos_label = 0 이라고 지정을 하거나, 별도의 방법이 필요한가요?! 그리고 분류 클래스가 문자형(A, B)인 경우에는(rf.classes_도 [A, B]) roc_auc_score(y_val, y_pred[: , 1]) 이렇게 하면 자동으로 B를 양성으로 인식하는 게 맞는지 궁금합니다 !! (이경우에도 A 확률을 평가하려면 y_pred[:, 0]으로 하고 pos_label = 'A'라고 해야하는지도 ㅠㅜ) 감사합니다 :)
python 머신러닝 빅데이터 pandas 빅데이터분석기사
coeffect
2025-06-19T12:11:28.365Z
댓글 2
좋아요 0
조회수 71
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 피벗테이블은 필수로 알아놔야할까요? 뭔가 더헷갈려서요... 언스택만 알아도 충분할지 문의드립니다.
python 머신러닝 빅데이터 pandas 빅데이터분석기사
찌찌찌누
2025-06-19T11:26:08.862Z
댓글 2
좋아요 0
조회수 158
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 문제 아래쪽에 있는 코드를 모두 복사하라는데 그게 어딨나요..?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
김나현
2025-06-19T11:20:09.320Z
댓글 2
좋아요 0
조회수 53
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 9회 작업2유형 풀이 코드입니다. # print(train.shape,test.shape) # (4000, 9) (1000, 8) # print(train.info(), test.info()) # float64(3), int64(2), object(4), float64(3), int64(1), object(4) # print(train.nunique(), test.nunique()) # 농업면적 4000, 비료사용량 3997, 비료잔여량 4000 # print(train.head(30)) # train = train.drop(columns = '농업면적') # test = test.drop(columns = '농업면적') # train = train.drop(columns = '비료사용량') # test = test.drop(columns = '비료사용량') # train = train.drop(columns = '비료잔여량') # test = test.drop(columns = '비료잔여량') # target = train.pop('농약검출여부') from sklearn.preprocessing import LabelEncoder le = LabelEncoder() cols = train.select_dtypes(include = 'O').columns for col in cols: 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, target, test_size =0.2, random_state = 0) from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state = 0, max_depth = 11, n_estimators = 200, class_weight = 'balanced') rf.fit(X_tr, y_tr) pred = rf.predict(X_val) from sklearn.metrics import f1_score, accuracy_score, recall_score print('f1 : ', round(f1_score(y_val, pred, average = 'macro'), 3)) print('acc : ', round(accuracy_score(y_val, pred), 3)) print('recall : ', round(recall_score(y_val, pred, average = 'macro'), 3)) 처음 학습을 진행할 때 랜덤포레스트에 class_weight 하이퍼파라미터는 적용하지 않은 상태에서 학습을 진행했고, f1 : 0.887 acc : 0.97 recall : 0.848 이라는 높은 수치가 나왔습니다. GPT 확인해보니 accuracy_score 점수가 f1_score 점수보다 높으면 과적합 문제가 있을 수도 있다고해서 확인을 해보니 과적합 문제는 아닌 것 같았습니다. 이후에 train['농약검출여부'].value_counts()를 해보니 클래스 불균형으로 판단을 했습니다. (농약검출여부 = (2 : 1989, 0 : 1758, 1 : 253)) 확인 후에 class_weight 하이퍼 파라미터를 추가했는데도 수치가 크게 달라지지 않더라구요. f1 : 0.856 acc : 0.945 recall : 0.887 이런 경우에는 그냥 제출하는게 맞을까요 ? 지난 9회차 시험에 평가지표 수치가 높게 나오긴 했는데 만점은 받았거든요.. 그래도 수치가 높으면 좀 불안하네요..
python 머신러닝 빅데이터 pandas 빅데이터분석기사
rokkk
2025-06-19T10:40:44.353Z
댓글 2
좋아요 0
조회수 44
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
질문 여기다 드리면 되나요 샘 코드 한번만 봐주세요 오늘 강의 들어왔어요 ㅠㅠ 진작했어야했는데요 에러는 안났느데 답 수치가 달라서요 import pandas as pd train= pd.read _csv("train.csv") test= pd.read _csv("test.csv") # print( train.info ()) # print( test.info ()) from sklearn.preprocessing import LabelEncoder le= LabelEncoder() cols= ("model", "transmission", "fuelType") for col in cols: le.fit (train[col]) train[col]= le.transform(train[col]) test[col]= le.transform(test[col]) from sklearn.model_selection import train_test_split X=train.drop(columns=["fuelType", "price"]) y=train["price"] X_train, X_test, y_train, y_test=train_test_split(X, y, test_size=0.2, random_state=20) print(train.shape) print(test.shape) from sklearn.ensemble import RandomForestRegressor rfr=RandomForestRegressor(n_estimators=400, max_depth=30, random_state=20) rfr.fit (X_train, y_train) pred1=rfr.predict(X_test) print(pred1) from sklearn.metrics import root_mean_squared_error rmse= root_mean_squared_error(y_test, pred1) print("rmse:", rmse) test_X=test.drop(columns=["fuelType"]) pred2=rfr.predict(test_X) pd.DataFrame({"pred":pred2}).to_csv("result.csv", index=False) print( pd.read _csv("result.csv"))
python 머신러닝 빅데이터 pandas 빅데이터분석기사
yeoun123
2025-06-19T10:15:39.982Z
댓글 2
좋아요 0
조회수 48
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
target = train.pop('Heat_Load') cols = ['Roof','Height','Orient', 'Heat_Load'] from sklearn.preprocessing import LabelEncoder for col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) 영상처럼 원핫인코딩을 진행하면 오류가 없는데 라벨인코딩 진행시 오류가 납니다 ㅠㅠ KeyError: 'Heat_Load' 이렇게 뜨는데 어떻게 해결해야 하나요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
김근영
2025-06-19T10:11:00.835Z
댓글 2
좋아요 0
조회수 59
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 작업형1의 기출을 풀고 있습니다. 저는 주로 '~~기준 ~~번째로 큰 데이터의 ~~을 구하시오'라는 문제를 풀 때 그 값을 기준으로 sort_values를 하고 그에 따라 맞는 행과 컬럼을 iloc로 답을 구하고 있습니다. 강사님과 답은 똑같은데 제 방식대로 계속 하면 될까요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
이태성
2025-06-19T09:10:58.125Z
댓글 1
좋아요 0
조회수 38
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
제2유형 전처리 작업할 때, 결측치 - 중앙값 또는 0 처리 / 환불금액의 경우 상식적으로 환불을 안하는 사람이 있으니 0 처리가 맞을듯 범주형(문자열) - drop 진행 안하고 그대로 원핫인코딩만 진행하려고합니다. 상관 없을까요?
python 머신러닝 빅데이터 pandas 빅데이터분석기사
wlysh999
2025-06-19T09:05:58.415Z
댓글 2
좋아요 0
조회수 75
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
소비량이 5번째로 많은 국가를 하는데, 3번째로 많은 국가가 2곳입니다. 그러면 3번째를 공동 3위로 처리해서 1,2,3,3,5 이렇게 보는 걸까요?? 문제의 말로만 따지면 5번째로 많은 국가니까 313 다음 국가를 써야하나 싶어서 질문드립니다.
python 머신러닝 빅데이터 pandas 빅데이터분석기사
임지오
2025-06-19T08:48:50.209Z
댓글 2
좋아요 0
조회수 47