묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
랜덤포레스트 관련 에러
# 검증 데이터 분리 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.2, random_state=0 ) X_tr.shape,X_val.shape,y_tr.shape,y_val.shape # 라이브러리 불러오기 from sklearn.ensemble import RandomForestClassifier # 랜덤포레스트 model = RandomForestClassifier(random_state=2022).fit(X_tr, y_tr) pred = model.predict_proba(X_val) 이렇게 코딩는데 아래 에러가 났거든요해결 못하겠느데 도움 부탁 드리겠습니다 ㅠㅠ --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-60-4020959764> in <cell line: 0>() 3 4 # 랜덤포레스트 ----> 5 model = RandomForestClassifier(random_state=2022).fit(X_tr, y_tr) 6 7 pred = model.predict_proba(X_val) 6 frames/usr/local/lib/python3.11/dist-packages/pandas/core/generic.py in __array__(self, dtype, copy) 2151 ) -> np.ndarray: 2152 values = self._values -> 2153 arr = np.asarray(values, dtype=dtype) 2154 if ( 2155 astype_is_view(values.dtype, arr.dtype) ValueError: could not convert string to float: 'B'
-
미해결모두를 위한 파이썬 : 필수 문법 배우기 Feat. 오픈소스 패키지 배포 (Inflearn Original)
_ _ 관련 질문
해당 강의와 파이썬 클린 코드 책을 병행해서 공부하는 중입니다. 파이썬 클린 코드 책에 따르면, 클래스 내 변수를 접근하지 못하게 할 때, _ 를 써서 접근을 하지 말라는 의도를 담으라 되어있습니다. 그리고 _ _의 경우에는 클래스의 상속 과정에서 네이밍이 겹치는 걸 방지하기 위해 만들어져있다고 되어있구요. 여기서 중요한 건, _ _ 의 경우 이름 변경을 통해 접근을 의도적으로 막는 것으로 설계되지 않았다는 점입니다. 애초에 영상에서도 보여주셨듯 클래스를 사용하는 입장에서 굳이 _ 를 써서까지 private variable에 접근할 이유가 없고, 만약 그럴 의도가 있다면 _ _로 숨겼다 해도 접근 자체는 가능하니까요. 따라서 이 부분이 pythonic 하지 않다... 라고 책에서 나와있네요. 사소한 차이일 수 있겠으나 파이썬에서 기능 개발의 의도를 오해할 수도 있을 것 같아 글 남깁니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
pvalue값 형태?가 다르게 나와요
강의에서는 코드 실행하면 pvalue 값만 나오지만 제가 코랩에서 실행하면 pvalue=np.float64()형태로 나오는데 시험 상황에서 상관 없을까요?? 실기 시험 장소에서는 버전이 낮아서 상관 없으려나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2회 기출유형(작업형1) 3번 문항 질문있습니다.
강의와 다르게 cond1 , cond2 변수 순서를 바꿔서 출력했더니 값이 다르게 나오는데 이게 어떤 부분에서 문제가 있는걸까요? (또는) 함수에서 낮은 값부터 쓰지 않아서 그런건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
강의나 교재에서는 넘파이 거의 다루지 않았지만
체험 3유형이 바뀐걸 보니 넘파이의 기본 기능을 좀 익히고 응시하면 대비가 되지 않을까 싶은데요 넘파이에 대한 기본 설명강의 간략하게 가능하실까요아님 자료라도 ㅠㅠ(시나공 교재도 구입했는데 여기에서도 넘파이 예제는 안보여서요)
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 질문
강사님!작업형 2에서 결측치를 어느 값으로 채우면 좋을지 1에 가까운 것을 선택해서 사용하면 된다고 하셨는데 그걸 판단하는 코드는 어떻게 작성하는지 알 수 있을끼요?
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
일원분산분석 내용 중 anova 테이블과 melt
안녕하세요.유사한 질문을 찾아보았으나 의문이 해결되지 않아 질문드립니다.anova 테이블을 만들기 전 적합한 데이터 형태를 만들기 위해 melt 함수를 사용하시더라구요.anova 테이블을 만들 때 필요한 특정한 데이터 형태가 있는건가요? 왜 melt함수를 적용해 주어야 하는지 아직 이해하지 못해서 질문드려요.답변 기다리겠습니다. 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
체험환경 삽입모드
안녕하세요! 실기 체험환경에서 코드를 작성하는데 이전에 썼던 코드를 수정하려고 하니 삽입되지않고 덮어써져서 코드 수정하는데 어려움을 겪고있습니다! 혹시 덮어쓰기모드에서 삽입모드로 변경하려면 어떻게 해야되나요? 항상 감사합니다!
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
SAVE Request 창 띄우는 법
이러한 창의 띄우는 법을 알려주세요. (+NEW 둘어간 후 Request 선택하는 방법은 업데이트로 안됨. HTTP 선택 하라는 방법은 선택 후 어떻게 할지 설명을 안해줍니다. 설명 요망.)
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
포스트맨 사용법이 바뀌어서 강의를 따라가지 못하겠습니다. 2
강의 6분 후반에서 7분 언저리의 NEW를 눌러서 GET Request를 눌러서 Request NAME에 네이버를 적고 하는 부분을 어떻게 해야 하는지 도통 모르겠습니다. + NEW에 들어가도 Request라는 버튼이 나오질 않습니다...
-
미해결[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
포스트맨 사용법이 바뀌어서 강의를 따라가지 못하겠습니다.
강의 6분 후반에서 7분 언저리의 NEW를 눌러서 GET Request를 눌러서 Request NAME에 네이버를 적고 하는 부분을 어떻게 해야 하는지 도통 모르겠습니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님하고 똑같이 작성했는데 rmse가 도저히 ㅠㅠ왜그런걸까요
라이브러리 및 데이터 불러오기 import pandas as pd train = pd.read_csv('https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p2/ch4/train.csv') test = pd.read_csv('https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p2/ch4/test.csv') # test.isnull().sum() #결측치 처리 필요함 Item_Weight//// Outlet_Size target=train.pop('Item_Outlet_Sales') # 결측치 처리 train['Item_Weight'] = train['Item_Weight'].fillna(train['Item_Weight'].mean()) train['Outlet_Size'] = train['Outlet_Size'].fillna(train['Outlet_Size'].mode()[0]) test['Item_Weight'] = test['Item_Weight'].fillna(train['Item_Weight'].mean()) test['Outlet_Size'] = test['Outlet_Size'].fillna(train['Outlet_Size'].mode()[0]) # train=train.drop('Item_Identifier',axis=1) # test=test.drop('Item_Identifier',axis=1) #다르므로 데이터 합친 후 레이블인코딩 하고 다시 train test로 나누기 combined=pd.concat([train,test]) #->그다음 레이블인코딩해보자 cols=train.select_dtypes(include="O").columns print(cols) from sklearn. preprocessing import LabelEncoder for col in cols: le=LabelEncoder() combined[col]=le.fit_transform(combined[col]) #->다시 데이터 train과 test로 나누자 train=combined.iloc[:len(train)].copy() test=combined.iloc[len(train):].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) # from sklearn.ensemble import RandomForestRegressor # model=RandomForestRegressor(random_state=200) # model.fit(X_tr,y_tr) # pred = model.predict(X_val) #모델구축(2) import lightgbm as lgb model = lgb.LGBMRegressor(random_state=0, verbose=-1) model.fit(X_tr, y_tr) pred = model.predict(X_val) #성능평가 from sklearn.metrics import root_mean_squared_error from sklearn.metrics import mean_absolute_error from sklearn.metrics import r2_score from sklearn.metrics import mean_squared_error result=root_mean_squared_error(y_val,pred) print('RMSE:', result) result = mean_squared_error(y_val, pred) print('MSE:', result) result = mean_absolute_error(y_val, pred) print('MAE:', result) result = r2_score(y_val, pred) print('r2:', result)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
저는 RMSE값이 1099정도 나오는데 ㅠㅠ
랜덤포레스트회귀로 하였는데rmse값이 1099정도 나오는데요 이정도는 차이가 큰것일까요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모델 검증
선생님의 코딩# LightGBM import lightgbm as lgb lg = lgb.LGBMClassifier(random_state=0, verbose=-1) lg.fit(X_tr, y_tr) pred = lg.predict(X_val) print("lightgbm") print(f1_score(y_val, pred, average='macro')) # 최종 제출 파일 (lightGBM) pred = lg.predict(test) result = pd.DataFrame({'pred':pred}) result.to_csv("result.csv", index=False) 저의 코딩from lightgbm import LGBMClassifier lg = LGBMClassifier(random_state=0, verbose=-1) model = lg.fit(X_tr, y_tr) pred = model.predict(X_val) pred.shape f1_score(y_val,pred, average='macro') # basic # 0.9257472552209252 pred = lg.predict(test) submit = pd.DataFrame({'pred' : pred}) submit.to_csv('result.csv', index=False) pd.read_csv('result.csv') 여쭙고싶은 것은 선생님께서는 lg.fit을 어떤 변수에 넣지 않고 바로 학습시킨 뒤 그것으로 예측 및 검증을 하고 최종 test 예측까지 수행하시는데,저는 lg.fit을 model이란 변수에 넣은뒤 예측 및 검증을하고, 최종적으로는 lg로 test 예측을 수행합니다. 혹시 이 차이에서 최종 예측성능에 차이가 생길까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회 기출유형 (작업형2) _ 제출형식에 관한 문의
교수님 안녕하십니까? 3회 기출유형 (작업형2)를 혼자 풀면서 심사위원분들께서 채점을 할 때,사용자 코드를 보고 채점 코드를 변경하시는지 혹은 일괄적인 코드로 채점을 하시는지 궁금함이 생겼습니다. 궁금한 점1) 테스트 데이터값을 예측할 때-> pred = rf.predict_proba(test)[:,1] 로 하지 않고,-> pred = rf.predict_proba(test) 로 테스트 데이터를 예측한 이후,아래와 같이 진행하면 심사위원분들이 유동적으로 채점 코드를 변경하시나요?test_index = test.index[:] test_index submit = pd.DataFrame({'index':test_index,'y-pred':pred[:,1]}) submit.to_csv('result.csv',index=False) pd.read_csv('result.csv') ※ 교수님이 주신 채점 코드를 아래와 같이 제 임의로 변경하면 채점이 되는것을 확인했습니다.roc_auc_score(y_test,pred) -> roc_auc_score(y_test,pred[:,1]) ※ 다만, 사용자 데이터를 보지않고 채점 코드를 일괄적으로 적용하면,정해진 제출형식에 어긋나게 작성해서 0점을 받을까 걱정이되서 문의드립니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
실습파일
혹시 실습 파일 어디서 다운 받는지 알 수 있을까요??ㅠ 몇번째 강의 였는지 기억이 안나서 여쭤봅니다ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
자유도 구할때
안녕하세요~ 소문제 1번에서 자유도를 구할때는 len함수를 사용하고 소문제 3은 sum사용하셨는데 둘다 sum사용 가능한가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
test_size
test_size를 0.15로 잡은 이유가 있을까요 ?? 저 사이즈 크기는 어떻게 잡는게 좋은지 궁금합니다.
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
'id'컬럼 제거
결측치 처리 마지막 단계에서 'id'컬럼은 어떤 이유로 제거를 하는 것일까요 ??
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
결측치 처리
'reviews_per_month' 컬럼을 삭제하는 방법으로 해도 상관이 있을까요 ??어떤 컬럼은 삭제하고 어떤 컬럼은 다른 값으로 채우는게 판단이 안될때 결측치 있는 컬럼 전부 삭제하는 방법으로 하면 안되는지 궁금합니다.