작업형2 피쳐엔지니어링 과정에서 pop() 을 사용하는 이유
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
어떤 경우는 pop()을 사용하고 어떤 경우는 사용하지 않는 것 같은데, 명확히 이해가 안되서 질문 남깁니다. pop() 으로 train셋의 target 값 보존을 위한 것인가요? 아니면 df 생성 때 pred 값이 외의 칼럼을 함꼐 출력하기 위해서인가요?
- python
- 머신러닝
- 빅데이터
- pandas
- 빅데이터분석기사
172만명의 커뮤니티!! 함께 토론해봐요.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
어떤 경우는 pop()을 사용하고 어떤 경우는 사용하지 않는 것 같은데, 명확히 이해가 안되서 질문 남깁니다. pop() 으로 train셋의 target 값 보존을 위한 것인가요? 아니면 df 생성 때 pred 값이 외의 칼럼을 함꼐 출력하기 위해서인가요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
import pandas as pd df = pd.read_csv("nf.csv") # print(df.head()) df['date_added']=pd.to_datetime(df['date_added']) df['year']=df['date_added'].dt.year df['month']=df['date_added'].dt.month cond1=df['year']==2018 cond2=df['month']==1 cond3=df['country']=='United Kingdom' #print(len(df[cond1&cond2&cond3])) #print(len(cond1&cond2&cond3)) 여기서 맨밑에 샵 두줄이 어떻게 다른건가요? 두개 결과가 다르게 나오는데 시험상황에서 실수할것 같아요 ㅜ 헷갈립니다.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
시험 테스트 환경에서 파이썬으로 프로그램을 짜고 답안을 도출해서 왼쪽상단에 답안제출 화면으로 가서 답안을 넣고 다시 프로그램 화면으로 돌아가려고 풀이화면을 눌렀는데, 프로그램 작성 코드가 다 없어 집니다. 시험 테스트 환경에서만 그런 것인지? 시험환경에서도 이렇게 된다면 어떻게 해야하는지 문의 드립니다.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님 train과 test 데이터에서 회원ID를 드랍하지 않고 모델에 가져가는 이유가 궁금합니다.
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
위의 다중선형회귀에서 유형 칼럼은 범주형 변수인데, C(유형) 으로 안해줘도 되나요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
sklearn으로 rmse 활용하는 방법을 알려주셨는데 공식이 너무 길고 암기가 어려워서요 코드 전체를 외워야 한다는 말씀이시죠? 그리고, 대안으로 말씀주신 mse는 사용법이 어떻게 될까요? from sklearn.metrics import mean_squared_error 랜덤포레스트 모델생성/학습/예측 ~이후 mse(y_val, pred) 위와 같이 작성해서 점수를 산출하면 되는게 맞는지 궁금합니다!
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2유형 풀때마다 조금씩 헷갈려서 저만의 베이스라인을 잡고가려는데 아래와 같이 틀을 잡아도 괜찮을까요? # 데이터 불러오기 import pandas as pd X_test = pd.read_csv('X_test') X_train = pd.read_csv('X_train') y_train = pd.read_csv('y_train') # EDA실시, 제출용 아이디 값 분리, 데이터 전처리(예: 라벨인코더) X_train = X_train.drop('ID', axis = 1) X_test_id = X_test.pop('ID') from sklearn.preprocessing import LabelEncoder cols = X_train.select_dtypes(include = 'object').columns for col in cols: le = LabelEncoder() X_train[col] = le.fit_transform(X_train[col]) X_test[col] = le.transform(X_test[col]) # 검증 데이터 분리 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 = 2022) # 분류일때는 stratify=y 설정추가 # 랜덤 포레스트 from sklearn.ensenble import RandomForestClassifier # 회귀문제시에는 Regressor from sklearn.metrics import 평가지표 # 시험에서 요구하는 평가지표 model = RandomForestClassifier() model.fit(X_tr,y_tr) pred = model.predict_proba(X_val) # model.predict일수도 있음 print(평가지표(y_val, pred[:,1])) # 0,1중 시험에서 요구하는 값 #예측 pred = model.predict_proba(X_test) # model.predict일수도 있음 print(pred) # 데이터 프레임 만들기, 제출 result = pd.DataFrame({'ID': X_test_id, '변수': pred[:,1]}) result.to_csv('수험번호.csv', index = False) 또한 모델학습시에 predict_proba와 predict을 어떻게 구분하여 사용하는지 아직 헷갈리는데 설명해주시면 감사하겠습니다!
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
왜 출력결과 index 2번에 False라고 나올까요?? True 아닌가요?
미해결
Next + React Query로 SNS 서비스 만들기
지난 이틀전 토요일에서는 문제없이 작동했었는데, 갑자기 게시글 작성 api가 제대로 요청을 받지 않는 것 같습니다. 스웨거로도 요청 보내보았는데, 되지 않아 질문 올렸습니다!
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요 강사님 2유형 최종 예측 시 궁금한게 있어서 질문드립니다. 파라미터 튜닝하면서 RandomForestClassifier() 인자로 'random_state' 를 넘겨주고 있는데, 튜닝이 끝난 후 실제 예측 시에도 'random_state' 값을 그대로 두고 하는게 나은가요? 아니면 튜닝이 끝났으면 해당 인자는 지우고 예측하는게 나을까요? rt = RandomForestClassifier(random_state=2002, max_depth=7, n_estimators=200)
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요 선생님! 원핫인코딩 후 lightgbm을 적용했을때 아래와 같은 코드가 나오는데, 일단 제가 구하려는 rmse 값은 나오는데 아래와 같은 코드가 나오는 이유가 궁금합니다! [LightGBM] [Info] Auto-choosing row-wise multi-threading, the overhead of testing was 0.000150 seconds. You can set force_row_wise=true to remove the overhead. And if memory is not enough, you can set force_col_wise=true . [LightGBM] [Info] Total Bins 386 [LightGBM] [Info] Number of data points in the train set: 3007, number of used features: 8 [LightGBM] [Info] Start training from score 12299.193216 [LightGBM] [Warning] No further splits with positive gain, best gain: -inf
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
원핫인코딩을 하면 항상 이런 에러를 만나게 되는데 어디가 잘못된건지 잘 모르겠습니다.(cols 에는 ['Gender', 'Ever_Married', 'Graduated', 'Profession', 'Spending_Score', 'Var_1'] 이렇게 들어가있다고 나옵니다)
미해결
실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지
a=[1,2,3,4,5] b=a[:] b.append(6) print(id(a[0]),id(b[0])) a[0]=-1 print(id(a[0]),id(b[0])) 위 코드에서 강사님께서 말씀하신대로 b=a[:] 했을때 각 a와 b의 elment들이 같은 id인것을 확인 했습니다. 그런데 a[0]=-1을 했을때 새로운 주소에 할당이 되는것 같은데요 이유가 뭔지 궁금합니다. 그리고 혹시 id로 접근해서 값을 변경하는것도 가능한가요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 df[:int(len(df)*0.7)] 저는 위와 같이 적었는데 이렇게 적어줘도 상관없을까요? 강의에서는 iloc를 사용해서요!
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님! 노트북에 있는 코드 그대로 실행했는데 위처럼 원-핫 인코딩이 안되는데 ㅠ 에러도 안뜨고...이건 무슨 문제일까요? 강의 15분 35초 정도입니다
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
import pandas as pd df = pd.read _csv("basic1.csv") # age컬럼 오름차순 정렬 df['age']=df['age'].sort_values(ascending=True) # age컬럼 3사분위수, 1사분위수 구해서 절대값 차 구하기 print(df['age'].loc[24]) print(df['age'].loc[74]) print(int(abs((df['age'].loc[24])-(df['age'].loc[74]))))
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
위의 에러가 발생하여 질문드립니다. 맨 아래는 제가 작성한 전체 코드 이고, df['subscribed'] = pd.to_datetime(df['subscribed']) 위 코드에서 에러가 발생한 것입니다. from google.colab import drive drive.mount('/content/drive') import pandas as pd import numpy as np df = pd.read_csv('/content/drive/MyDrive/bigdata(빅분기 놀이터)/빅분기 놀이터 Dataset/members.csv') # print(df.head()) df['subscribed'] = pd.to_datetime(df['subscribed']) df['month'] = df['subscribed'].df.month df = df.groupby(df['month']).count() print(df.sort_values('subscribed').index[0])
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
안녕하세요. 혹시 2유형 부분점수도 존재할까요? 그리고 sklearn에는 rmse 함수가 없다고 하셨는데 그러면 무조건 rmse로 평가지표로 문제가 나오면 def(rmse) ~~ 함수 생성해 줘야하는건가요?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
q1 = df['CO2'].quantile(.25) q3 = df['CO2'].quantile(.75) IQR = q3 - q1 -> sum(df['CO2'] < q1 - 1.5 IQR) + sum(df['CO2'] > q3 + 1.5 IQR) 이렇게 코드를 써도 나중에 IQR 이상치를 구하는 문제에서 별 문제가 없을까요..?
해결됨
[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 a1 = a[['s1','s2','s3','s4','s5']] sum = a1.sum(axis=1)>0.1 print(sum.sum()) 문제에서 요구한 칼럼을 뽑아서 새로운 데이터 프레임을 만들어서 코딩했습니다. 이렇게 하니 102개가 나왔는데, 어떤 부분에서 문제가 발생하는지 잘 모르겠습니다.