데이터 전처리 과정에서 train= train.drop('customerID', axis=1) test = test.drop('customerID', axis=1) target=train.pop('TotalCharges') train = pd.get_dummies(train) test = pd.get_dummies(test) 이렇게 customerID를 drop하는 처리 진행 후 인코딩을 해서 학습 평가 까지는 잘 진행이 되는데, 예측단계(pred=rf.predict(test))에서 아래와같은value에러가 뜹니다. ValueError: The feature names should match those that were passed during fit. Feature names unseen at fit time: - customerID_CUST0001 이런 경우는 무조건 train과 test를 하나로 묶어서 원핫인코딩을 진행해야하나요? train, test 각각 개별로 진행하면 안되는 떄의 기준이 궁금합니다.
1. df.groupby(['지역코드','성별'])['총대출액'].sum() 그룹화할떄 지역코드, 성별 둘다 할때 보통 groupby('컬럼명') 인데 이때는 ( ) 안에 [ ] 이걸 해야하는건가요? 두개이상으로 그룹화할때 (['지역코드'], ['성별'] ) 이 아니라 (['지역코드', '성별'])인 이유가 있을까요 2. 1) "발생건수"와 "검거건수"를 따로 분리 cond1 = df['구분'] == "발생건수" cond2 = df['구분'] == "검거건수" df1 = df[cond1].iloc[:, 2:] df2 = df[cond2].iloc[:, 2:] 검거율을 바로 계산하지 않고, 따로 분리하는 이유가? 이해가 잘 안갑니다 3. df.groupby(['부서', '성과등급'])['근속연수'].mean() 이것과 df.groupby(['부서', '성과등급'])['근속연수'].transform("mean")이것은 다른가요? transform("mean")으로 써야하는건가요? df.groupby('기준컬럼')['값컬럼'].mean()이랑 df.groupby('기준컬럼')['값컬럼'].transform('mean')이랑 차이점을 잘 모르겠습니다 그럼 그룹별로 합계? 이런거 할떄도 df.groupby('기준컬럼')['값컬럼'].transform('sum') 이렇게 해야하나요? 뒤에 transform('')괄호 부분에 max,min 등등을 넣는건가요? 4. 각 직원의 '연봉 / 근속연수' 값을 계산하여, 그 값이 세 번째로 큰 직원의 근속연수 구할때 sort_values로 데이터 본 다음에 눈으로 본 값으로 알아서 1을 (loc 이런걸로 구하지 않고) a=1 이렇게 코딩해도 괜찮나요? 감사합니다
2회차 모의고사의 인강에서는 labelencoding을 사용후에 여러개의 모델을 사용하였는데, 꿀팁? 인강에서는 LGBM을 사용하면 obj 타입을 category로 변경만 해주면 된다고 하셨습니다. 어떤 방식이 더 낫고 맞는걸까요? 현재 상황은 라벨인코딩 사용 가능하며, 시험 때 랜덤포레스트와 LGBM을 사용하려 계획중입니다.
1. 유의하지 않은 독립변수 개수 구할때 summary보고 바로 8이라고 적어도되나요? print(sum(model.pvalues[1:] >0.05)) 이 코딩도 해야하는지 궁금합니다 2. 2-1, 2-2(결정계수) 구하는것도 그냥 summary 보고 바로 적어도되나요? 3. 반올림이나 정수 구하는것도 그냥 기본 수치 보고 코딩 안하고 바로 적어도되는지 궁금합니다. 점수엔 영향을 미치지 않나요? 감사합니다
안녕하세요 빠른 답변 감사드립니다. 저도 제가 뭘 잘못했는지 모르니 질문하는 것도 어려움이 있네요, 서버와 도메인 다시 구입해서 처음부터 다시 시작해보겠습니다. 기초 과정도 3번 다시 처음부터 하면서 대략적으로 n8n에 대해서 이해할 수 있었는데 서버관련된 것은 정말 어렵네요 제가 맥을 쓰고 있어서 호환되지 않는 프로그램과 설정때문인것 같기도 하고 제대로 안될 때 GPT 도움받는데 어쩔때는 해결이 되기도 하고 오류가 무한 반복이 되고 하면서 꼬인 듯합니다. 기초 과정에서 맥에서 가상으로 윈도우(페럴레리)를 쓰고 있어서 그냥 Railway를 사용하다가 결국은 도커에 다른 것들 설치하는 것에서 포기를 했었는데... 가상 윈도우에서도 도커가 재대로 설치가 되는지 궁금합니다
1. import pandas as pd df = pd.read _csv 이거 적는것은 (데이터 불러오는 것은) 시험에서 제공하고 있다고 했는데 (그럼 시험장에선 따로 안 적어도 되는것이죠?) 이 사이에 from sk.learn.preprocessing import MinMaxScaler 이건 매번 직접 적는건가요 2. train = train.drop('customerID', axis=1) test = test.drop(['customerID'], axis=1) target = train.pop('TotalCharges') ID를 drop안하고 그냥 타겟=만해도 되나요? 보통 그냥 tartget=~만 하는 것 같아서요 단순한(?) 질문만 하는것 같네요ㅠ 일단 쭉 빨리 들으면서,, 다시 복습하고자 합니다(조금씩 뭔가 알거는 같은데, 시간이 촉박하다 보니 빈틈이 생기는 것 같지만.ㅠ) 끝까지 열심히 하겠습니다 항상 좋은 강의 감사드립니다
안녕하세요. 언제나 수고가 많으십니다 :) ols나 logit 모델을 만들 때, 문제에서 ' 해당 변수가 범주형이라고 명시되어 있는 경우 '에만 변수에 C()를 감싸주라고 하셨는데요! 제가 궁금한 부분은 ' <<명시>> 가 정확히 무엇인지' 입니다. 예를 들어 시험 환경의 문제를 보면 아래와 같이 표현되어 있는데요. Pclass: 좌석 클래스 (1: 1등석, 2: 2등석, 3: 3등석) 위의 표현은 Pclass가 범주형이라고 명시되어 있는 것이라고 이해하고, Pclass 사용 시 C()로 감싸주면 될까요? 아니면 말그대로 문자로 "이 변수는 숫자이지만 범주형입니다."라고 적힌 것만 명시로 받아들어야 하나요?
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 안녕하세요 앞서 ols을 만들때 data=train 즉 트래인에 있는 데이터로 학습을 한건데 테스트를 예측할때 data=test가 아닌 원래 train데이터로 학습된 모델을 그대로 사용하는이유가 뭘까요? 문제에서 1-2에서 적합한 회귀모형을 이용하라는 단서때문인가요? 아니면 원래 train 데이터로 학습된 모델을 사용해야해서 그런간가요
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 분류 문제일때 타켓값을 인코딩 안해도 되는 건 항상 그런 건가요? 범주형 칼럼 인코딩은 필수인데 범주형 타겟값 인코딩은 왜 안하는지 궁금합니다..!
안녕하세요 강사님 강의 잘 듣고 있습니다. 강의 내용중 좀 더 이해하고 싶은 부분이 생겨 질문드립니다. #질문 1 8분53초의 화면상의 ppt 슬라이드를 보면 행렬의 shape를 (a,m ), (m *n ), (a, n) 적어주셨는데 각각의 의미가 궁금합니다. (a,m) 은 무엇을 의미하는 행렬이며 이때 a,m각각은 무엇을 나타내는지, (m*n) 행렬은 무엇을 의미하는 행렬이며 m,n은 무엇을 나타내는지 (a,n) 행렬은 무엇을 의미하는 행렬이며 a,n은 무엇을 나타내는지. ( 제 추측으론, m은 모델의 vocabulary 사전의 개수. 또는 토큰id의 max값 같기도하고...n은 벡터의 길이 같기도하고....) #질문 2 그리고 파인 튜닝을 위해 qlora n*n 행렬이 그림상에 추가되었는데, 개념적으로 데이터가 추가되었다고는 이해되는데 실제 물리적으로는 데이터가 어떻게 추가된것인지 궁금합니다. 단순히 m*n 행렬에 n행이 추가되어 m+n, n 행렬이 되었다든지...
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 처음에 문제를 풀 때는 원핫 인코딩 방식을 쭉 쓰는 것을 선호했기 때문에 결측치가 존재하는 행만 제외하는 방식(train.dropna(axis=0) 함수 이용)으로 train과 test의 결측치 처리를 하고, 사진에 보이는 코드를 이용해서 원핫 인코딩을 진행하였습니다. 하지만 이렇게 인코딩을 하니 이후 train_test_split을 진행하고, 랜덤포레스트로 학습을 진행하려고 하니 런타임이 1분 이상으로 지나치게 오래걸리는 문제가 나타났습니다. 문제를 해결하지 못해 강의에서 설명한 방식대로 train.nunique의 수와 결측값이 많은 컬럼들을 drop하고 labelencording을 하는 방식으로 수정하여 끝까지 풀 수는 있었습니다. 시험에서 겪었다면 너무 당황했을 것 같은데 연습때 겪어서 천만다행이라 생각합니다. 혹시 이런 경우처럼 nunique의 개수가 많거나 데이터 자체의 shape가 거대할 경우는 원핫보다는 label 인코딩을 진행하는 것이 더 원할하게 진행하는 것이 옳은 방식인가요? 아니면 사진에 나온 인코딩 방식에 에러가 있었는지 질문드리고자 합니다.
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 google colab으로 LabelEncoder를 타이핑 하면 Lab.. 쯤에서 자동 완성하기가 뜨는데 시험에서는 자동완성 없이 대문자와 풀 스펠링을 정확하게 외워가야 하는 것이죠? LabelEncoder