묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2 실전 환경 연습 pd.dataframe 시 에러 해석 부탁드립니다
pd.DataFrame({'cust_id': X_test['cust_id'], 'gender': pred})기재하였는데요, 아래 에러 화면이 뜨는데 해석이 불가하여 문의드립니다. > Makefile:6: recipe for target 'py3_run' failedmake: *** [py3_run] Error 1Traceback (most recent call last): File "/goorm/Main.out", line 37, in <module> pd.DataFrame({'cust_id': X_test['cust_id'], 'gender': pred}) File "/usr/local/lib/python3.9/dist-packages/pandas/core/frame.py", line 636, in init mgr = dict_to_mgr(data, index, columns, dtype=dtype, copy=copy, typ=manager) File "/usr/local/lib/python3.9/dist-packages/pandas/core/internals/construction.py", line 502, in dict_to_mgr return arrays_to_mgr(arrays, columns, index, dtype=dtype, typ=typ, consolidate=copy) File "/usr/local/lib/python3.9/dist-packages/pandas/core/internals/construction.py", line 120, in arrays_to_mgr
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5회 기출유형(작업형2)
안녕하세요. 강의 잘 듣고 있습니다.보통 작업형2 실행시 train 데이터 id drop하고, test 데이터 id pop처리 했는데(작업형2 모의문제1 에서는 CLIENTNUM 드롭 및 팝처리 함)5회 작업형 2에서는 실시 안 하셨길래... 다른 이유라도 있으신지 궁금합니다.submit으로 내보내기해야하는 값에 price만 있어서 그런가요? 언제 해야하고.. .언제 안 해야하는지.. 넘 헷갈려서요.model을 없애고 돌린게.. rmse가 더 높긴 하더라구요.... ^^;;train = train.drop('model', axis = 1) test_model = test.pop('model')
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형3 예시문제 ttest_rel
ttest_rel 파라미터 중에 a,b가 있는데요강의에서 설명주신 건치료 후 혈압 - 치료 전 혈압이렇게 표시되어 있으니 순서대로 넣어야 한다고 했는데요. 치료 전 혈압 - 치료 후 혈압 이라면stats.ttest_rel(df['bp_before'] - df['bp_after'])위와 같이 작성해야 하는 것으로 이해했습니다. 여기서, ttest_rel 유형은 예시문제 처럼 무조건 두 집단(혹은 조치 전 집단과 조치 후 집단)이 있고, 두 집단 사이의 차이를 이용하는 게 맞을까요?! a와 b를 그냥 설명주신대로만 이해하면 되는지 문의드립니다.
-
미해결처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
early stopping관련
안녕하세요, tensorflow로 다른 강의들을 듣다가 torch를 공부하기 시작한지 얼마안돼서 여쭤보는 질문입니다.tensorflow에서는 callback함수로 간단히 earlystopping이나 checkpoint등을 가져와 쓸 수 있는 모듈이 있는걸로 알고있습니다. 혹시 torch에서는 그런 모듈이 따로 없는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제 1 질문2
import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") from sklearn.metrics import accuracy_score, precision_score, recall_score, f1_score, roc_auc_score train n_train = train.select_dtypes(exclude = object).copy() c_train = train.select_dtypes(include = object).copy() n_test = test.select_dtypes(exclude = object).copy() c_test = test.select_dtypes(include = object).copy() from sklearn.preprocessing import MinMaxScaler cols = ['Customer_Age','Dependent_count', 'Months_on_book', 'Total_Relationship_Count', 'Months_Inactive_12_mon', 'Contacts_Count_12_mon', 'Credit_Limit', 'Total_Revolving_Bal', 'Avg_Open_To_Buy', 'Total_Amt_Chng_Q4_Q1', 'Total_Trans_Amt', 'Total_Trans_Ct', 'Total_Ct_Chng_Q4_Q1', 'Avg_Utilization_Ratio'] scaler = MinMaxScaler() n_train[cols] = scaler.fit_transform(n_train[cols]) n_test[cols] = scaler.transform(n_test[cols]) c_train = pd.get_dummies(c_train) c_test = pd.get_dummies(c_test) train = pd.concat([n_train, c_train], axis =1) test = pd.concat([n_test, c_test], axis =1) train = train.drop('CLIENTNUM', axis =1) test = test.pop('CLIENTNUM') from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split( train, train['Attrition_Flag'], test_size = 0.2, random_state = 2023 ) from sklearn.ensemble import RandomForestClassifier from sklearn.metrics import roc_auc_score model = RandomForestClassifier(random_state = 2023) model.fit(X_tr, y_tr) pred = model.predict(X_val) print(pred) # 정확도 print(accuracy_score(y_val, pred)) # 정밀도 print(precision_score(y_val, pred)) # 재현율 (민감도) print(recall_score(y_val, pred)) # F1 print(f1_score(y_val , pred))위와 같이 코드를 진행시[0 1 0 ... 1 0 1]1.01.01.01.0 이 나옵니다. pred 자체가 1차원으로만 나오고 정확도 정밀도 재현율 F1도 1.0으로만 나오는데 무엇이 잘못된건지 모르겠습니다ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제1 질문
작업형2 문제마다 어떤문제들은 n_train, c_train, n_test, c_test로 나누는 문제들이 있고 그렇지 않은 문제들이 있어서 헷갈리는데요. 수치형변수를 스케일링하는 과정을 거치려면 n_train, c_train, n_test, c_test로 나눠야 하고,스케일링 과정을 생략하고 범주형 변수 인코딩 과정만을 진행할때는 나눌필요가 없는게 맞나요? 작업형 모의문제 1을 혼자 풀어보는 와중 MinMaxScaler로 스케일링을 해보는중인데 from sklearn.preprocessing import MinMaxScaler cols = ['CLIENTNUM', 'Customer_Age','Dependent_count', 'Months_on_book', 'Total_Relationship_Count', 'Months_Inactive_12_mon', 'Contacts_Count_12_mon', 'Credit_Limit', 'Total_Revolving_Bal', 'Avg_Open_To_Buy', 'Total_Amt_Chng_Q4_Q1', 'Total_Trans_Amt', 'Total_Trans_Ct', 'Total_Ct_Chng_Q4_Q1', 'Avg_Utilization_Ratio'] scaler = MinMaxScaler() for col in cols: n_train[col] = scaler.fit_transform(n_train[col]) n_test[col] = scaler.transform(n_test[col])ValueError Traceback (most recent call last)<ipython-input-38-b70edfd82bf0> in <cell line: 5>() 4 scaler = MinMaxScaler() 5 for col in cols: ----> 6 n_train[col] = scaler.fit_transform(n_train[col]) 7 n_test[col] = scaler.transform(n_test[col]) 85 frames/usr/local/lib/python3.10/dist-packages/sklearn/utils/validation.py in check_array(array, accept_sparse, accept_large_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, estimator, input_name) 900 # If input is 1D raise error 901 if array.ndim == 1: --> 902 raise ValueError( 903 "Expected 2D array, got 1D array instead:\narray={}.\n" 904 "Reshape your data either using array.reshape(-1, 1) if "ValueError: Expected 2D array, got 1D array instead: array=[0.58522152 0.08465774 0.60121236 ... 0.06531669 0.06194963 0.52375209]. Reshape your data either using array.reshape(-1, 1) if your data has a single feature or array.reshape(1, -1) if it contains a single sample. 위와 같은 오류가 발생합니다. 혹시 어떤 부분이 잘못된걸까요?반면에 아래와 같이 실행할 경우 오류가 발생하지않습니다. 강의에서는 cols안에 컬럼값이 여러개이므로 반복문을 써야한다고 배웠는데 제가 잘못알고있는걸까요?from sklearn.preprocessing import MinMaxScaler cols = ['CLIENTNUM', 'Customer_Age','Dependent_count', 'Months_on_book', 'Total_Relationship_Count', 'Months_Inactive_12_mon', 'Contacts_Count_12_mon', 'Credit_Limit', 'Total_Revolving_Bal', 'Avg_Open_To_Buy', 'Total_Amt_Chng_Q4_Q1', 'Total_Trans_Amt', 'Total_Trans_Ct', 'Total_Ct_Chng_Q4_Q1', 'Avg_Utilization_Ratio'] scaler = MinMaxScaler() n_train[cols] = scaler.fit_transform(n_train[cols]) n_test[cols] = scaler.transform(n_test[cols])
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
회귀문제에서 이런 오류 났을 때 어떻게 해결해야 하나요?
pred1 = pred1.astype(int) y_val = y_val.astype(int) pred1 = np.log1p(pred1) y_val = np.log1p(y_val) rmse(np.exp(y_val),np.exp(pred1)) MSE loss가 기하급수적으로 증가해서 NaN값이 발생하는 것 같은데어떻게 해결해야할지 모르겠어요! ㅠㅠ 에러는 아래에 있습니다. <ipython-input-35-aacfc97a4692>:3: RuntimeWarning: invalid value encountered in log1p pred1 = np.log1p(pred1) --------------------------------------------------------------------------- ValueError Traceback (most recent call last) <ipython-input-35-aacfc97a4692> in <cell line: 6>() 4 y_val = np.log1p(y_val) 5 ----> 6 rmse(np.exp(y_val),np.exp(pred1)) 4 frames/usr/local/lib/python3.10/dist-packages/sklearn/utils/validation.py in _assert_all_finite(X, allow_nan, msg_dtype, estimator_name, input_name) 159 "#estimators-that-handle-nan-values" 160 ) --> 161 raise ValueError(msg_err) 162 163 ValueError: Input contains NaN.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
df['가격']을 입력해도 오류가 납니다.
데이터 핸들링을 위한 판다스 기초1 강의에 7:33에df['가격']을 입력해도 오류가 납니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
data.csv가 보이지 않습니다.
제가 하나도 모르는데요. ㅠㅠ"데이터 핸들링을 위한 판다스 기초1"에서아무리 찾아도 data.csv가 보이지 않습니다.새로고침을 해도 보이지가 않네요.그 데이터를 따로 올려주실 수 있을까요?감사합니다.
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
ML 모델 배포 질문
안녕하세요. 강의를 통해 많은 도움 받고 있습니다.강의 수강 중에 질문이 있습니다! 모델 학습할 때 학습 데이터를 전처리 과정(라벨 인코딩, 스케일링 등) 과 하이퍼 파라미터 튜닝을 거쳐 모델을 생성하는데요. 이 후 실제 서비스에 사용(웹 서비스에 rest api로 제공) 할 때, 실제 input 값으로 들어오는 값들을 이용해서 예측을 한다고 이해했습니다.이 때 실제 input 데이터는 데이터 전처리가 진행이 안되어서 문자열 데이터도 들어오고, 스케일링 작업이 진행이 안된 데이터일 텐데 이 때 모델 api 호출 전 코드 레벨에서 전처리 과정을 해줘야 하는 걸까요?질문 드리는 이유는 사이킷런 라이브러리를 통한 전처리를 진행해서 모델을 생성했고, 해당 모델을 rest api로 제공 하고 싶습니다. 그리고 해당 api를 spring boot 웹 어플리케이션에서 호출하여 사용하고자 하는데이때 실제 input 값들을 spring boot 코드에서 동일하게 데이터 전처리를 하여 전달하는게 어색해 보여서요.실무에서는 어떻게 서비스 하는지 궁금합니다.LightGBM 을 베이지안 최적화를 통해 하이퍼 파라미터를 찾을 때, n_estimators=100 으로 축소하여 최적의 하이퍼 파라미터를 찾고 나서, 최종적으로 n_estimators=400으로 최적의 하이퍼 파라미터와 함께 모델을 학습한 예제를 봤습니다.n_estimators=100 을 통해 찾은 최적의 하이퍼 파라미터가 n_estimators=400으로 증가시켰을 때도 동일하게 최적의 하이퍼 파라미터라서 이렇게 보여주신걸까요? 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
피처엔지니어링-n/c_train데이터로 분리 후 다시 컬럼 나열해주는 이유?
안녕하세요. 피처엔지니어링 10:33~ 이후 질문입니다!수치형/범주형데이터를 먼저 나누고 print(c_train.head())등을 해보았을 때 범주형컬럼이 있는 걸 알 수 있는데, 라벨 인코딩/원핫인코딩 전에 cols=['~,~,~']으로 범주형컬럼을 재설정해주는 이유가 궁금합니다~~! (수치형은 id 컬럼을 빼기위해라고 이해했습니다) 라벨인코딩에서from sklearn.preprocessing import LabelEncoderle=LabelEncoder()cols=['~~~']for col in cols:le=LabelEncoder() 로 <-이 부분을 두번 적어주는 이유가 무엇일까요? train,test 데이터의 카테고리가 다르면 두 개를 합친 다음->인코딩->분리해야한다고 하셨는데 두개가 다른건 .unique()등으로 눈으로 직접 확인해야 하는건가요..? 같은 부분에서 iloc는 찾을값 -1 로 [ ] 안에 적는다고 알고 있는데 (ex.kaggle t1-23번에서 10번째 값을 찾을 때 iloc[9]로 찾음)line=int(X_train.shape[0]X_train=all.iloc[line: ~~] 로 적으면 test의 첫번째행이 포함되는게 아닌지 궁금합니다!!
-
미해결Do It! 딥러닝 입문
YOLO v5 모델은 비지도학습이 맞나요?
YOLO v5 모델은 비지도학습이 맞나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
모의고사 풀어보기2 관련 질문
선생님, '모의고사 풀어보기2'를 선생님이 알려주신 lgb 로 시험환경에서 코딩 작업을 했는데 에러가 발생해서 문의드립니다. 어떤부분에서 잘못 코딩을 한 건지요?[코딩내용]import pandas as pdpd.set_option('display.max_columns', None)train = pd.read_csv('train.csv')test = pd.read_csv('test.csv')# print(train.shape, test.shape)# print(train.head(3))# print(test.head(3))# print(train.info())# print(train.describe())# print(train.isnull().sum())from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train.drop('target', axis=1), train['target'], test_size=0.1, random_state=2022)# print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape)from sklearn.metrics import f1_scoreimport lightgbm as lgbmodel = lgb.LGBMClassifier(random_state=2022)model.fit(X_tr, y_tr)pred = model.predict(X_val)print(pred[:10])[에러]> Makefile:6: recipe for target 'py3_run' failedmake: *** [py3_run] Error 1Traceback (most recent call last): File "/goorm/Main.out", line 40, in <module> import lightgbm as lgbModuleNotFoundError: No module named 'lightgbm'
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
모의고사 풀어보기2 관련
선생님, '모의고사 풀어보기2' 를 시험환경에서 코딩을 하는데, 선생님께서 말씀해주신 lgb 를 사용하였는데, 없다는 에러가 나와서 문의드립니다.[코딩내용]import pandas as pdpd.set_option('display.max_columns', None)train = pd.read_csv('train.csv')test = pd.read_csv('test.csv')# print(train.shape, test.shape)# print(train.head(3))# print(test.head(3))# print(train.info())# print(train.describe())# print(train.isnull().sum())from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train.drop('target', axis=1), train['target'], test_size=0.1, random_state=2022)# print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape)from sklearn.metrics import f1_scoreimport lightgbm as lgbmodel = lgb.LGBMClassifier(random_state=2022)model.fit(X_tr, y_tr)pred = model.predict(X_val)print(pred[:10])[에러]> Makefile:6: recipe for target 'py3_run' failedmake: *** [py3_run] Error 1Traceback (most recent call last): File "/goorm/Main.out", line 40, in <module> import lightgbm as lgbModuleNotFoundError: No module named 'lightgbm'
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2 풀 때
안녕하세요.강의 잘 듣고 있습니다.작업형 2 풀면서 print(df.head())로 데이터들이 어떻게 생겼는지 샘플로 확인할 때 안 보이는 칼럼은 pd.set_option~~ 쓰고값이 너무 커서 혹은 또 너무 작아서 e가 들어가는 수치값으로 보인다면... 어떤 코드를 실행하라고 강의 중에 말씀해주신거 같은데 ㅠㅠㅠ... 어느 강의였는지 기억이 안 나서요..혹시.. 코드 기억하실까요?ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제3 에러 문의
선생님!!!작업형2 모의문제3에서 마지막에 데이터프레임을 작성하는데서 에러가 발생하는데, 원인과 수정 방법이 무엇인지 궁급합니다.[코딩내용]import pandas as pdtrain = pd.read_csv('train.csv')test = pd.read_csv('test.csv')print(train.shape, test.shape)train.head(3)test.head(3)train.info()train.describe()test.describe()train.isnull().sum()test.isnull().sum()train = train.drop('id', axis=1)test_id = test.pop('id')test.head(3) from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train.drop('output', axis=1),train['output'], test_size=0.1, random_state=2022)X_tr.shape, X_val.shape, y_tr.shape, y_val.shapefrom sklearn.metrics import roc_auc_score, accuracy_score, f1_scorefrom sklearn.ensemble import RandomForestClassifierrf = RandomForestClassifier(random_state=2022, max_depth=5, n_estimators=100)rf.fit(X_tr, y_tr)pred_proba = rf.predict_proba(X_val)pred_proba[:10]print(roc_auc_score(y_val, pred_proba[:,1]))pred_proba = rf.predict_proba(test)pred_proba[:10] pd.DataFrame({'id' : test_id, 'output' : pred_proba[ : , 1]}).to_csv('0000.csv', index=False)[에러메시지]TypeError Traceback (most recent call last)<ipython-input-128-a023f69b95e2> in <cell line: 3>() 1 pred_proba = rf.predict_proba(test) 2 pred_proba[:10]----> 3 pd.DataFrame({'id' : test_id, 'output' : pred_proba[ : , 1]}).to_csv('0000.csv', index=False)TypeError: 'dict' object is not callable
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제 질문
문제1에서 df = df[:int(len(df) * 0.7)] 부분을df = df.loc[:int(len(df) * 0.7)] 로 코딩했더니 답이 다르게 나옵니다. loc는 인덱스가 50이 있는 행까지만 출력되기에 70%의 데이터개수를 할때는 loc가 부적합한건가요? 문제2에서 df = df.dropna(subset=['f1']) 부분을 저는 df = df['f1'].dropna() 라고 코딩했더니 df.shape이 (69,) 로 나옵니다. df = df['f1'].dropna() 이건 해당 컬럼에 결측치가 있는 행을 삭제하는게 아닌가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모의문제2 라벨인코딩 과정 중 에러
안녕하세요! 강의 진행중 코드에서 오류가 생겨 질문드립니다 ㅠㅠ라벨인코딩 하는도중 cols = train.select_dtypes(include='object').columns cols from sklearn.preprocessing import LabelEncoder for col in cols : le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) train() 이렇게 작성하였으나TypeError: Encoders require their input to be uniformly strings or numbers. Got ['int', 'str']이런 오류가 나왔습니다 ㅠㅠ 위의 작성된코드를 살펴봐도 어디가 잘못된지모르겠어서, 또 저 에러가 무슨뜻인지 이해가 안가서 질문드립니다 ㅠ 또한, 데이터 전처리 과정 중 다소 불필요한 데이터(?)컬럼(?)을 삭제하지않고 진행할경우 성능이 크게 떨어질까요? ㅠㅠ 괜히 삭제했다가 나중에 뭔가 안맞아서 결과 도출에 오류가 생길까봐 컬럼을 삭제하는게 맘에 걸려서 시험에서는 되도록 그냥 두고싶습니다 ㅠㅠ 괜찮을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3회 빅데이터 분석기사 실기(작업형2) 질문
안녕하세요 강사님 강의듣던 와중에 질문 있습니다!2회 작업형2에서는 수치형변수 스케일링 과정이 없었고 이번 3회작업형2에서는 수치형변수 스케일링 과정이 있네요. 혹시 이유가 있을까요? 또 3회에서 MinMaxScaler나 StandardScaler를 쓰는것 또한 저의 재량인지 궁금합니다.\ 2회에서는 copy의 과정이 없었는데 3회에서는 copy를 한 이유가 있나요? 시험장에서 어떤방식으로 밀고나가야할지 혼란스러워요ㅠ 괄호안에 ' ' 와 " " 는 동일한가요? 검증데이터 분리시 train_test_split(train.drop('TravelInsurance', axis =1), train['TravelInsurance'] 에서 TravelInsurance를 drop한 이유가 뭔가요? 2회 작업형2에서는 ID를 drop한건 학습할때 필요가 없어서로 알고있는데 해당 문제에서는 Unnamed를 drop해야하는것 아닐까요? 헷갈리네요ㅠㅠ 수치형 변수 스케일링 과정에서cols = ['Age', 'AnnualIncome', 'FamilyMembers', 'ChronicDiseases'] display(n_train.head()) n_train[cols] = scaler.fit_transform(n_train[cols]) n_test[cols] = scaler.transform(n_test[cols]) n_train.head()이 부분에서 2회 작업형 2번처럼 cols안에 여러개가 들어있으므로아래와 같이 반복문을 쓰거나for col in cols: le = LabelEncoder() X_train[col] = le.fit_transform(X_train[col]) X_test[col] = le.transform(X_test[col]) 아래와 같이 일일히 col을 설정해줘야 오류가 안생기지 않나요?# col = 'Warehouse_block' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col]) # col = 'Mode_of_Shipment' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col]) # col = 'Product_importance' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col]) # col = 'Gender' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col])
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
n개 데이터 합치기/분리하기 질문
라이브러리 및 데이터 불러오기 그리고 EDA강의중,17:04->데이터 합치기19:03->데이터 분리하기 부분입니다. N개의 데이터를 합치고 분리할 때2개가 주어진 경우와 3개가 주어진 경우를 안다고 가정하고 ['income']을 기준으로 합치거나 분리하시던데,시험에서는 2개나 3개 중 한가지로만 주어지지 않나요? 그럴 경우 어떤 컬럼을 기준으로 합/분리하는지 어떻게 알 수 있을까요..? 같은 강의의 EDA 전반y_train데이터에 대해서는 결측치나 타입,크기 등을 확인하지 않아도 되는건가요..? 데이터전처리 강의에서 11:00->결측치채우기 -최빈값에서mode() [0] 을 쓰시던데 [0]이 의미하는 바가 무엇인지 알고싶습니다!