묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
Kaggle T-23
import pandas as pd df = pd.read_csv('../input/bigdatacertificationkr/basic1.csv') df = df.sort_values('f1', ascending = False) f1_10 = df.iloc[9, 3] print(f1_10) df['f1'] = df['f1'].fillna(f1_10) print(df.shape) median1 = df['f1'].median() df = df.drop_duplicates(subset = ['age']) print(df.shape) median2 = df['f1'].median() print(median1) print(median2) print(abs(median2 - median1))위와 같이 코드 작성시 결과가88.0 (100, 8) (71, 8) 77.5 75.0 2.5로 나옵니다. 원래 풀이에는 중복값제거 중앙값이 77로 나와있는데 저는 코드를 수정해봐도 어디에 문제가 있는지 잘 모르겠습니다! 혹시 제 코드 어디에 문제가 있는걸까요?
-
미해결비전공자를 위한 진짜 입문 올인원 개발 부트캠프
sqlite 데이터 삭제가 안됩니다...ㅠ
강의에서는 레코드삭제 버튼이 생겨서 데이터를 지울 수 있었는데, 제가 할 때는 생성되지 않아 지울 수가 없었습니다.SQL 실행에서 명령어를 넣어보려 해도 에러가 뜹니다. 어떻게 하면 데이터를 지울 수 있나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
sum함수 작성법의 차이
작업형1 모의문제1에서print(df['f3'].sum())print(sum(df['f3]))위와 아래 코드의 차이가 무엇인가요 1번은 왜 sum함수가 뒤에 있는데도 계산이 되나요? 둘다 오류없이 작동은 합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
이상치 IQR 처리
cols = list(X_train.columns[X_train.dtypes != object]) print(cols) for col in cols: Q1 = X_train[col].quantile(0.25) Q3 = X_train[col].quantile(0.75) IQR = Q3 - Q1 min_iqr = Q1 - 1.5*IQR max_iqr = Q3 + 1.5*IQR X_train.loc[X_train[col]<min, col] = min_iqr X_train.loc[X_train[col]>max, col] = max_iqr print(X_train)이렇게 하고 X_test도 똑같이 해도 될까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
언제 subset을 사용하는지 모르겠습니다
작업형 1 모의문제1(2번문제)1.df['f1'] = df['f1'].dropna(subset=['f1'])2.df['f3'] = df['f3'].fillna(df['f3'].mode()[0])1번은 f1컬럼의 데이터를 삭제할때 subset을 사용하고2번은 f3컬럼의 최빈값으로 추가할때는 왜subset을 사용하지 않나요?1번,2번의 차이가 궁금합니다
-
해결됨딥러닝 CNN 완벽 가이드 - TFKeras 버전
안녕하세요 교수님. shift에 관해서 질문있습니다.
width_shift와 height_shift가 서로 반대로 실행이되는거같습니다.혹시 단순한 오류인걸까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2에 대한 질문입니다.
안녕하세요, 정성스레 만들어주신 강의 완강하고 다회차 복습중입니다.이곳에 질문올려도 되는 것인지 모르겠는데 맨땅으로 시작하다 보니 복습하면서 작업형2 내용에 대한 전반적으로 자잘하게 궁금한 점이 있어 문의드립니다.1. 기출 회차별로 최초 데이터가 3개가 주어지는 경우, 2개가 주어지는 경우가 있는데요.3개가 주어지는 상황에서 X_train, X_test 값의 고유값- unique() 개수가 다른 경우 데이터를 합친 뒤 작업을 진행해야 한다고 말씀주셨는데요. - 이 경우 데이터를 합치는 작업(concat)은 원핫인코딩/라벨인코딩의 오류를 막기 위한 것 같은데 맞게 이해한 것일까요? - 인코딩 작업을 하지 않느다면 데이터 합치는 작업을 건너뛰어도 되는 것일까요? 혹은 반드시 데이터를 합쳐서 작업해야 하는 경우가 또 있을까요? 2. 원핫인코딩과 라벨인코딩을 각각 어떤 상황에 사용해야 하는지 감이 잡히질 않아서요.cols = train.select_dtypes(include='O').columns위와 같이 범주형 데이터를 단순히 통으로 묶어서 작업을 해도 되는 것인지몇몇 강의에서처럼 일부 범주형 컬럼들만 선택해서 사용을 해야 하는 것인지(이때 컬럼 선택 기준이 있을지)궁금합니다.3. 강의에서는 데이터 전처리 과정 결측치 처리 외 이상치 처리에 대한 내용은 비교적 간단히 설명해주시고 넘어가 주셨는데요. (IQR 이나 '나이' 컬럼이 음수인 경우 정도)- 캐글을 통해 추가적인 방법론을 익혀두어야 할까요?- 분류든 회귀든 예측한 결과값의 평가점수가 꼭 높지 않아도 전체적인 절차가 문제 없었다면 넘어가도 무방할까요?4. 문제에서 요구하는 값에 따라 모델링 작업에서 model=randomforestClassifier()pred = model.predict(test) 또는 pred = model.predict_proba(test) 위와 같이 predict를 사용하는지 predict_proba를 사용하는지 달라지던데요.(분류문제일 경우) 검증 방법에서 roc_auc_score는 predict_proba를accuracy_score, precision_score, recall_score, f1_scoe 는모두 predict 결과를 사용하시더라고요.predict 값을 요구하는 문제라면 검증방법도 predict를 사용하는 것인지이와 별개로 roc_auc_score와 그 외 검증 방법은 predict/predict_proba 사용방법이 고정된 것인지 궁금합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
빅분기 실기시험에서 숫자형태의 범주형데이터에 원핫인코딩
숫자형태의 범주형데이터에 원핫인코딩은 필수로 해줘야 하는지 궁금합니다. 숫자형태로 되어있는 데이터이지만 사실상 범주형 데이터라고 판단할수 있는 nunique() 결과값의 범위가 있을지 궁금합니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
시험 시 저장/제출 관련하여 궁금합니다!
작업형 1,2,3 문제 풀이 순서는 상관이 없나요? ( 잘 안풀릴 경우 다음 문제로 넘어갔다가 다시 되돌아와서 푸는 것이 가능한가요? ) 작업형 1,2,3 모두 저장해가면서 풀면 되는건가요?데이터자격검정 사이트에서 올려준 시험 관련 사항 파일을 보면 작업형 2에만 저장 관련하여 언급이 되어있어서 헷갈려서요:) 또, 작업형 유형 상관 없이 제출을 이미 눌렀어도 다시 수정하고 제출하면 마지막 제출만 인정되는 것 맞나요?셋 다 모두 비슷한 질문이긴 하지만 시험장에 확실히 알고 가고 싶어서 질문 드립니다:)항상 감사드립니다 !!😊😊
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 질문있어요
세 가지 질문이 있는데요..1) 이 문제 해결에 있어서 train_test_split은 하면 좋지만 굳이 안해도 되는 내용이 맞나요?2) 아래와 같이 x_train, y_train 으로 학습을 하고 x_test에 대해서 예측을 하면 될까요?3) 문제에서 보면 roc_auc_score로 평가한다 했는데, 이건 출제자가 평가하기 때문에 이 문제상에서는 단순 확인 및 학습을 위해 써본거지 답에는 필요 없었던 부분이 맞을까요? model = RandomForestClassifier(random_state=2022) model.fit(X_train, y_train) pred = model.predict_proba(X_test) submit = pd.DataFrame( { 'cust_id':cust_id, 'gender':pred[:,1] } ) from sklearn.ensemble import RandomForestClassifier model = RandomForestClassifier(random_state=2022) model.fit(X_tr, y_tr) pred = model.predict_proba(X_val) # 검증 데이터 셋으로 평가 from sklearn.metrics import roc_auc_score roc_auc_score(y_val, pred[:,1]) # test 데이터 예측 pred = model.predict_proba(X_test) pred # 데이터 프레임 만들기 submit = pd.DataFrame( { 'cust_id':cust_id, 'gender':pred[:,1] } )
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5회 기출유형 (작업형2) 강의 코드 질문
# 데이터 불러오기 import pandas as pd train = pd.read_csv("train.csv") test = pd.read_csv("test.csv") target = train.pop('price') from sklearn.preprocessing import LabelEncoder cols = train.select_dtypes(include='object').columns le = LabelEncoder() for col in cols : train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) from sklearn.ensemble import RandomForestRegressor rf = RandomForestRegressor(random_state = 0) rf.fit(train, target) pred = rf.predict(test) submit = pd.DataFrame({'pred': pred}).to_csv('950326.csv', index=False) from sklearn.metrics import mean_squared_error def rmse(y_true, y_pred): return mean_squared_error(y_true, y_pred)**0.5 print(pd.read_csv('950326.csv')) y = pd.read_csv("y.csv") print(rmse(y, pred))안녕하세요, 5회 기출유형 풀면서 코드 질문 드립니다.제가 나름 최소한 이 정도는 작성해서 제출해야겠다 마음먹으면서 작성한 코드입니다.작성해주신 rmse 함수에 넣어보니까1418.5216392812827라는 수치가 나와서 train_test_spilt은 하지 않아도 될 것 같은데, 괜찮을까요?물론 남은기간 공부하면서 익숙해지면 train_test_split도 진행할까 생각중이긴 합니다 ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
2회 기출유형(작업형2)에서 불필요한 컬럼(ID)제거시 오류
안녕하세요~ ㅠㅠ오늘도.. 강의를 복습하며 오류와의 싸움중입니다 ㅠㅠX_train = X_train.drop('ID',axis=1) X_test_id = X_test.pop('ID')다름이 아니고 불필요한 컬럼을 제거하는 과정에서 오류가 자주 발생하는데, 위 작업 진행 후 실행 -> 라벨인코딩 등 다른 코드 입력 후 재실행 할 경우 ID 컬럼이 이미 사라졌는데 또 실행되다보니(?) ID 컬럼은 찾을수 없다 라는 오류로 해석됩니다 ㅠㅠ ----> 4 X_train = X_train.drop('ID',axis=1) 5 X_test_id = X_test.pop('ID') KeyError: "['ID'] not found in axis"1) 위와 같은 오류는 어떻게 해결해야하나요?2) 불필요한 컬럼을 삭제하는 과정은 꼭 필요한건가요? 3) X_train = X_train.drop('ID',axis=1) 의 경우 'X_train'에서 id 컬럼을 드랍한다 라고 이해했는데, X_test_id = X_test.pop('ID') 는 'X_test_id' 라는 새로운 곳에 X_test의 ID 컬럼을 저장한다? 로 이해하면 되는건가요? ㅠㅠ (이 질문을 하는 이유는 이전 예시문제 강의에서는 컬럼 명을 그대로 사용하여 cust_id = X_test.pop('cust_id') 로 사용했으나, 이번 강의에서는 ID = X_test.pop('ID') 가 아닌 'X_test_id'를 이용했기떄문입니다 ㅠㅠID = X_test.pop('ID') 요렇게 하면 안되나요? )
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
1일 확률, 0일 확률 관련
predict_proba의 결과는 무조건 1일 확률로 주는건가요? y_tr 에 0 과 1 로 되어 있는데 pred_proba 변수로 받아지는 확률예측값이 0과1중에 1일확률인줄 어떻게 아는건가요...?만약 y_tr 이 1과2로 되어 있으면 predict_proba는 어떻게 처리하나요...? 항상 감사드립니다
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
제출할때는 random_state 지워야 하는지 궁금합니다
모델링 중에는 random_state 넣은 상태로 피처엔지니어링의 효과를 확인을 하는 점은 이해했는데요, 나중에 csv 만들어서 제출할때에는 random_state값은 지운 모델로 학습시켜서 예측한 결과를 제출해야하나요? random_state값으로 뭘 넣는지에 따라 학습이 많이 달라진다면 영향이 있는건지 해서요 이상할수도 있는 질문들도 잘 대답해주셔서 항상 감사하고 있습니다 !!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
구름 환경 제출 질문
1유형이랑 3유형은 답안 print()이외에 다른 print() 들은 주석처리하고 한번 더 실행시켜서 실행결과에 답만 뜨도록 한 후 제출 클릭하면 되는 걸까요?2유형도 csv파일 만들고 그외에는 다른 print()들은 주석처리하고 한번 더 실행시켜서 제출클릭하면 되는 걸까요?테스트케이스는 언제 쓰는 건가요?구름환경에서 코드를 돌려보면 1줄당 어느정도 돌아가는지 시간이 나오지 않고 전체코드가 몇 초안에 돌아가는지 시간이 나오던데 1줄 당 1분 내인가요? 아니면 전체코드가 1분 내에 돌아가야 하는 건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
object 데이터 인코딩 관련 질문
안녕하세요 선생님공부중인데 질문이 생겨서 글 적습니다.object 타입의 컬럼들을 cols라는 변수에 담고, 각각의 범주의 개수에 따라 라벨인코딩, 원핫을 진행하는 것으로 이해하고 있습니다. 보통 cols로 일괄적으로 처리했습니다. 그런데 범주의 개수가 많거나 적은 경우에 따라 일부는 라벨 인코딩, 일부는 원핫인코딩으로 처리하는 방식이 가능한가요? 아니면 항상 일괄적으로 처리해야 할까요?object 타입을 인코딩 하지 않고 그대로 머신러닝 할 수 없는 것으로 알려 주셨는데(인코딩을 하지 않으면 drop 후 모델 훈련을 시켜야 된다고 하셨던 것으로 기억합니다), 제가 기억하고 있는 바가 맞는지, 맞다면 그 이유가 궁금합니다.작업형3 관련 강의 업로드 일정이 궁금합니다. 강의 다 듣고 캐글가서 연습하려구요..
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2
안녕하세요 강사님.작업형2 확률 데이터를 구하는 문제에서문제 예시와 직접 출력한 데이터의 소수점 자릿수 차이가 많이 나는데 이대로 제출해도 상관이 없을까요?그리고 소수점 자릿수가 많이 출력 되는 이유는 무엇인가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 최종 타겟 데이터 관련 질문
안녕하세요. 질 좋은 강의 덕에 이제 작업형2를 나름 능숙하게 잘 수행하고 있습니다.다만 최종 데이터를 선택하는 방법이 헷갈리네요. 최종 예측결과가 2개의 컬럼으로 표현될 때그냥 하던대로 pred[ : , 1]로 roc_auc_score를 확인하고 있는데요. 첫번째 컬럼으로 제출해야되는 상황이 문제에 따라 생길 것 같은데문제에서 설명해주는 내용이 조금 난해합니다 ㅠㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
T1-9 코드
import pandas as pd import numpy as np df = pd.read_csv('../input/bigdatacertificationkr/basic1.csv') mean = df['f5'].mean() std = df['f5'].std() standard = (df['f5'] - mean) / std print(standard.median()) 강사님 위와같이 Z정규화 공식을 직접 만들어 대입했는데 풀이의 정답과는 유사하지만 소수점이 살짝 다르게 나옵니다. 제 공식이 잘못된걸까요?제 풀이의 정답: 0.2593132572746011풀이 정답: 0.260619629559015
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
dir(), help(), __all__
기존 강의에서 dir(), help(), all 사용법을 알려주셨는데요작업형2에서는 유용히 사용할 수 있을것 같은데작업형1에서는 어떻게 사용 가능할까요? 제가 1-3문제를 푸는도중 to_datetime 함수가 생각나지않아 dir(), help(), all 방식을 사용하여 찾아보려했는데 계속 오류가 떠서요. 혹시 작업형1에서 위와 같은 함수가 생각이 안날때 dir(), help(), all를 쓰는 방법을 알 수 있을까요?