묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
유형별 제출방법 문의
시험 회차가 증가함에 따라 제출 방법이 조금씩 달라진 것 같은데요. 유형1, 유형3의 경우,코딩화면 제출버튼은 없어지고 별도 답안제출 화면에 정답만 입력하는게 맞는지요?그렇다면 코딩 중간에 있는 print()문을 주석(삭제) 처리할 필요도 없는건지요?유형2의 경우도 코딩 중간에 있는 print()문을 주석(삭제) 처리 필요 없는지요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션10- 예시문제 작업형2(신버전) 문의
안녕하세요 섹션10- 예시문제 작업형2(신버전)아래 풀이에서 어떤것이 잘못됬는지 알 수있을까요ㅠ? # 출력을 원하실 경우 print() 함수 활용# 예시) print(df.head())# getcwd(), chdir() 등 작업 폴더 설정 불필요# 파일 경로 상 내부 드라이브 경로(C: 등) 접근 불가#데이터불러오기import pandas as pdtrain = pd.read_csv("data/customer_train.csv")test = pd.read_csv("data/customer_test.csv")# 확전분모평예정# roc_auc(pred=predict_proba) / 양성(1)값=남자/ 분류모델#확인# print(train.shape, test.shape)# print(train.head())# print(test.head())# print(train.info())# print(test.info())# print(train.isnull().sum())# print(test.isnull().sum())#전처리(결측값제거/문자제거/인코딩)#결측값제거# print(train.isnull().sum())train['환불금액'] = train['환불금액'].fillna(0)# print(train.isnull().sum())test['환불금액'] = test['환불금액'].fillna(0)#문자제거cols=train.select_dtypes(include='object').columnscols# print(train.info())train = train.drop(cols,axis=1)# print(train.info())test = test.drop(cols,axis=1)#cols = ['회원ID', '총구매액', '최대구매액', '환불금액', '방문일수', '방문당구매건수', '주말방문비율', '구매주기']#target = train.pop('성별') #pop=성별을 target에 대입하고 나머지를 drop#인코딩train = pd.get_dummies(train, columns=cols)test = pd.get_dummies(test, columns=cols)#분리from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train.drop('성별',axis=1), train['성별'], test_size=0.2, ramdom_state=2022)#모델#pred=predict_probafrom sklearn.ensemble import RandomForestClassifiermodel = RandomForestClassifier()model.fit(X_tr,y_tr)pred = model.predict_proba(X_val)print(pred)print(pred[:,1])# #평가from sklearn.metrics import roc_auc_scoerprint( roc_auc_scoer(y_val, pred[;,1]) ) --실제,예측# #예측pred=model.predict_proba(test)predsubmit = pd.DataFrame({ 'pred': pred[:,1]})submit# #저장submit.to_csv('result.csv', index=False)print(pd.read_csv('result.csv'))# 사용자 코딩# 답안 제출 참고# 아래 코드는 예시이며 변수명 등 개인별로 변경하여 활용# pd.DataFrame변수.to_csv("result.csv", index=False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션10 예시문제 작업형 1번
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요. 섹션10 예시문제 작업형 1번 질문있습니다.캐글에서 하던대로 하다보니 식이 강의에서 알려주시는 것에 비해 짧아졌는데요. import pandas as pddf = pd.read_csv("data/mtcars.csv") from sklearn.preprocessing import MinMaxScalerscaler = MinMaxScaler()df['qsec'] = scaler.fit_transform(df[['qsec']])#print(df['qsec']) cond = df['qsec'] >0.5print(sum(cond)) 이렇게 해도 9가 나오는데, 이렇게 풀어도 괜찮나요?좋은 강의 항상 감사드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
4회기출 작업형2유형 강의 에서 수치형 범주형
안녕하세요. 4회기출 작업형2유형 강의에서basic방법과 intermediate 방법이 있는데실제 시험에서는 수치형 데이터만 활용(basic)해서 해도 되나요?범주형 데이터가 있다면 범주형 데이터도 활용 해야할까요?...ㅠ 안그러면 점수를 낮게 받을까요?..ㅠ 이 강의회차에서는 basic방법이 성능이 더 좋게 나왔는데수치형만 쓸지수치형과 범주형 둘다 활용할지 어떻게 판단해야하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
6회 2번 문제
안녕하세요 : ) 좋은 강의 잘 보고 있습니다. 다름이 아니라 시험 때 분류 / 회귀 랜덤 포레스트 활용하는게 안전할까요? 분류시 AdaBoostClassifier 사용하니까 랜포 보다 조금 더 좋은 성능 보이던데 혹여나 더 높은 성능 좋은 모델 했다가 과대 적합으로 떨어질까봐 걱정되네요 ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
선생님 질문이 있습니다!
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 랜덤포레스트 학습과정 중에from sklearn.ensemble import RandomForestClassifiermodel = RandomForestClassifier()model.fit(X_tr, y_tr)pred = model.predict_proba(X_val)[:,1] roc_auc를 학습하기위해pred = model.predict_proba(X_val)[:,1]해당코드를 사용하셨는데[:,1] 부분이 이해가 잘안되어 질문드립니다. 인덱스 전체/ 1번 칼럼까지 범위를 설정하는 이유가 있을까요?아니면 제가[:,1] 의미를 위처럼 잘못 이해하고 있는거라면 짚어주시면 감사하겠습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이 문제에서 수치형 데이터와 범주형 데이터를 분리하는 과정이 꼭 필요한가요?
강사님은 수치형 데이터와 범주형 데이터를 n_train, c_train, n_test, c_test로 분리하셨더라구요.근데 꼭 분리 안하고, col 명만 설정해서 그냥 피처엔지니어링 하면 안되는 걸까요?근데 저는 점수가 0.75 정도밖에 안나왔습니다 ㅎㅎㅎ강사님은 0.8 넘게.... 제가 쓴 코드입니다..# 수치형 스케일링from sklearn.preprocessing import RobustScalerscaler = RobustScaler()cols = ['Age', 'AnnualIncome','FamilyMembers', 'ChronicDiseases'] <- 제가 변환하고 싶은 int 형 변수들을 넣었어요. 타겟레이블이 int형인데 뺄줄 몰라서 그냥...train[cols] = scaler.fit_transform(train[cols])test[cols] = scaler.fit_transform(test[cols]) # 라벨인코딩from sklearn.preprocessing import LabelEncodercols2 = train.select_dtypes(include="object").columns for col in cols2 : le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col])이러고 데이터 X_tr, X_val, y_tr, y_val로 분리하고 랜덤포레스트를 적용헀습니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 회귀, 작업형3 회귀
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요작업형2에서 모델링 및 평가에서 회귀모델 여러가지를 대입해보던 것과작업형3 회귀분석에서 formula 패키지 사용해서 회귀식 사용하는것은 어떤 차이가 있을까요?? 회귀분석이라고 해서 혼자 타이핑을 andomforestregressor 해보다가 지우고 formula를 따라 썼는데 너무 초보적인 질문일것같지만 궁금해서 문의드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
메모장 이용 불가로 변경되었습니다.
안녕하세요 강의 잘 듣고 있습니다.지난 시험부터 메모장 이용 불가로 변경되었는데 강의 내용에 업데이트 반영이 되어 있지 않아서 공유드립니다. o 시험 중 필기구, 전자·통신기기(계산기 등) 및 PC에 설치되어 있는 프로그램(윈도우 메모장, 윈도우 계산기, 엑셀 등) 사용 불가 https://www.dataq.or.kr/www/board/view.do?bbsKey=eyJiYnNhdHRyU2VxIjoxLCJiYnNTZXEiOjU1MzQ3NX0=&boardKind=notice 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이 문제에서 df=pd.concat 으로 X_train과 y_train의 타겟을 합치는 이유가 무엇인가요?
train이 두개로 나누어져서 제공되서x_train+y_train['타겟'] 을 합치는거까지는 이해했는데요이걸 df에 받아서 넣는데 그 다음 코드부터는 df를 사용하지를 않더라고요!그래서 모든 코드 다 작성 후에, df=concat 어쩌구 했던거를 주석처리해서 숨겨봤는데도 같은 결과가 나왔어요. 합쳐진 df를 어딘가에 사용한다면 이해가 되는데,df를 사용하지도 않는데 concat으로 합쳐놓는 이유가 무엇인가요? 참고 차 제가 작성했던 코드도 붙여넣어봅니다. 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")# print(X_train.shape, X_test.shape, y_train.shape)df = pd.concat([X_train, y_train['Reached.on.Time_Y.N']], axis=1)df# 라벨인코딩from sklearn.preprocessing import LabelEncodercols = X_train.select_dtypes(include="object").columnsfor col in cols : le = LabelEncoder() X_train[col] = le.fit_transform(X_train[col]) X_test[col] = le.transform(X_test[col])# # 랜덤 포레스트 위해서 데이터 분리X_train = X_train.drop("ID", axis=1)X_test_id = X_test.pop("ID")# # 데이터 분리from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split( X_train, y_train['Reached.on.Time_Y.N'], test_size=0.2, random_state=2022)# 랜덤포레스트from sklearn.ensemble import RandomForestClassifierrf = RandomForestClassifier(random_state=2022, max_depth=3, n_estimators=200)rf.fit(X_tr, y_tr)pred = rf.predict_proba(X_val)from sklearn.metrics import roc_auc_scoreprint(roc_auc_score(y_val, pred[:,1]))pred = rf.predict_proba(X_test)submit = pd.DataFrame({ "ID" : X_test_id, "Reached.on.Time_Y.N" : pred[:,1]})submit.to_csv("submit.csv", index=False)pd.read_csv("submit.csv")
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2유형 모델 학습 관련
안녕하세요, 좋은 강의 감사드립니다!학습, 검증데이터를 분리하는 것은 평가를 통해 개선하기 위한 것으로 이해를 했습니다.그렇다면 개선을 한 뒤 학습, 검증데이터를 다시 학습데이터로 합친 후 예측을 진행하는 것이 점수에 더 도움이 될까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
윌콕슨 검정 반대로했을때 값이 달라지는현상
아무리봐도 둘이 값이 같게나와야할거같은데 p-value가 다르게나옵니다. 왜이런걸까요??비모수검정이라 정규분포가 아니라서 대칭성이 없어서 그런건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 T1-12에서 접종률 100% 이상 데이터 먼저 삭제하지 않는 이유
아래 문제에서 100% 넘는 접종률을 먼저 삭제하지 않고, 문제에서 언급한 순서대로 풀이해야 하나요??your code 부분에 적은대로 풀이를 하면 답이 다른데 이대로 풀면 안되는 이유가 궁금합니다! 문제 : 주어진 데이터에서 상위 10개 국가의 접종률 평균과 하위 10개 국가의 접종률 평균을 구하고, 그 차이를 구해보세요(단, 100%가 넘는 접종률 제거, 소수 첫째자리까지 출력)# your code # 100%가 넘는 접종률 제거 cond = df["ratio"] <= 100 # 상위 10개 국가의 접종률 평균과 하위 10개 국가의 접종률 평균을 구하고, df = df[cond] df = df.sort_values("ratio", ascending = False) top10 = df["ratio"].head(10).mean() bottom10 = df["ratio"].tail(10).mean() # 그 차이를 구해보세요(소수 첫째자리까지 출력) print(round(top10 - bottom10,1)) 풀이df2 = df.groupby('country').max() #시간에 따라 접종률이 점점 올라감 df2 = df2.sort_values(by='ratio', ascending = False) #100%가 넘는 접종률 제거 cond = df2['ratio'] <= 100 df2 = df2[cond] top = df2['ratio'].head(10).mean() bottom = df2['ratio'].tail(10).mean() print(round(top - bottom,1))
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
카이제곱 통계량은 어떻게 구하면 되나요?
빅분기 실습환경이 오픈되어 제3유형 문제를 풀어보고 있는데요. 데이터는 타이타닉 침몰 생존여부 예측을 위한 자료입니다. Gender와 Survived 변수 간의 독립성 검증을 실시하였을 때, 카이제곱 통계량은? - 오브젝트 타입을 원핫인코딩으로 변환한 후 stats.chisquare(df[ 'Gender'], df['Survived'])를 수행해야 하나요? ols를 통해 summary() 까지는 알겠는데.....그 이후 어떻게 해야 할지 잘 모르겠네요..ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
randomforestclassifire()에서 random_state안 적어도 되나요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 randomforestclassifire()에서 random_state안 적어도 되나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
cols로 안 묶고 하면 실행이 안되는 건가요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요cols로 안 묶고, 배웠던 데로 데이터 분리에서 train.drop('성별, axis=1) 이렇게 했는데 오류가 뜹니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2에서 random_state=2022
5회 작업형2유형 기출 강의에서 수치형 활용 부분에서 random_state=2022 는 무슨 의미인가요?공부하면서 random_state=0 도 본것 같은데 두개 차이가 무엇인가요? 왜 하는건가요? 2022가 그냥 임의의 숫자인것 같은데 그냥 아무 숫자를 하는건가요? 안해주면 안되는거죠?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2번 모의고사2
1.선생님께서 test데이터의 행 부분은 절대 삭제하면안된다고 하셨는데수치형 데이터만 남기기위해 열 데이터(컬럼)는 삭제해도 상관없는건가요? 2.제출예시를 보니까 이렇게 나와있던데 마지막으로 만든 csv 에서 head(3)을 해야하는건가요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2회 작업형2 질문있습니다.
다른 교재 2회 복원에서는 SVM 모형을 이용하는 문제가 있는데 영상, 최근 올려주신 마인드맵, 질문게시판 svm, svc 검색해봐도 정보가 안보이네요. 2~3회에만 나오고 svm 관련은 출제 가능성이나 풀이할때 사용가능성이 떨어져서 그런건지요...
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
predict 와 predict_proba
예측 결과를 ROC_AUC 평가 지표를 사용하라고 해서, predict_proba를 사용하면, 결과값이 1인 경우의 확률값(소수점 값)으로 나오는데, 예시 화면에서는 0 또는 1의 값으로 나타내게 되어 있어서, 평가시 predict로 해야할지 predict_proba를 적용해야 할지 다소 혼란스러운 부분이 있는데 실전에서 어떻게 해야 할까요?