묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결빅데이터분석기사 실기대비 (R 활용)
predict함수 type 질문
작업형 2유형 질문드립니다.predict 함수 사용 시에 type별로 어떤 상황에 어떤걸 써야하는지 궁금해서 질문 올립니다.감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2모의문제3 lightgbm
안녕하세요 ㅠㅠ 시험때 랜덤포레스트랑 lightgbm 두가지를 준비해가려고 lightgbm을 사용해보는중인데, 아래와같이 오류가발생합니다 ㅠㅠ 이건 무슨의미인가요?작성한 코드 :import pandas as pd train = pd.read_csv('train.csv') test = pd.read_csv('test.csv') y_test = pd.read_csv('y_test.csv') #데이터전처리 결측치없음, 오브젝트없음 from sklearn.model_selection import train_test_split x_tr,x_val,y_tr,y_val = train_test_split(train.drop('output',axis=1),train['output'],test_size=0.2,random_state=2022) #모델링 import lightgbm as lgb model = lgb.LGBClassifier(random_state=2022,max_depth=5) <----여기서 오류가 발생합니다 model.fit(x_tr,y_tr) pred = model.predict_proba(x_val) 오류 :AttributeError: module 'lightgbm' has no attribute 'LGBClassifier'
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 1 예시문제 민맥스스케일 과정 중 질문
안녕하세요~ 다름이 아니고 민맥스스케일 과정 중 df['qsec'] = scaler.fit_transform(df[['qsec']]) 에서 df[['qsec']] 이처럼 언제 대괄호가 두개 쓰이는건지 이해가 잘 가지않습니다 ㅠㅠ 즉, 왜 df['qsec']가 되지 않는지요.. ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
T2-1 원핫인코딩
안녕하세요 T2-1 원핫인코딩을 하는 과정에서 컬럼을 지정하는 것에 관하여 질문을 드립니다.위 데이터 중에서 어떤 기준으로 features를 고르는 것인지 알고 싶습니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 유의사항
안녕하세요 강사님작업형2유형 유의사항에평가용 데이터 개수와 예측 결과 데이터 개수 불일치시 0점이라 되어있는데요. train.shape, test.shape 찍었을때 만약(712,7) (179,7) 오 나왔다면여기서( 712,7)이랑 (179,7)에서 컬럼이 7로 같으니까 개수가 위 주의사항에서의 데이터 개수가 일치한다고 보는건가요? 데이터 개수라는게 어떤걸 의미하고 이것이 일치하는지를 어떻게 확인할수있나요?만약 roc_auc_score등으로 평가지표가 산출이된다면 제출할때 데이터개수 불일치로 인해 0점맞을 걱정은 안해도되는건가요?저기 주의사항에 있는 데이터개수 불일치라는게 정확히 뭘 의미하고 어떻게 확인하는지를 모르겠네요ㅠㅠ
-
미해결빅데이터분석기사 실기대비 (R 활용)
이상치 처리시
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 이상치 처리시 ifelse()를 사용하셨는대df$Ozone[df$Ozone > upp] <- mean(df$Ozone, na.rm = T)이렇게 사용해도 될까요?알려주신 방법과의 차이점은 무었이고 혹시 변경할 코드로 작성시에 실수할수 있는 경우의 수가 있을까요?
-
미해결빅데이터분석기사 실기대비 (R 활용)
작업2유형 - 4회 기출 질문 드립니다
안녕하세요, 4회 기출 주신 자료를 따라서 코딩 하고 있는데 confusionMatrix 결과값이 다르게 강의 파일과 다르게 나옵니다.'cm1$byClass'를 넣어도 에러 메세지가 나오고요.확인 부탁 드립니다. 감사합니다 [confusionMatrix 시행 결과 화면]
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
[섹션6] 작업형2 모의문제2 mape 평가 관련 질문입니다.
안녕하세요~ 계속 반복한 끝에 미숙하게나마 직접 데이터를 가공해서 모델을 만들어서 돌려보는 데까지 성공했습니다. 정말 좋은 강의 감사합니다. 저 같은 경우에는 name, host_id, host_name, last_review, reviews_per_month 이런 결측치가 많거나 object인 컬럼들은 모두 날려줬고LabelEncoer, MinMaxScaler를 사용해서 피처엔지니어링을 해줬습니다.그렇게 해서 평가에 사용한 모델은 RandomForestRegressor 고요.다른 결과치들은 선생님께서 방송 중에 만들어주신 모델에 비해서 살짝 살짝 낮지만… 그래도 결과값이 나오긴 나와서 다행이라고 생각하고 있는데요.(정말 고맙습니다!) 딱 하나 아래 mape 요 놈은 결과값이 inf로 나옵니다.MAPE(Mean Absolute Percent Error)요건 Inf - 아마 무한대겠죠?분모에 해당하는 수가 0에 가까워서 그런 게 아닐까 싶기도 한데요. 이 평가지표를 쓰라고 한다면 MinMaxScaler는 쓰면 안 되는 걸까요? 요게 영향을 주지 않았을까 싶어서요. 출근을 해야해서 일단 생각을 여기까지 해보고 퇴근하고 다시 올려보겠습니다.랜덤포레스트 모델하고 LightBGM 요렇게 두 가지만 쓰려고 작정하고 준비하고 있습니다.그럼~
-
미해결[핵집] 2024 빅데이터 분석기사(실기)_작업형 1·2·3유형
Part2. 작업형 3유형 >> 실습(T검정) > 쌍체표본 T- 검정 질문
Part2. 작업형 3유형 >> 실습(T검정) > 쌍체표본 T- 검정 질문강의내용 중stats.ttest_rel(df['before_spr'], df['after_spr'], alternative = 'greater')alternative = 'greater' 로 했는데이유를 잘 모르겠습니다.greater 면 X1( before_spr ) 이 더 크나는것이 아닌가요?귀무가설H0 : (살충제 뿌린 후 곤충수 - 살충제 뿌리기전 공충수) >0 이기에 alternative = 'less'로 해야 하지 않나요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제 2 질문있습니다!
안녕하세요!작업형 2 모의문제 2의 마지막에 csv파일을 제출할 때 에러가 발생하는데, 어떤 이유인지 찾아봐도 안보여 질문드립니다. 그리고 작업형 2유형의 train과 test데이터 파일만 주어진 경우, 어떤 문제는 n_train, c_train, n_test, c_test로 나누는 문제가 있고 그렇지 않은 문제들이 있어서 헷갈립니다ㅠ 그래서 문제를 읽고 데이터를 분리해야하는 상황이 궁금합니다!import pandas as pd train = pd.read_csv('train.csv') test = pd.read_csv('test.csv') # print(train.head()) # print(test.head()) # print(train.info()) 1. 불필요한 컬럼제거 2. 결측치 대치 3. 인코딩 4. 스케일링 # print(test.info()) train = train.drop(columns ='id') test_id = test.pop('id') # print(test_id) cols = ['host_id','neighbourhood_group','neighbourhood','name', 'host_name', 'last_review'] # print(train.shape) train = train.drop(cols, axis =1) test = test.drop(cols, axis =1) # print(train.shape) # train = train.drop(columns ='host_id') # test = test.drop(columns ='host_id') # train = train.drop(columns ='neighbourhood_group') # test = test.drop(columns ='neighbourhood_group') # train = train.drop(columns ='neighbourhood') # test = test.drop(columns ='neighbourhood') # train = train.drop(columns ='name') # test = test.drop(columns ='name') # train = train.drop(columns ='host_name') # test = test.drop(columns ='host_name') # train = train.drop(columns ='last_review') # test = test.drop(columns ='last_review') # print(train.info()) # print(test.info()) # print(train.isnull().sum()) # print(test.isnull().sum()) train['reviews_per_month'] = train['reviews_per_month'].fillna(0) test['reviews_per_month'] = test['reviews_per_month'].fillna(0) # print(train.isnull().sum()) # print(test.isnull().sum()) #라벨 인코딩 from sklearn.preprocessing import LabelEncoder cols =train.select_dtypes(include = 'object').columns for col in cols: encoder = LabelEncoder() train[col] = encoder.fit_transform(train[col]) test[col] = encoder.transform(test[col]) # print(train.info()) # print(test.info()) # print(train.describe()) # print(test.describe()) # 스케일링 from sklearn.preprocessing import minmax_scale cols2 = train.select_dtypes(exclude = 'object').columns for col in cols2: train[col] = minmax_scale(train[col]) cols2 = test.select_dtypes(exclude = 'object').columns for col in cols2: test[col] = minmax_scale(test[col]) # print(train.describe()) # print(test.describe()) from sklearn.model_selection import train_test_split X_train, X_val, y_train, y_val = train_test_split(train.drop('price', axis=1), train['price'], test_size=0.2, random_state=20) # print(X_train.head()) from sklearn.ensemble import RandomForestRegressor rf = RandomForestRegressor() rf.fit(X_train, y_train) pred = rf.predict(X_val) # print(pred) #id,price sumit = pd.DataFrame({'id': test_id, 'price' : pred}) submit.to_csv('10004.csv', index=False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회 기출유형(작업형2) 코드 인코딩 방법 관련 질문
안녕하세요. 우선 좋은 강의 너무 감사드립니다.3회 기출유형(작업형2) 코드 인코딩 방법 관련 질문드립니다.풀이 영상에서 원핫인코딩 방법을 선택해주셨던데 시험 문제를 풀때 1)원핫인코딩을 할지 2)라벨인코딩을 할지는 어떤 정보를 보고 선택하나요?저는 라벨 인코딩이 익숙해서 아래 처럼 작성했는데 인코딩 방식이 무관하다면, 아래처럼 라벨인코딩으로 진행해도 될지 문의드립니다.# 수치형 데이터와 범주형 데이터 분리 n_train = train.select_dtypes(exclude=object).copy() c_train = train.select_dtypes(include=object).copy() n_test = test.select_dtypes(exclude=object).copy() c_test = test.select_dtypes(include=object).copy()cols = c_train.columns for col in cols: le = LabelEncoder() c_train[col] = le.fit_transform(c_train[col]) c_test[col] = le.transform(c_test[col]) c_train.head()
-
미해결빅데이터분석기사 실기대비 (R 활용)
dplyr 라이브러리의 select 함수를 궂이 써야하는 이유가 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 기본적으로 [ , ] 사용한 인덱싱과셀렉트 함수를 사용하여 인덱싱 하는것의 차이점이과 사용시 더 유용한 경우가 있을까요?혹시 가독성이 더 좋아서일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
하이퍼파라미터 질문입니다.
안녕하세요 강사님교차검증을 통해 하이퍼파라미터를 사용할 때, 분류모델인 랜덤포레스트 외에도 의사결정나무, XGBOOST, 회귀모델인 로지스틱 등 전 모델에 동일하게 사용이 가능한가요?random_state의 값을 다른 값을 찾을 필요없이 0으로 고정해도 괜찮을까요?기존방식대로 검증 데이터를 분리하여 하이퍼파라미터 최적 값을 찾는 방법은 없을까요? 하이퍼파라미터를 사용하지 않고 기존방식으로 검증 데이터를 분리 후 성능지표가 가장 좋은 모델을 사용하는 방식으로 해도 점수감점이 없을까요?4가지 질문에 대한 답변을 해주시면 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
df.sum() 과 sum(df) 차이가 뭔가요?
df.sum() 과 sum(df) 차이가 무엇인지 질문드립니다.
-
미해결빅데이터 분석기사 시험 실기(Python)
강의자료 문의
매 강의 초반에 나오는 화면자료는 강의에 따로 안올려주신거죠?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 폰트 크기 설정
캐글 글자가 너무 작아서 안보이는데 크기 설정 어떻게 하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
삭제예정콘텐츠 강의
'(삭제 예정 콘텐츠) 회귀모형'라는 강의가 있는데 빅데이터분석기사 실기 시험에 필요한 내용일까요? 수강해야 되는지 몰라서 질문드립니다.
-
미해결빅데이터 분석기사 시험 실기(Python)
구름IDE 실행불가문제 ㅠㅠ
밑줄 부분이 계속 나오고 그 다음이 안넘어가집니다. 저장하고 해도 소용이 없네요 ㅠㅠ 어떻게 해결할 수 있을까요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
Lightgbm 관련 질문
Ligthgbm을 쓰면 결측치 처리가 필요없고, 범주형 데이터 인코딩도 필요없다고 하셨는데트리 관련 모델이라 수치형 변수 스케일링도 딱히 필요가 없고,이상치 처리에 대해서도 딱히 필요가 없나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제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.shape, test.shape) # print(train.head()) # print(test.head()) # print(train.info()) # print(test.info()) cols = train.select_dtypes(include='object') for col in cols : train[col] = train[col].astype('category') test[col] = test[col].astype('category') # 이걸 안 하면 lgb.predict(test) 구문에서 에러남 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=2023) import lightgbm lgb = lightgbm.LGBMRegressor(random_state = 2023) lgb.fit(X_tr, y_tr) pred = lgb.predict(X_val) from sklearn.metrics import r2_score, mean_absolute_error, mean_squared_error # print("r2 : ", r2_score(y_val, pred)) #0.2392705394376351 # print("mae : ", mean_absolute_error(y_val, pred)) #71.81171796246842 # print("mse : ", mean_squared_error(y_val, pred)) #63344.209788490516 pred_res = lgb.predict(test) pd.DataFrame({'price': pred_res}).to_csv('result.csv', index=False) print(pd.read_csv('result.csv')) y_test = pd.read_csv("y_test.csv") print(r2_score(y_test, pred_res)) #0.22012967580409581안녕하세요, 딴짓님lightGBM 모델 설명 주셔서 적용해보았는데요.이렇게 하는 게 맞을까요?for col in cols : train[col] = train[col].astype('category') test[col] = test[col].astype('category')이 부분을 하지 않으면 에러가 나긴 하더라구요. train[col]을 하지 않으면 아래와 같은 에러메시지가 나옵니다.'DataFrame.dtypes for data must be int, float or bool.Did not expect the data types in the following fields: name, host_name, neighbourhood_group, neighbourhood, room_type, last_review' test[col]을 하지 않으면 아래와 같은 에러메시지가 나옵니다.'train and valid dataset categorical_feature do not match.' lightGBM모델은 데이터 타입이 int, float, bool 이 세가지만 허용하게 되어 object 타입을 category 타입으로 변경train만 변경해주면 test[col]을 하지 않았을 때와 같은 에러메시지가 출력되니 test도 category로 변경이게 맞을까요? 평가지표 같은 것도 주석으로 작성했는데, lightGBM을 이렇게 사용하는 것이 맞는지 확인 한 번 부탁드립니다!