묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
다중분류 데이터 확률값 질문있습니다!!
안녕하세요 선생님 평가지표 강의 다중 분류 확률값에 대해 질문 있습니다.'ovo' 방식 roc_score_ovo = roc_auc_score(y_true_onehot, y_pred_proba, multi_class='ovo') print("ROC AUC (OvO):", roc_score_ovo) # 'ovr' 방식 roc_score_ovr = roc_auc_score(y_true_onehot, y_pred_proba, multi_class='ovr') print("ROC AUC (OvR):", roc_score_ovr)확률값을 구할때는 pred_proba에서 어떤 확률값을 구하는지 pred.proba[:,1] 이렇게 지정해줬던거 같은데 다중확률에서는 이렇게 안하는건가요??# 다중분류 데이터(확률값) y_true_str = pd.DataFrame(['A', 'B', 'C', 'A', 'B']) # 실제값 y_pred_proba = pd.DataFrame([[0.2, 0.5, 0.3], [0.7, 0.2, 0.1], [0.4, 0.3, 0.3], [0.4, 0.1, 0.5], [0.1, 0.8, 0.1]], columns=['A', 'B', 'C']) # 예측값(각 클래스 확률) # 인코딩된 순서와 확률 컬럼 순서가 같인지 확인 print("y_true의 원-핫 인코딩된 컬럼 순서:", y_true_onehot.columns) print("y_pred_proba의 컬럼 순서:", y_pred_proba.columns)2 . 실제 문제를 풀 때는 pred_proba값이 배열 형태로 되어 있어 컬럼값이 지정이 안되어 있을텐데 이 때는 컬럼 순서가 같은지 어떻게 확인을 해야 하는 건가요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님 csv 파일을 결론내고 다시 읽어보았더니 계속 price가 소수점으로 나오네요 ㅠ
import pandas as pdtrain = pd.read_csv("train.csv")test = pd.read_csv("test.csv")train.isnull().sum()train =train.drop(["name", "host_name", "last_review"], axis=1)train["reviews_per_month"] = train["reviews_per_month"].fillna(train["reviews_per_month"].mean())test =test.drop(["name", "host_name", "last_review"], axis=1)test["reviews_per_month"] = test["reviews_per_month"].fillna(test["reviews_per_month"].mean())cols = train.select_dtypes(include = "object").columnsfrom sklearn.preprocessing import LabelEncoderfor 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_splitX_tr, X_val, y_tr, y_val = train_test_split(train.drop("price", axis =1 ), train["price"], test_size=0.1, random_state=2022)from sklearn.ensemble import RandomForestRegressorrf = RandomForestRegressor()rf.fit(X_tr, y_tr)pred = rf.predict(X_val)pred = rf.predict(test)submit = pd.DataFrame({"id":test['id'], "price": pred})submit.to_csv("990906.csv", index=False) csv를 읽었더니 id price34323697 259.0129927138 115.78 이런식으로 price가 소수점으로 나오는데 어디 코드에서 틀린걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 시험자에서 제출할때
마지막 부분에서 저의 코드는 pred = rf.predict(test)submit = pd.DataFrame({ 'index': test.index, 'target': pred})submit.to_csv("수험번호.csv" , index = False)인데 여기서 submit.to_csv까지만 적고 제출해도 되나요?? 추가적으로 강의 코드를 보면.....rf.fit(X_tr, y_tr)pred =rf.predict(X_val) pred=rf.predcit(test)submit = .... 이런 코드에서 pred 가 2개 중복인데 어떻게 해석해야하나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
에러가 계속 뜨는데 뭘까요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2유형 분류문제 관련 문의드립니다...!
작업형 2유형에서 베이스라인으로 데이터 삭제, 라벨 인코딩, 원핫 인코딩 3가지를 시행 후 정확도가 높은 것을 선택하여 최종 제출했는데요! 반드시 이 3가지를 모두 시행해야만 하는건지 궁금합니다..!! 예를 들어 1가지를 시행했을때 정확도가 몇% 이상 나왔을때 그냥 그대로 제출해도 되는건지 이런 기준이 있는건지 궁금합니다 ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
시계열데이터 관련 질문
안녕하세요 시계열 데이터 강의까지 봤는데요질문드립니다. 질문1. [시계열데이터1 강]13:08 부근..DateTime4 를 날짜형식으로 변환할때 1) print(df['DateTime4'])2) df['DateTime4'] = pd.to_datetime(df['DateTime4'], format='%d %m %Y H:M:S')3) print(df['DateTime4'])저는 처음에 2)와 같이 작성했는데요 그런데 강의 영상에서도 설명해주시길 format='%d %m %Y H:M:S'을 쓰지 않고 해야 오류없이정상적으로 되네요 ? 시간 분, 초가있을때는 HMS를 넣어줘야 하는거아니었나요?? df['DateTime4'] = pd.to_datetime(df['DateTime4'], format='%d %m %Y H:M:S') 이렇게쓰면 오류 가나오는데? 굳이 포맷을 사용하면서 에러가 안뜨게하려면 어떻게 작성해야하나요?질문2. 데이터프레임에서 특정 열을 날짜형식으로 바꾸고 특정 년도를 추출하라고 했을때정석적인 방법은 알려주신 to_dateTime~ 을 쓰고 dt.year 를 하는것이겟지만 year이 아니라 문법을 모르는 어려운것을 물어볼때 dt.?? 부분이 모르는게 나와 수틀렷을때 쓸수잇는 방법을 알아두는게 좋을것같아서요 -- 날짜변환쓰지않고 데이터프레임상태에서 특정 열에 있는 object 데이터를 object 형식 그대로 왼쪽에서부터 몇글자만 추출하려면 어떻게 하면 될까요? 날짜 메뉴 기타0 2023.10.23(금) 짬뽕 맛없어1 2021.05.24(수) 짜장면 맛있어 예를들어 df 데이터가 위와 같을때 때 2021을 그대로 뽑는다면(df.loc[1,'날짜'])[0:4)이렇게 쓰면 2021이 그대로 추출되는데요 한개의 칸을 특정해서 추출 하는게아니라 날짜 열을 전부 추출하려면 어떻게 해야할까요? 0 20231 2021이렇게 추출하고싶습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
정규성 검정, 등분산성 검정 in 가설검정, 분산분석
실제 시험 볼 떄, 정규성 검정과 등분산성 검정을 시행하는 코드를 써야하나요?제 생각으로는 그냥 정규성 검정과 등분산성 검정을 해서 정규성의 유무와 등분산성의 유무만 판단 후, 다시 코드를 지우고분산분석이나 가설검정 코드만 써주면 될것같은데... 어떻게 해야할까요? 정규성, 등분산성을 검정했다~라는 것도 표현하기 위해 정규성 검정 코드, 등분산성 검정 코드를 써야할까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5-2 강의 내용 관련 질문있습니다.
안녕하세요. 선생님. 5-2 강의 내용 중 잘 이해가 되지 않는 것이 있어 질문드립니다.train.nunique()를 통해 나타난 컬럼 중 name, host_name, last_review, host_id 데이터를 삭제하신 이유가 궁금합니다.nunique()함수는 그 컬럼값 중 고유값이 몇 종류나 되는지 알려주는 것으로 알고 있는데, 그 값과 결측치의 개수가 서로 상관이 있어서 그런것인가요?가령, name같은 데이터는 강의에서 거의 전체 데이터 개수와 nunique함수를 통해 나타난 개수가 별로 차이가 나지 않을 만큼 많기에 지운다고 말씀하셨는데, 이 부분이 잘 이해되지 않습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
EDA 데이터 합치기에서 만약 id 순서가 다르거나, 데이터 개수가 다르면 어떻게 합치나요? 시험에서 그런 경우도 있을까요?
데이터를 합칠 때 수업 내용을 보면 ID를 빼고 그냥 합치는 것 같던데 (제가 이해한게 맞다면요.) 혹시 데이터 개수가 다르거나 ID 순서가 다르면 어떻게 해야하나요? 혹시 시험에서 그런 경우도 있나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
groupby 실행시 오류가 발생해요
주피터 노트북(터미널로 numpy, pandas 설치완료)으로 df.groupby('원두').mean() 실행했는데 오류가 발생해요 ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
수업노트 colab 링크??
선생님 수업노트에 colab 링크 남겨주셨다고 하는데 어디있는지 잘 모르겠습니다. 지금 일일이 치는 중이라 알아두면 좋을 것 같아요 어디있는지 알려주시면 감사하겠습니다.
-
미해결수학 없이 시작하는 인공지능 첫걸음: 기초부터 최신 트렌드까지
1강 머신러닝 영문 표기 문의
1강 0:50에 머신러닝의 개념을 설명해주시는데 괄호 안에 영어가 잘못 표기된 것 같습니다.영어로 Machine Learning 이 맞나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
df로 굳이 설정해야하는건가요??
저는 df 말고 members = pd.read_csv("members.csv")로 쓰고 싶은데 상관없나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5-2 type2 작업형2 모의고사
18분 20초 부분에 랜덤포레스트로 모델을 만드시고 r2 스코어 시행결과 0.0770341 로 나왔습니다. r2 값은 1에 가까울수록 설명력이 높다고 들었습니다. 그렇다면 만드신 랜덤포레스트 결과물로 제출해버리면 채점관들이 "아 r2 점수가 낮으니 이건 설명력이 낮은 모델이군" 으로 생각해서 감점당할 수 도 있나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
데이터 핸들링을 위한 판다스 기초1 강의에 필요한 csv 파일 안보임 현상
안녕하세요! 데이터 핸들링을 위한 판다스 기초1 강의에 필요한 data.csv 파일이 보이지 않습니다. 말씀주신대로 새로고침도 해보고, 파일 링크도 여러번 복사해서 해봤는데 안보입니다 ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
y_tr 과 y_train 의 차이점
import pandas as pdX_train = pd.read_csv("X_train.csv")X_test = pd.read_csv("X_test.csv")y_train = pd.read_csv("y_train.csv")cols = X_train.select_dtypes(exclude = 'object').columns # cols = ['id', 'age', 'fnlwgt', 'education.num', 'capital.gain', 'capital.loss', 'hours.per.week']X_train[cols] = X_train[cols].fillna(0)X_test[cols] = X_test[cols].fillna(0)y = (y_train['income'] == '>50K').astype(int)from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(X_train, y, test_size = 0.1, random_state = 2022)from sklearn.ensemble import RandomForestClassifierrf = RandomForestClassifier()rf.fit(X_tr[cols], y_tr)pred = rf.predict(X_val[cols])pred = rf.predict(X_test[cols])submit = pd.DataFrame({ 'id': X_test['id'], 'income': pred})submit.to_csv("990906.csv", index=False) 제가 작성한 코드입니다. 문제1을 심플하게 설명해주셔서 제가 그 과정에 검증데이터 분리과정을 넣어 자체적으로 작성한 것입니다확인해보니 y_train의 크기는 (29304, 2) 이고, y_tr의 크기는 (26373,) 더군요여기서 궁금한 것이 y_train 칼럼은 id, income 인데 단지 "y = (y_train['income'] == '>50K').astype(int) )" 코드가 실행되엇다고 해서 어떻게 y의 칼럼이 "id"가 삭제되고 "income' 만 남아있는지 궁금합니다. y_train.drop("id")를 작성하지 않았는데 id 칼럼이 삭제되어 의문이 들었습니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 T2-2 질문드립니다!!
# 포도당을 제외한 이상치, 평균값으로 대체cols = ['BloodPressure', 'SkinThickness', 'Insulin', 'BMI']cols_mean = X_train[cols].mean()X_train[cols] = X_train[cols].replace(0, cols_mean)선생님께서는 이렇게 train 데이터의 결측치만 평균값으로 바꿔주셨는데 X_test도 같이 바꿔줘야 하는게 아닌가 해서 질문드렸습니다. 그리고 만약 바꾸어 주는게 맞다고 하면 밑에 있는 코딩처럼 다시 한번 X_test[cols]값들의 평균을 구한 다음 하는건지 아니면 위에 있는 train 데이터의 cols_mean을 사용하는건지 궁금합니다!!# cols_mean = X_test[cols].mean()# X_test[cols] = X_test[cols].replace(0, cols_mean)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 T1-12 질문!
캐글 T1-12 문제에서 100%가 넘는 접종률은 제거 한다고 되어 있는데 위에 df2 = df[1:] 이게 이상치를 제거 하는게 맞는건가요?처음 실행 했을 때 100이 넘는 값이 나왔고, 실행 할 수록 프린트 되어 나오는 값이 달라집니다.그리고 저게 이상치를 제거한다는게 맞다면 저 코드(?)의 의미는 무엇인지 궁금합니다 [1:] 이부분이...
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
id는 굳이 학습 안해도 된다는 내용
5-3 수업 자료에서 train = train.drop('id, axis = 1)test_id = test.pop('id) 를 썻는데 여기 3-5 문제2 에서도 검증데이터 분리 전에 X_train = X_train.drop('id, axis = 1)X_test_id =X_ test.pop('id)을 쓰고 그대로 진행해도 될런지요?? 진행해보았는데 22222.csv 파일 내용을 보면강의와는 수치가 조금 다릅니다id income11574 0.0315847 0.0117655 0.119790 0.4731812 0.05 이런식으로 나오는데 저의 풀이도 맞는지요!
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
실제 캐글(Kaggle) 문제 풀고, 제출해보며, 성능 개선 기법 익히기2 강의에서 질문입니다
실제 캐글(Kaggle) 문제 풀고, 제출해보며, 성능 개선 기법 익히기2 강의 17:30 부분에서 질문이 있습니다. 이번 강의에서는 transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])와 같이 이미지 데이터에 Normalization을 적용하였는데요, from transformers import ViTFeatureExtractor feature_extractor = ViTFeatureExtractor.from_pretrained('google/vit-base-patch32-224-in21k') feature_extractor다음 코드와 같이 vit-base-patch32-224-in21k 모델에서 적용된 image_mean과 image_std를 확인해 보니,"image_mean": [ 0.5, 0.5, 0.5 ], "image_std": [ 0.5, 0.5, 0.5 ] 와 같이 결과가 나왔습니다. 그렇다면, 학습 데이터에 Normalization을 적용할 때에도 [ 0.5, 0.5, 0.5 ], [ 0.5, 0.5, 0.5 ] 값을 적용해야 하는 것이 아닌지 여쭙고 싶습니다. 감사합니다!