묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1, 작업형3 답안제출 메모장관련 문의
작업형1, 작업형3 답안제출 할 경우에 답을 외우고 다음페이지로 넘어가야하나요? 답안을 제출하기위해서는 답안용 화면이 띄어지는데 바로 이전에 풀이해놓은 사항에서 답을 복사해오고 붙여넣기 해야 착오가 없을것 같아서요. 보통 답을 암기하여 제출하나요? 필기구도 지참이 불가하다하여 어떤게 좋을지 문의드려봅니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
레이블인코딩 합쳐서 하는 기준 판단
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요!set 방법이 이제 생각나서 다시 돌아와서 보고 있습니다. set으로 확인하는 과정은 EDA에서 해주는게 맞죠?a = set(train['object컬럼명'].unique())b = set(test['object컬럼명'].unique())이렇게 정의 해주었을때test에 있는데 train에 없는 경우만 예외경우로 합쳐서 레이블 인코딩 해줘야하니 print(b-a) 만 해주면 되는거 맞죠? (굳이 a-b는 안해줘도되나 싶어서요)이 값이 어떤 값이 나오면 합쳐서 레이블 인코딩 해주고 분리해주는거구요!만약 합친 다음에 레이블 인코딩 해줘야한다면<전처리 단계>target = train.pop('타겟컬럼') from sklearn.preprocessing import LabelEncoder cols = train.select_dtypes(include='object').columns df = pd.concat([train,test]) for col in cols: le = LabelEncoder() df[col] = le.fit_transform(df[col]) train = df.iloc[:len(train)] test = df.iloc[len(train):]이 순서대로 진행하면될까요?마지막으로 합쳐서 레이블 인코딩 할때 object 컬럼이 여러개 있다면 (예를들어 6개가 object 컬럼이라면) 6개중 단 하나의 object 컬럼이라도 print(b-a) 했을때 값이 나온다면 합쳐서 레이블 인코딩 후 분리해주는거 맞죠?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
f1 score
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요f1_score에서숫자면 그대로문자면 f1_score(실제값, 예측값, pos_label='1인값')이라고 일전에 강의에서 설명해주셨는데요 여기서 말하는 문자, 숫자는 target 컬럼의 info를 보고 판단하는거 맞나요?1인값에는 1인 카테고리 명을 쓰면 되는지 여쭤봅니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이진분류 기출3회
1) /n 'roc_auc:', roc_auc (roc_auc는 변수명)이렇게 입력하던데 저기 / 슬러시는 반대로 작성하는 거 어찌하는건가요? 키보드에 어떤값을 눌러서 작성하신걸까요? gpt 에서는 shift 와 / 를 누르면 된다는데 전 ? 가 출력되거든요ㅜ 1-1) roc_auc: 뒤에 ':' 표시는 붙은 이유가 모든 값을 포함한다는 건지두요,, 2) 그리고 또하나는 f1 score나 roc 와 같은 점수 표시할때는 저렇게 코드 작성을 하던데 어떤 의미인지 궁금합니다.pd.DataFrame({'pred':pred)} 처럼 /n roc_auc: 를지정한 roc_auc 변수명으로 대입한다는 뜻일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 t1-18
df['Date'] = pd.to_datetime(df['Date']) df['year'] = df['Date'].dt.year df['month'] = df['Date'].dt.month df['day'] = df['Date'].dt.day df['dayofweek'] = df['Date'].dt.dayofweek # print(df['dayofweek'].unique()) cond1 = df['year'] == 2022 cond2 = df['month'] == 5 cond3 = df['dayofweek'] <= 4 # 평일 cond4 = df['dayofweek'] >= 5 # 주말 # 0: 월 1 화 2 수 3 목 4 금 result1 = df[cond1 & cond2 & cond3]['Sales'].mean() # 5 토 6 일 result2 = df[cond1 & cond2 & cond4]['Sales'].mean() print(round(result1 - result2,2))제 코드인데요!여기서 절댓값 하라말이 없는데 왜 abs 해줘야값이 똑같이 나올까요?저는 답과 부호만 빼고 동일하게 나왔습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예측할 칼럼이 int말고 object 나오는 경우
예측할 칼럼이 int말고 object 나오는 경우가 있나요?만약 나오면 예측 돌리기전에 예측할 칼럼도 인코딩 해야하나요??? 나올 확률 있나요??해야하면 어떤식으로 진행해야하죠??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
x_test에 만약 결측치있으면
x_train에 있으면 결측치 넣는걸로 답변 받았었습니다! 근데, 마지막에 결과 제출을 위해 예측 돌리기 위한 x_test에 만약 결측치가 존재하면, 결측치에 0이나 뭐 평균값 등 다른걸 넣나요?? 아니면 그냥 냅두나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
시험환경 질문
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요실제 시험 환경으로 실습 진행 중인데, 궁금한게 있어요실제 시험에서 복사/붙여넣기가 불가능한가요? 예를 들어서 제가 작성한 코드를 복사해서 다른 코드에 또 활용한다던가 print문으로 나온 숫자를 복사해서 붙여넣는다거나 연습중에는 복사/붙여넣기가 안되더라구요정답을 제출한 뒤 맞게 제출 했는지 확인을 위해 다시 풀이로 돌아갔는데 코드가 모두 지워져있었습니다. (풀이 > 정답제출 > 풀이) 실제 시험 중에도 이런 식으로 항목 이동을 하면 풀이 과정에서 진행했던 코드들이나 print문으로 추출한 숫자들이 삭제되는지 궁금합니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
kaggle 작업형 2 자전거 수요 예측
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요선생님 작업형 2 유형 datetime 컬럼 관련해서 올려주신 글을 보고1. datetime: 라벨인코더 진행2. datetime: 드랍했을 때3. datetime: datetime 변환 해서 점수를 내보았는데요.label encoder의 성능이 제일 좋았습니다. 혹시 label encoder로 모델을 검증한 것은 너무 과적합 된 값일까요?과적합 되어있다면 datetime이 나올 경우 변환하는 것이 가장 좋은 방법일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 개 나이 예측 문항
안녕하세요!작업형 2번 관련해서 질문 드려도 괜찮을까요…?혹시 get dummies 하기 전에 데이터 합치고 나눠야만 하나요..?수치형 데이터로 구성되어있고, 컬럼 같을 경우에는 합치고 나누는 작업 없이 get dummies 진행했는데 다른 풀이하고 결과값이 조금 차이 나는 것 같아서요! Get dummies 전후로 데이터 합치고 나누는 이유를 알고 싶습니다!제 코드# print(train.shape, test.shape)train = pd.get_dummies(train)test = pd.get_dummies(test)# print(train.shape, test.shape)다른 분들 모범 코드입니다¡data = pd.concat([train,test])data = pd.get_dummies(data)train = data.iloc[:len(train)]test = data.iloc[len(train):]
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
(체험 제2유형)
안녕하세요 선생님..이 문제에서 import pandas as pdpd.set_option('display.max_column',None)pd.set_option('display.float_format',"{:.10f}".format)train = pd.read_csv("data/customer_train.csv")test = pd.read_csv("data/customer_test.csv")# print(train.shape, test.shape) # 3500,11 / 2482 ,10개# print(train.isnull().sum()) # 환불금액 결측치 있음 2295 train = train.fillna(0)test = train.fillna(0)# print(train.isnull().sum()) 결측치 제거완료# print(train.head())# print(train.info()) # 주 구매상품, 주 구매지점# print(train.describe(include='object')) # 유니크가 42개, 24개라서 라벨인코더 가야할듯# cols = train.select_dtypes(inclued='object').coulmns !!!!# print(train.head())cols = ['주구매상품', '주구매지점']# print(train['주구매상품'].nunique())# print(test['주구매상품'].nunique())# print(train.describe(include='O'))# print(test.describe(include='O'))from sklearn.preprocessing import LabelEncoderfor col in cols : le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col])# print(train.shape, test.shape)# print(train.head())target = train.pop('성별')# print(target)from sklearn.model_selection import train_test_splitX_tr,X_val,y_tr,y_val = train_test_split(train,target,test_size=0.2)# print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) # 2800from sklearn.metrics import roc_auc_scorefrom sklearn.ensemble import RandomForestClassifierrf = RandomForestClassifier()rf.fit(X_tr,y_tr)pred = rf.predict_proba(test) <---- 실행했는데 여기를 실행하면 ValueError: X has 11 features, but DecisionTreeClassifier is expecting 10 features as input.가 발생합니다.. 대체 왜 그럴까요 ㅠㅠ??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 T1-34 문제 질문 (꼬리문제 1번)
제가 쓴 코드와 답안으로 작성되어 있는 코드 답 차이가 1씩 나는데, 왜 차이가 나는지 잘 모르겠네요 ㅜㅜ제가 쓴 코드에서 잘못된 부분이 있는지 말씀해주시면 감사하겠습니다.import pandas as pd import numpy as np df = pd.read_csv('/kaggle/input/bigdatacertificationkr/website.csv') # print(df.info()) # print(df.head()) df['StartTime'] = pd.to_datetime(df['StartTime']) df['EndTime'] = pd.to_datetime(df['EndTime']) # print(df.info()) # print(df.head()) df['total_seconds'] = (df['EndTime'] - df['StartTime']).dt.total_seconds() // 60 // 60 df = df.groupby(['UserID', 'Page']).mean() # print(df) df1 = df.groupby('Page')['total_seconds'].idxmax() # print(df1) print(int(df.loc[df1, 'total_seconds'].sum()))
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2유형에서 수치형 데이터를 스케일처리하는게 좋을지?
2유형 문제에서 수치형 데이터를 스케일 처리하는게 좋을지 그냥 놔두는게 좋을지 모르겠어요. 혹시 처리와 미처리의 기준이 있나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫인코딩
인코딩 에러가 나기전에 모든 test와 train에 대해서 전부 concat으로 합치고 원핫 인코딩 후다시 풀어도 아무문제없을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
개수가 불일치 합니다
안녕하세요. 작업형 2 한가지 방법으로 풀기의 내용으로예시문제 작업형 2를 푸는데 개수가 맞지 않아서 질문 드립니다..ValueError: X has 73 features, but DecisionTreeClassifier is expecting 74 features as input.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) # print(train.head(1), test.head(1)) # print(train['성별'].value_counts()) # print(train.isnull().sum(), test.isnull().sum()) train['환불금액'] = train['환불금액'].fillna(0) test['환불금액'] = test['환불금액'].fillna(0) target = train.pop('성별') print(train.shape, test.shape) train = pd.get_dummies(train) test = pd.get_dummies(test) print(train.shape, test.shape) 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 RandomForestClassifier rf = RandomForestClassifier(random_state=0) rf.fit(X_tr, y_tr) pred = rf.predict_proba(X_val) from sklearn.metrics import roc_auc_score roc_auc = roc_auc_score(y_val, pred[:,1]) print('\n roc_auc:', roc_auc) pred = rf.predict_proba(test) print(pred[:3]) submit = pd.DataFrame({'pred':pred[:,1]}) submit.to_csv("result.csv", index=False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출 4회
섹션 13 기출 4회 풀이때는 train ,test데이터의 id값을 drop 해주셨는데 한가지 방법으로 풀이 때는 원핫인코딩을 해주셔서 drop을 안해주신건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
마지막 제출시 학습을 다시 안해도 되는지 궁금합니다
검증 데이터 분할을 해서 일반적으로 모델에 rf.fit(X_tr_y_tr)을 진행하고 예측하다가 마지막에 바로 pred =rf.predict(test)로 테스트 데이터를 집어 넣는데요, rf.fit(train,target) 으로 다시 학습하고 집어 넣지 않아도 상관이 없나요 ? 두개가 굳이 차이가 없기떄문에 분할로 생성된 모델을 넣는건지 이유가 있는건지 궁금합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
drop, pop ,, 알려주세요
train = train.drop('CLIENTNUM', axis=1) test_id = test.pop('CLIENTNUM') 왜 이전 회차에는 drop을 통해 빼줬는데,,, 왜 이후에는 pop만 해주나요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
답안 작성시 수기로 작성해도 되나요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요 영상 잘 보고 있습니다.다름이 아니라 ols나 logit 후 summary로 나왔을 때, 답을 이걸 적으면 된다. 라고 하시면서 그냥 숫자를 적어주시던데.그래도 되나요?예) summary 값으로 p_value값이 가장 높은것은? 나왔을때, 따로 model.pvalues.max() 이런방식으로 맥스값을 불러오는게 아니라, 그냥 보고 아 이게 가장 크다 해서 큰 값을 손으로 적어도 되나요? model이후 이름?들 외우기도 힘들어서요 ㅠ 된다고 하면 그 값들은 안외워도 되니까요
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요선생님 작업형2유형의 경우 데이터가 train,test(2개)로 주거나 X_train, X_test, y_train으로 주는 경우가 있는데 제가 이해한 방향이 맞는지 확인해주시면 감사합니다.#2개일 경우(train, test) train 데이터에서 id 분리or 드랍, 타겟값 분리 test 데이터에서 id 분리 or 드랍 train값과 타겟값으로 검증 test 값으로 학습 #3개일 경우(X_train, X_test, y_train) X_train 데이터와 y_train 값(타겟 값)으로 검증, X_test 데이터로 학습 후 제출