묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
- 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
컬럼에 그냥 인덱싱할 때와 iloc를 써서 인덱싱할 때 출력값이 달라요.
df = pd.read_csv('../input/bigdatacertificationkr/basic1.csv')print(df['f1'].sort_values(ascending=False).head(12))print(df['f1'].sort_values(ascending=False).iloc[9])print(df['f1'].sort_values(ascending=False)[9]) 위의 코드를 실행하면 하나는 88, 하나는 74가 나옵니다..74는 어디서 나오는 건지 모르겠어요..print(df['f1'].sort_values(ascending=False)[0])은 NaN나오덴데.. 그냥 인덱싱하면 행을 나타내진 않나요?
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2에서 test_ID의 경우
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요안녕하세요 train = train.drop('ID', axis=1) test_ID = test.pop('ID')의 경우 한번 삭제되면 그 다음부터는 이미 삭제 되었기 때문에 오류로 뜨는 것으로 알고 있습니다. 실전에서는 하나의 코드에서만 할 수 있는데, 이럴 때는 어떻게 해야하나요? 한번만 실행시키고, 그 다음부터는 지워야 하나요?
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
대응표본 t 검정에 대한 질문입니다.
안녕하세요..^^대응표본 t 검정에서 정규성 검정을 할 때 강의에서는 afrer와 before의 차, 즉 diff를 이용했는데,다른 자료들을 보면 shapiro(afrer), shapiro(before)와 같이 차를 이용하기 보단 각각에 대한 정규성을 검정하는 것으로 소개된 것들이 많더라구요... 둘 사이의 차이가 분명히 있을 것 같은데, 어떻게 이해해야 하나요?
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
자주 활용되는 판다스 예제 11:35초경에 사용하시는 스킬...
룽고를 적고 한 번에 작음따옴표로 채우시는데 단축키같은게 있는건가요?(룽고 -> '룽고')굉장히 편리해보여서요
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
f1_score
안녕하세요 코딩이 초보라 열심히 따라하고 있는데 f1_score 값이 위의 그림과 같이 error가 났네요 . 뭐가 잘못되었을까요 ?확인 부탁드립니다
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업유형2(신버전) pred 결과값 문의
안녕하세요,문제에서 보면 제출 csv 파일형식 예시라고 해서pred 결과값이 0,1 값으로 구성되어 있는데, pred 확률값으로 제출하는게 맞는지 궁금합니다. 문제에서는 남성을 예측하라 / 여성을 예측하라는거 없이 성별 예측결과를 저장하라고 되어있습니다.그럼 predict_proba가 아닌 predict 함수를 써야되는게 아닌가 싶어서요 roc_auc_score 평가시에는 반드시 predict_proba를 사용해야되는게 맞을까요? (roc_auc_score 평가시 predict로도 일단 코드는 돌아갑니다.)
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회 기출문제 작업형2 질문드립니다.
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요unamed:0 칼럼에 대해 질문드립니다. (사진에서 첫번째 칼럼)unamed:0 칼럼은 시험 때 제출해야할 ID와 관련된 것이 아닌가요? ㅜㅜ 중간에 test_id 안 만드셔서 의문점이 들었어요.
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
여성인 확률을 물어볼 경우 문의 (roc_auc)
혹시 질문에서 여성(0값)일 확률을 물어볼 경우, pred[:,0]으로 roc_auc_score이나 DataFrame 결과값 때 값을 넣으면 될까요??
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5회 기출유형 작업형2 질문입니다.
# 데이터 불러오기 import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") y_train = train.pop('price') X_train = train X_test = test #print(X_train.head(3)) #print(y_train.head(3)) #print(X_test.head(3)) #print(X_train.info()) X_train = X_train.drop(columns = ['model', 'transmission', 'fuelType']) X_test = X_test.drop(columns = ['model', 'transmission', 'fuelType']) #print(X_train.info()) #print(X_test.info()) from sklearn.ensemble import RandomForestRegressor model = RandomForestRegressor() model.fit(X_train, y_train) model_pred = model.predict(X_test) #print(model_pred) pd.DataFrame({'pred':model_pred}).to_csv('수험번호.csv', index=False) 수험번호 = pd.read_csv("수험번호.csv") print(수험번호.head())선생님 안녕하세요 위와 같이 가장 기본형으로 작업을 했습니다. 맨 마지막에 파일을 불러오니 정수형이 아닌 소숫점까지 나오더라구요.이걸 정수형으로 바꾸려면 어디에서 int를 씌워야 할까요?(참고로 선생님께서도 소수점으로 제출하셨지만, 만약에 정말 시험이라면 정수로 제출해야겠죠?)int(model_pred)해도 오류가 나오고, 맨 위에서 아얘 처음부터 해도 오류가 나오네요... 2 코딩을 선생님께 배운지 2주도 채 되지 않아 가장 기본형으로 진행하려고 합니다. 보통 기본형으로 해도 30점 이상 받을 수 있을까요? 일반적으로 후기에 따르면 어느정도일지 궁금하네요. 매번 감사드립니다 ^^
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 작업형2 신버전
알려주신대로 풀어보았습니다import pandas as pdtrain = pd.read_csv("data/customer_train.csv")test = pd.read_csv("data/customer_test.csv")train= train.fillna(0)test= test.fillna(0)from sklearn.preprocessing import LabelEncodercols = ['주구매상품','주구매지점']for col in cols:le = LabelEncoder()train[col]=le.fit_transform(train[col])test[col]=le.transform(test[col])target = train.pop('성별')from sklearn.model_selection import train_test_splitX_tr,X_val,y_tr,y_val=train_test_split(train,target,test_size=0.2,random_state=0)from sklearn.ensemble import RandomForestClassifiermodel=RandomForestClassifier()model.fit(X_tr,y_tr)pred=model.predict_proba(X_val)from sklearn.metrics import roc_auc_score# print(roc_auc_score(y_val,pred[:,1]))pred=model.predict_proba(test)submit = pd.DataFrame({'pred': pred[:,1]})submit.to_csv("result.csv",index=False) 이렇게 제출했는데1.# print(roc_auc_score(y_val,pred[:,1]))이부분은 값을 확인만하고 주석처리하는것이죠?2.from sklearn.metrics import roc_auc_score이렇게만 해도 roc-auc 평가가 적용되나요?3.문제풀때 프린트문은 다 주석처리 하면될까요4.test_size=0.2,random_state=0숫자는 아무거나 적어도 되나요? 5. model=RandomForestClassifier() 이부분에도 랜덤스테이트를 넣으면 좋다고 하셧는데 위와 동일한 랜덤스테잌트인 0을 넣으면 되나요?
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
drop(), dropna(),fillna() 관련 질문
좋은 강의 감사합니다. 제목에 기재한 메소드들에 대해 실습하다 헷갈리는게 있어서,개념 정립차원에서 정리글을 작성해봤는데, 맞는지 확인 좀 부탁드려도 될까요? ////////////////////////////////////////////////////////////////////////////////////////////예: trian데이터 셋에서 작업, "A","B" 칼럼에 결측치 있다고 가정 @@@ drop() // 삭제 메소드@1개의 특정 칼럼(열) 삭제train = train.drop(["A"], axis=1)# "A" 로 해도 진행 됨.@1개의 특정 (칼럼에 해당 하는) 행 삭제train = train.drop(인덱스값, axis=0) @ 복수의 특정 칼럼(열) 삭제train = train.drop(["A","B"], axis=1)@ 복수의 특정 (칼럼에 해당 하는) 행 삭제train = train.drop([인덱스값들], axis=0) @@@ dropna() // 결측치 삭제 메소드@ 결측치 존재하는 칼럼 전체삭제train = train.dropna(axis=1)@ 결측치 존재하는 행 전체삭제train = train.dropna(axis=0) #axis=0 은 기본값이라 생략가능. @ 복수의 결측치 존재 칼럼(열) 삭제train = train.dropna(["A","B"], axis=1)에러 : TypeError: DataFrame.dropna() got multiple values for argument 'axis'@ 복수의 (특정 칼럼 내) 결측치 존재 행 삭제train = train.dropna(subset=["A","B"], axis=0)# train이라는 데이터 셋을 대상으로( train. ), 결측치가 있는 것들 행(axis=0 이 기본)을 제거할 것인데( dropna() ), 그 결측치 우뮤의 기준은 "A","B"칼럼이다 (subset=["A","B"]) @@@ fillna() // 결측치 채움 메소드train.fillna(0) # train데이터셋의 결측치를 전부 0으로 채움 @특정 칼럼의 결측치들을 특정 값으로 동일하게 채움train["A"] = train["A"].fillna(0) # "A" 칼럼의 결측치를 모두 0으로 채워 train의 "A"칼럼에 대입하고, 결과를 동일이름의 변수로 적용@특정 행의 결측치들을 특정 값으로 동일하게 채움# 어떤 인덱스(행)이 갖는 여러 칼럼을 동일한 값으로 채우는 경우는 사실상 없으므로, 알 필요 없음(...??)//////////////////////////////////////////////////////////////////////////////// 일단 여기까지 정리한게 다인데, @ 복수의 결측치 존재 칼럼(열) 삭제train = train.dropna(["A","B"], axis=1) 이렇게 하면 오류 발생해서...dropna() 메소드로 결측치 존재하는 특정 칼럼만 지정해서 삭제하려면 어떻게 해야하나요? 그리고 fillna()메소드에서 @특정 행의 결측치들을 특정 값으로 동일하게 채움이런 경우는 없을테니, 그냥 넘어가도 괜찮은지 궁금합니다.
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출문제 질문
선생님 안녕하세요! 기출 등에서 궁금한 점이 있어 질문드립니다. 1. 기출 1회 작업형 2에서 train데이터와 test데이터의 고유데이터 수가 다르다면 set을 사용하여 어떤 부분이 다른지 알 수 있는 방법을 알려주셨는데 그럼 이 부분을 어떻게 하면되는것일까요? 강의에서는 뭐가 나온건지만 알려주시고 따로 처리를 하시거나 그러지 않으신것같아서요! 2. 기출 2회 작업형 1에서 문제를 푸는데 아래와 같은 에러?워닝?이 떴는데 이유를 잘 모르겠습니다! 이걸 제거하려면 어떻게 해야할까요?3. 작업형 1의 경우에 답을 꼭 마지막에 print()문으로 표시를 해줘야하는 것 맞을까요? 작업형 1,3 모두 따로 답변하는 란이 있는것같았는데 그럼 1,3 모두 풀이과정을 쓰는 곳에선 문제 각각 print()문으로 답을 표시해야 할까요??
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2 체험 환경에서 왜 계속 아래와 같은.. 오류가 뜰까요 ?
(사진)
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 T1-16 문제 풀이중 질문드립니다.
선생님 안녕하세요~ 지금 T1 캐글 문제 풀어보고 있는데,import pandas as pd# 데이터 불러오기df = pd.read_csv("../input/bigdatacertificationkr/basic1.csv")df.head(5)#f2가 0인 데이터 정렬df2 = df.loc[df['f2']==0].sort_values('age', ascending = True)#앞에서부터 20개 데이터 추출df2 = df2.iloc[:19]before = df2['f1'].var()df2['f1']= df2['f1'].fillna(df2['f1'].min()).var()after = df2['f1'].var()print(round(after-before,2)) 이렇게 했을 때 정답값이 저는 -390.68으로 나오는데, 선생님 풀이를 보면 정답 : 38.44으로 나오더라고요.혹시 어디서 틀렸는지 알 수 있을까요? 앞에서부터 20개의 데이터 추출할때저처럼 df2.iloc로 사용해도 무방한가요..?! ㅜㅜ# 앞에서 부터 20개의 데이터 df = df[:20]
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
6회 기출 유형(작업형2) xgboost 관련 질문있습니다!
안녕하세요 다중분리를 할 때 xgboost classification을 적용하는 과정에서 문제가 생겨서 질문드립니다.처음 데이터셋 그대로 xgboost를 쓰니까"ValueError: Invalid classes inferred from unique values of y. Expected: [0 1 2 3 4], got ['High' 'Low' 'Medium' 'Very High' 'Very Low']" # 참고로 y는 train 데이터에서 타겟변수만 따로 pop해놓은 변수입니다.이런 에러가 뜨더라구요, 그래서 for문을 이용해서for i in range(len(y)): if y[i] =='Very Low': y[i] = 0 elif y[i] =='Low': y[i] = 1 elif y[i] =='Medium': y[i] = 2 elif y[i] =='High': y[i] = 3 elif y[i] =='Very High': y[i] = 4이렇게 바꾸니까, 모델과 pred는 돌아가긴 돌아가는데, f1_score(pred, y_val, average= 'macro')로 점수를 내는 과정에서 새로운 오류가 생겨 점수가 나타나지 않습니다..ValueError: Classification metrics can't handle a mix of multiclass and unknown target 이라고 떴고, 이전과 비교를 해보니까랜덤 포레스트 classifier를 돌릴 때 pred는 'Low' 'High' 'Very Low' 'Medium' 'Low' 'Low' 'Low' 'Low' 'High' 'High' ... 이런식으로 되어있는 반면xgboost는 [1 3 0 2 1 1 1 1 3 3 3 3 0 2 1 3 3 3 3 1 2 3 1 2 0 3 3 1 1 0 0 3 0 1 4 0 40 3 1 4 2 2 1 2 3 0 3 1 0 3 1 3 0 0 1 1 2 0 0 4 1 4 2 3 1 2 4 4 4 3 1 0 00 0 4 1 0 4 0 0 3 2 0 1 2 4 3 4 0 1 1 0 1 2 3 0 0 1 3 3 0 0 4 0 2 3] 이렇게 콤마로 되어있는걸 알게되었습니다.그래서 모델을 돌린 뒤for i in range(len(pred)): if pred[i] == 0: pred[i] = 'Very Low' elif pred[i] == 1 : pred[i] = 'Low' elif pred[i] ==2: pred[i] = 'Medium' elif pred[i] ==3: pred[i] = 'High' elif pred[i] ==4: pred[i] = 'Very High' 다시 원상복구를 시켜서,['Low', 'High', 'Very Low', 'Medium', 'Low', 'Low', 'Low', 'Low', 'High', 'High', 'High', 'High', 'Very Low', 'Medium',...] 이 형식으로 만들었고,pred = pd.DataFrame(pred)으로해서.. 음.. 만들었는데 여전히 되지 않습니다.. 결론은 저런 과정을 통해.. 해결하고자 했는데 여전히 못하고있고..xgboost를 사용하려면 어떻게 해야되나요 ?이런 과정을 거치지 않고서도 xgboost를 돌리려면 어떻게 해야하나요?입니다. 감사합니다!
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
빅분기 응시환경 체험에서 데이터셋 변경
ㄱ빅데이터 분석기사 응시환경 체험 화면에서 제시된 데이터셋인 data/mtcsrs.csv를 기출 문제들의 데이터셋으로 변경하는 방법이 있을까요?>?기출문제들을 실제 시험환경에서 풀어보고 싶습니다
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
pred_proba 관련해서 질문드립니다!
안녕하세요 선생님 최근에 올려주신 강의를 통해 어떤 확률 값을 제출하는지 명시가 안되어 있을 경우에는 양성인 값 pred_proba[:,1]를 제출하는 것을 잘 알았습니다!그러면 만약에 어떤 확률을 제출하라는 말이 없고 타겟값이 뇌졸중 0 : 뇌졸중 양성, 1: 뇌졸중 음성 이런식으로 되어 있을 경우에는 뇌졸중 양성인 pred_proba[:,0]을 제출하는게 맞을까요?
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
pred_proba 질문
데이터를 예측할 때 predict가 아니라 predict.proba를 사용하였을 때,데이터프레임을 제작할 때 pred_proba[:,1]로 작성하는 것을 외웠지만 [:,1]을 작성하는 이유를 모르겠어서 질문 드립니다!
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
카이제곱 독립성 검정에서 각 항목의 빈도수가 이상하게 나와요.
import pandas as pd df = pd.DataFrame({ '남자': {'합격': 100, '불합격': 200}, '여자': {'합격': 130, '불합격': 170}}) from scipy.stats import chi2_contingency chi2_contingency(df)Chi2ContingencyResult(statistic=5.929494712103407, pvalue=0.01488951060599475, dof=1, expected_freq=array([[115., 115.], [185., 185.]]))위 코드를 실행하면 expected_freq 값이 행별로 동일하게 나오는데.. 혹시 이유가 있을까요?
 - 
      
        
    해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
예시문제 작업형2(신버전) 질문입니다.
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요분명 CSV 파일 예시는pred0010 이렇게 되어있는데,pred[:,1]로 하면 확률로 표시되는데... 그래도 가능할까요?