https://www.kaggle.com/code/agileteam/t1-23-drop-duplicates 안녕하세요 강사님 캐글에 정리해주신 1유형 문제 중 궁금한게 있어서 질문드립니다. 지문 내용 중 - 결측치는 f1의 데이터 중 10번째 인덱스에 위치한 값으로 채움 풀이를 보면 f1 컬럼 기준 내림차순 정렬 수행 후, 10번째 인덱스 값(10번째로 큰 값)으로 풀이 되어있습니다. 문제 지문에 상위 혹은 10번째로 큰 값이라는 내용이 없어서 처음 풀이 시, 저는 주어진 데이터에서 정렬 없이 10번째 인덱스 값을 사용하여 풀이하였습니다. 시험에서 위와 비슷한 유형의 문제 풀이 시 내림차순 정렬을 기본 전제로 풀이해야하나요?
안녕하세요. 현재 노트북으로만 진행해왔는데요. 시험전에 시험환경에 적응하는게 좋다는 말을 듣긴했는데, 어디서 어떻게 적응할 수 있는지 모르겠습니다.시험환경에서 기출문제를 풀어볼 수 있는건가요?시험환경에서 어떤것이라도 해볼 수 있는 링크나 방법이 궁금합니다. 1유형에서 답을 제출할때 제출하는 칸에 코드를 넣는것인지, 숫자를 넣는것인지 모르겠습니다. 코드를 넣는게 맞다면, 코드가 길어지면 어떻게 해야할까요? 한줄로 이어 붙이면 될까요? 케글에 있는 작업형1 모의고사2 번 문제인데, 만약에 코드가 답이라면 cond = (df['f1'].isnull()) df = df[cond] result = df['f5'].median() print(result) 이렇게 붙여넣으면 될까요?
기출4회 작업형2 설명 중에서 target = train.pop('Segmentation') 코드가 있는데 이게 a = train['Segmentation'] 과 어떤 차이가 있나요? target이나 a 나 train 데이터프레임에서 Segmentation 컬럼을 추출하는 것은 동일하지 않나요?
안녕하세요 RMSE나 어렵다면 MSE를 사용하면 된다고 하셨는데요 from sklearn.metrics import mean_squared_error def rmse(y_true,y_pred) : 1. 사이킷 런에서 mse 를 불러왔는데 다음줄에서 def rmse를 사용하는 이유가 무엇인지 모르겠습니다 2. 그리고 y_true, y_pred 라는 변수를 트레인_테스트 분리 한적이 없는데 이건 어떤걸까요? mse = mean_squared_error(y_val,pred) 이 부분은 다른 한가지 방법으로 푼것과 동일하고 이해가 가는데요 return mse **0.5 result=rmse(y_val,pred) 3. 이건 단순 암기?;;의 영역으로 보면될까요? mse로 풀면 된다고 하셨는데 결과는 rmse로 출력하고 있는 것 같고 rmse/mse가 혼재된상태로 코드를 작성하는거같아서요 print('/n rmse:',result) mse방식으로 통일된 형태(조금더 쉽게,,)로 평가하는 방법이 있을지 궁금합니다 감사합니다
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 import pandas as pd from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import roc_auc_score from sklearn.model_selection import train_test_split train = pd.read_csv("data/customer_train.csv") #3500 test = pd.read_csv("data/customer_test.csv") #2482 train['환불금액'] = train['환불금액'].fillna(0) test['환불금액'] = test['환불금액'].fillna(0) #print(train.isnull().sum().sum()) cols = ['회원ID','총구매액','최대구매액','환불금액','방문일수','방문당구매건수','주말방문비율','구매주기'] target = train.pop('성별') #용자 코딩 #print(train['성별'].value_counts()) #여2남1 train = pd.get_dummies(train) test = pd.get_dummies(test) xtr,xval,ytr,yval = train_test_split(train[cols],target,test_size = 0.2, random_state = 0) print(xtr.shape,xval.shape,ytr.shape,yval.shape) rf = RandomForestClassifier() rf.fit(xtr[cols],ytr) pred = rf.predict_proba(xval[cols]) pred = rf.predict_proba(test[cols]) submit = pd.DataFrame({'pred':pred[:,1]}) submit.to_csv('result.csv',index=False) result=pd.read_csv('result.csv') print(result.shape) print(result.head()) 강의에서처럼 마지막 제출 pred 변수 만들 때 rf.predict_proba(test) 하니까 안만들어져서 rf.predict_proba(test[cols])로 생성했는데, 맞게 코딩한건가요?
선생님 강의중 2회 2유형 문제 강의중 X_train 과 y_train 그리고 X_test 까지 총 데이터가 3개가 주어진 문제에서 df = pd.concat([X_train,y_train[' Reached.on.Time_Y.N']], axis =1) 로 데이터를 합쳐주셨는데 이러면 검증데이터분리 부분에서 (target = df.pop(' Reached.on.Time_Y.N')으로 타겟데이터를 뺐을때) X_tr, X_val, y_tr, y_val = train_test_split(df, target, test_size = 0.2, random_state = 1) 이렇게 합친 데이터를 사용해서 분리해도 문제가 없을까요?
다른 질문에 답변주신 내용에 대해서 추가 질문하려고 합니다. train에는 있는데, test에 없다면 라벨인코딩 가능 test에는 있는데 train에는 없다면 데이터를 합쳐서 라벨 또는 원핫 인코딩 가능 이거에 대해서 부가 질문이 있습니다. 데이터를 합친다는게, Target Column Pop한다음 개수 일치시킨 다음, concat으로 합친다는 의미인거죠?(axis=0) 그다음 원핫인코딩이나 라벨인코딩을 하고, 원래 Test Data의 수를 iloc나 loc로 분리해서 이후 작업을 진행하라는 의미인건가요??
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 코드1에서 train데이터의 수치형데이터 cols만 사용하는 이유는 뭔가요?cols로 안하고 전체 데이터로 돌리면 오류가 납니다.시험에서도 수치형데이터만 사용하나요?
연도별로 총 범죄 건수(범죄유형의 총합)의 월평균 값을 구한 후 그 값이 가장 큰 연도를 찾아, 해당 연도의 총 범죄 건수의 월평균 값을 출력하시오. (반올림하여 정수로 출력) 2020: 11, 2021: 9, 2022: 12, 2023: 9, 2024: 9 다음은 각 해당 년도별로 존재하는 월 데이터의 갯수입니다. 12개가 아니고 누락된 데이터가있더라구요 df['tot'] = df.loc[:,'강력범죄':'교통범죄'].sum(axis=1) df['날짜'] = pd.to_datetime(df['날짜'],format = '%Y년 %m월') dict = df.groupby(df.날짜.dt.year)['날짜'].count() df.groupby(df.날짜.dt.year)['tot'].mean() 저는 다음과 같이 코드를 작성하였는데 풀이노트북엔 / 12로 되어있더라구요,,, 뭐가 맞는건가요? mean으로하면 sum / 전체갯수 니까 값이 다른부분에 대해선 인지하고있습니다.