model.summary()하면 회귀 계수들이 나오는데 회귀 계수 관하여 답을 제출할때는 상수항은 고려하지 않고 제하나요? 이질문을 드리는 이유는 기출8회 작업형3 문제와 캐글 문제 때문에 여쭈어봅니다 기출8회 작업형3처럼 상수항은'독립변수'에 포함시키지 않는지 이에따라 항상 상수항은 연산에대해서 포함시키지않는것인지 하단 캐글 문제 처럼 회귀계수 중 가장 큰값 같은 문제에서 상수항 계수가 제일 큰데 이러면 상수항 회귀계수를 내는것인지 # 모든 변수를 사용하여 OLS 모델을 적합하고, 회귀계수 중 가장 큰 값은? from statsmodels.formula.api import ols formula = 'y~x1+x2+x3+x4' model = ols(formula, data = data).fit() print(model.summary()) print(model.params[1:].max()
실제 시험 작업형 2유형에서 설명력이 낮은 변수를 삭제하거나 결측치나 이상치가 있는 데이터를 준다면 결측치를 제거하거나 이런것에 기준이 있을까요? 제가 문제를 읽어보고 임의로 결정해서 삭제를 해야할까요 아니면 문제에 있는 모든 변수(고유한ID컬럼제외)를 포함해서 학습해야할까요?
안녕하세요 linkedList에서 BrowserHistory 코드를 구현할 때 저는 처음 linkedList 개념에서 생각했던 대로 linkedList + idx 로 접근하는 방향으로 생각했습니다. # idx로 생각한 예시 # O(n) def insert(self, idx): current = self.head NewNode = Node() # insert하려는 앞 노드까지 for i in range(idx - 1): current = current.next NewNode.next = current.next current.next = NewNode 그런데, BrowserHistory에선 linkedList + class 속성?(current)으로 풀이를 하신 것 같은데 맞을까요? 문제 풀이할 때, visit을 할때마다 현재 idx를 global 변수로 저장해둬야 하나?라는 고민을 했어서 혹시 잘못 생각한 부분이 있는지 알려주시면 감사하겠습니다..!
기출 8회 작업형2 내용 중 원핫인코딩을 하는 부분이 있는데 먼저 cols에 train의 object타입 컬럼을 담아놓고 train = pd.get_dummies(train,columns=cols) test = pd.get_dummies(test,columns=cols) 이런식으로 작성을 하는데, 다른 영상에서는 columns=cols 이 부분을 안 넣는 것도 본 것 같아서요! 저 구문의 의미와 넣었을 때와 안 넣었을 때의 차이점이 궁금합니다!
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 df['날짜']=pd.to_datetime(df['날짜']) df['연도']=df['날짜'].dt.year 으로 변환해서 짜고 싶은데, 오류가 나는 이유가 뭘까요?
작업형 제1유형은 문제 풀이 화면(python) 출력에서도 답안에 제출할 숫자만 출력이 되어야 하는건지 궁금합니다. 작업형 제1유형은 문제 풀이 화면(python)에서 문제를 푼 후, 답안 제출 화면에서 답을 입력하고 제출한다고 되어 있는데, 문제 풀이 화면(python) 속 출력 값도 채점에 포함되는지 여쭤보고 싶습니다. 섹션 16. 67. 6회 기출문제(작업형3) 강의 중 3분 49초 쯤에 작업형3은 작업형1과 달리 출력을 답안에 맞게 할 필요가 없다는 말씀을 하셨는데 작업형 제1유형은 python 출력에서도 답안에 제출할 숫자만 출력이 되어야 하는건지 혼란스러워 질문합니다.
아래와 같이 처리할 경우 결측치가 모두 채워지지 않고, 결과값이 60.0으로 산출됩니다. 혹시 cond에 따른 df[cond].groupby.transform을 바로 result로 받으면 안되는 이유가 있을까요? cond = df['총 학습 시간'] >= 500 result = df[cond].groupby(['학습 카테고리'])['완강률'].transform('mean') #print(df['완강률'].isnull().sum()) == 6 df['완강률'] = df['완강률'].fillna(result) #print(df['완강률'].isnull().sum()) == 2 df[df['학습 카테고리'] == '디자인']['완강률'].mean().round(1)
rmse는 sklearn에서 지원하지 않아 mse를 구한다음 따로 다시 구해야되는 걸로 알고 있는데요, 해당 강의 영상을 보면 from sklearn.metrics import root_mean_squared_error 로 바로 사용하고, root_mean_squared_error(y_val,pred)로 사용하셔서요. 만약 문제에서 rmse 문제가 나오면 이 코드를 그대로 써도 되는 건가요?
안녕하세요, 예시문제 제3유형 1번문제를 푸는데 로그 함수 사용법에 궁금점이 생겨서 질문드립니다. 로그 변환할 때 np.log()와 np.log1p() 이렇게 배웠던 것 같은데, 이 문제 풀 때는 np.log()를 사용하셔서요. 두 개중에 어떤걸 사용하는지 기준이 있을까요?
# 데이터 불러오기 import pandas as pd train = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/5_2/train.csv") test = pd.read_csv("https://raw.githubusercontent.com/lovedlim/inf/refs/heads/main/p4/5_2/test.csv") ytrain = train.pop('price') cols = ['model','transmission','fuelType'] # train = pd.get_dummies(train) # test = pd.get_dummies(test) from sklearn.preprocessing import LabelEncoder for col in cols: le = LabelEncoder() train[col]= le.fit_transform(train[col]) test[col]= le.fit_transform(test[col]) from sklearn.model_selection import train_test_split x_tr,x_val,y_tr,y_val = train_test_split(train, ytrain,test_size=0.2,random_state=2022 ) # from sklearn.ensemble import RandomForestRegressor # rf = RandomForestRegressor(random_state = 2022) # rf.fit(x_tr,y_tr) # y_pred = rf.predict(x_val) import lightgbm as lgb model = lgb.LGBMRegressor(randomstate=0,verbose=-1) model.fit(x_tr,y_tr) y_pred = model.predict(x_val) from sklearn.metrics import root_mean_squared_error result = root_mean_squared_error(y_val,y_pred) submit = pd.DataFrame(y_pred) submit.to_csv('오지욱.csv',index=False) # pd.read_csv('오지욱.csv') # 1324.4944863328471 원핫 랜덤포레스트 # 1320.1181960644112 레이블 랜덤포레스트 # 1271.4972710398029 레이블 lgb -> 선택 # 1282.70065302789 원핫 lgb 작업형 2에서 더 어렵게 나오면 그냥 다시 시험친다는 각오로 원핫,레이블 -> 랜포,lgb 경우의 수 4가지 구한뒤 제일 좋은 수치를 가진 모델로 작업해서 제출하고자 합니다. 지금까지로 봐왔을땐 작업형 2는 이정도로만 해도 충분 하겠죠?
구조체 영상 4분 30초쯤에있는 문장에서 for 문이 이해가 안갑니다. 다른질문을보니까 값(메르세데브벤츠를 구조체에복사)을 대입하기위함이라고하셧는데 그러면 포문 조건문에서 modelName1[i]=\0으로 하셔야하는거아닌가요? modelName1[i]!=\0 이 조건이라면 i에 0이들가자마자 조건이 참이 되어버리지않나해서요.