묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
카이제곱검정 기대빈도
안녕하세요 6회 작업형 3에 질문이생겨서 문의드립니다. 카이제곱 적합성검정의 경우 모든 기대빈도가 5이상일때 사용한다고 알고있었는데요배포해주신 문제의 데이터는 보면 무증상 70% 그외 30%로 전체데이터수를 곱해 빈도로 변환해주면 [2.0, 1.0, 3.0, 14.0]입니다.문제가 [감기약의 예상 부작용 비율과 항암약의 부작용 관찰값이 통계적으로 유의미하게 차이가 있는지 확인하려 한다. 카이 제곱 검정을 사용하여 검정 통계량을 구하시오.] 이경우 기대값에서 빈도가 5이하인 아픔: 10% 조금 아픔 5% 속 쓰림 15% 의 범주를 합쳐주고 검정을 해야하는것 아닌가요?그냥 검정을해도 값이 나오긴하지만 이 값이 신뢰할만한 값이라고 할수있는건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
6회 기출 유형 작업형2
안녕하세요, 6회 기출 유형 작업형2에서오브젝트형은 제외하고 분석하니f1_score값이 0.96이 나왔고, 선생님은 get_dummies 하니 0.9 이상으로 높은점수가 나오더라구요Q1) 오브젝트형 제외해서 높은점수 나오면 제외해도 될까요 ? Q2) 제외를 안하고 모델에 포함시킨다면 get_dummies 말고 LabelEncoder()를 사용해도 될까요 ?
-
해결됨2주만에 통과하는 알고리즘 코딩테스트 (2024년)
완전탐색(For 반복문) 6분 질문드립니다.
100만 이하의 약수가 존재하는지 확인할 때 반복문을 왜 101만까지 돌리는 건 가요? 저는 입력 받은 수까지 확인을 했었거든요... 이유가 궁금합니다!백만보다 큰지 안 큰지 확인하기 위함인 건 알겠는데 수학적으로 이해가 좀 안 가서 질문을 드립니다.추가적으로 알고리즘을 풀다보면 수학적인 지식이 좀 많이 부족하다고 느끼는데 어떻게 채우는 게 좋을지도 궁금합니다.. 6개월 정도 회사 다니면서 코테에만 집중해서 이직하는 게 현재 목표입니다. 제가 작성한 답안입니다.답 도출까지는 못했습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
roc_auc에서 DataConversionWarning 발생
체험환경 2유형 학습중에 DataConversionWarning가 발생해서 문의드립니다. 아래와 같이 코드 작성 후에 roc_auc로 성능평가하는 과정에서 워닝이 발생했는데 이유가 무엇인가요?? # print(train.shape, test.shape) # (3500, 11) (2482, 10)# print(train.isnull().sum())# print(test.isnull().sum())train = train.fillna({'환불금액' : train['환불금액'].median()})test = test.fillna({'환불금액' : test['환불금액'].median()})# print(train.isnull().sum().sum())# print(test.isnull().sum().sum())# print(train.info())# print(test.info())# print(train.describe(include='O'))# print(test.describe(include='O'))# print(train.head())target = train.pop('성별')train = train.drop(['회원ID'], axis=1)test_id = test.pop('회원ID')# print(train.shape, test.shape) c_train = train.select_dtypes(exclude='number')n_train = train.select_dtypes(include='number')c_test = test.select_dtypes(exclude='number')n_test = test.select_dtypes(include='number')from sklearn.preprocessing import LabelEncoderfor i in c_train.columns: le = LabelEncoder() c_train[i] = le.fit_transform(c_train[[i]]) c_test[i] = le.transform(c_test[[i]])train = pd.concat([c_train, n_train], axis=1)test = pd.concat([c_test, n_test], axis=1)# print(train.head())# print(train.shape, test.shape)from sklearn.model_selection import train_test_splitx_tr, x_val, y_tr, y_val = train_test_split(train, target, random_state=2024, test_size=0.2, stratify=target)print(x_tr.shape, x_val.shape, y_tr.shape, y_val.shape)from sklearn.ensemble import RandomForestClassifierrfc = RandomForestClassifier(random_state=2024)rfc.fit(x_tr, y_tr)pred1 = rfc.predict_proba(x_val)print(pred1[:,1].shape)print(y_val.shape)from sklearn.metrics import roc_auc_scoreprint(roc_auc_score(y_val, pred1[:,1])) >>프로세스가 시작되었습니다.(입력값을 직접 입력해 주세요)> (2800, 9) (700, 9) (2800,) (700,)(700,)(700,)0.6341283030687979/usr/local/lib/python3.9/dist-packages/sklearn/utils/validation.py:63: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel(). return f(*args, **kwargs)/usr/local/lib/python3.9/dist-packages/sklearn/utils/validation.py:63: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel(). return f(*args, **kwargs)/usr/local/lib/python3.9/dist-packages/sklearn/utils/validation.py:63: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel(). return f(*args, **kwargs)/usr/local/lib/python3.9/dist-packages/sklearn/utils/validation.py:63: DataConversionWarning: A column-vector y was passed when a 1d array was expected. Please change the shape of y to (n_samples, ), for example using ravel(). return f(*args, **kwargs)프로세스가 종료되었습니다.
-
미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
Exercise 20. 데이터 구조 (리스트) 질문
(1) 요청사항사용자로부터 주민등록번호를 입력받아, 성별을 '남성' 또는 '여성'으로 출력하세요.주민등록번호 뒷자리 맨 앞자리는 성별을 나타냄예) 800001-1231231 주민번호를 입력받으면 1을 출력하면 됨1이면 남성, 2이면 여성을 출력하면 됨(2) 입력코드data = input()if data[7] == '1':print ("남성")else:print ("여성")(3) 코드결과800001-1231231남성입력코드에서 data[7]이면 '-'인데, 어떻게 코드 결과가 원활하게 나올 수 있는 걸까요?요청사항을 충족하려면, 아래와 같은 코드를 입력해야 하는 거 아닌가요??(4) 수정코드data1 = input()if data1.split("-")[1][0] == 1:print ("남성")else:print ("여성")예제로 주신 코드가 오류 없이 작동하는 점이 궁금해 질문드립니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출4-작업형1 sum, len 관련 질문
기출문제4-작업형1 에서 데이터의 갯수를 구하는 부분에서 강의 답안에는 len 을 사용하셨는데아래와 같이 sum 사용시에는 에러가 나는 이유가 궁금합니다. print(len(df[cond1 & cond2 & cond3])) #6 데이터프레임의 행의 개수print(len(cond1 & cond2 & cond3)) #8807, true/false 경우 모두 포함print(sum(cond1 & cond2 & cond3)) #6 true만 계산print(sum(df[cond1 & cond2 & cond3])) #오류나는 이유???
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
기출문제 3회 작업형1-2 질문드립니다
선생님 코드는 이렇게 했을 때 정답 51이 나오는데요.df.isnull().sum() df = df.dropna() df.isnull().sum() df.iloc[:int(len(df)*0.6)] Q1 = df['f1'].quantile(0.25) print(Q1)제가 이렇게 했을 때는, 답이 55로 나오더라고요.import pandas as pd df = pd.read_csv("../input/big-data-analytics-certification/t1-data1.csv") df = df.dropna().reset_index(drop = True) df.iloc[:int(df.shape[0]*0.6)]['f1'].quantile(0.25) 행 개수를 뽑을때, df.shape[0]으로 할 수 있는 걸로 알고 있는데, 어디가 잘못된걸까요? ㅜdf.shape[0]으로 행개수 뽑고, 0.6곱한뒤 36.6->36으로 하라고 하셔서 round처리 안하고 int했는데 무슨 차이가 나는지 모르겠습니다... 그리고 reset_index를 하고 안하고 답 차이도 나는데, 어느게 좀 더 안전한 방식일까요? ㅜㅜ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
분산분석
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요일원분산 분석에서 독립변수에 문자열 처리와 상관없이 동일한 결과값을 얻었고 이에 ols가 회귀분석에서 말씀해주셨듯이 문자형 변수를 알아서 변환해주는 것으로 이해했습니다. 이원분산분석에서는 문자열 처리에 따라 결과값의 차이가 났는데 그 이유로 문자열로 되어있는 종자 변수는 ols가 알아서 변환을 해주지만 여기서는 특이하게 수치형 자료로 나와있는 비료 변수가 사실은 범주형이기 때문에 ols가 알아서 변환을 하지 못해 문자열 처리를 꼭 처리를 해줘야 하는것으로 이해하면 정확할까요? 거기에 분산분석이 연속형 변수~범주형 변수이기에 분산 분석의 경우 의도적으로 다 C() 처리를 해주는게 깔끔하다고 수업중에 말씀하신것으로 이해하면 될까요?? 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
모의고사 3 - 작업형 2번 문제
모델 학습 및 예측에서 roc_auc_score 가 1이 나와버려서 뭔가 이상하게 학습을 시킨 것 같은데 괜찮은건가요? 그리고 X_test 를 이용해서 predict 할 때는 타겟값인 TravelInsurance 가 없어야하는 것 아닌가요? 왜 오류가 나는지 모르겠습니다... 아래는 어떤 식으로 전처리되었는지 X_tr과 X_test 입니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
문자열 처리에 관한 질문
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요 강의 내용 6분 40초와 관련이 있습니다. 제가 2번 문제를 풀다가 Gender 부분을 C(Gender) 처리를 하지 않고 풀었는데 강의를 다시 보다 보니 문자열 처리를 해주는 것을 알았습니다. 근데 문자열 처리 유무와 상관없이 값이 전부 동일한 것을 보고 이렇게 질문을 드립니다. 회귀분석에서 ols가 범주형 변수가 있어도 C() 처리를 안해줘도 된다고 하셨는데 로지스틱 회귀 분석에서도 동일한지 여쭤보고 싶습니다. 왜 결과값이 문자열 처리에 상관없이 동일하게 나오는 건가요? 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 모의고사 1문제_drop
이 부분은 왜 해주나요??왜 해야하나요?pop이 의미하는 바가 뭔지 설명해주세요,
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 모의고사 1문제_삭제
cols을 train데이터 안에 object만 모은 데이테인데, test데이터는 cols로 모은적이 없는데,, 저렇게 cols 로 작성해서 삭제해도 되는 건가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
섹션 5 - 작업형2 모의문제 3 질문
안녕하세요, 학습 중 질문이 있어 글 작성합니다.코드를 정확하게 이해하고자 자세하게 여쭤보겠습니다.1. 강의 9:20 경 코드from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val = train_test_split(train.drop('output', axis=1), train['output'], test_size=0.15, random_state=2022) # 랜덤 포레스트 from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier() rf.fit(X_tr, y_tr) pred = rf.predict(X_val)rf.fit에는 당연히 X, y의 train 데이터가 들어가야 하겠는데.pred에 X_val이 들어가야 하는 이유는 무엇인가요? 2. 강의 22:10 경 코드pred_proba = xgb.predict_proba(test)pd.DataFrame({ 'id' : test_id, 'output' : pred_proba[:, 1]}).to_csv('0000.csv', index=False)roc_auc_score에서 pred가 아닌 pred_proba를 사용함은 이해를 했으며(output이 확률이니까),pred_proba[:, 1] 에서 :1의 의미를 알고싶습니다.답변주심에 미리감사드립니다!
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형 2유형 질문있습니다!
일단 공부방법을 결과물 도출로 중심을 잡고 코딩하느라 전처리나 기본 인코딩, 스케일링만 진행해서 수행하는데 분류 문제시 정확도를 출력해보면 50퍼 근처로 출력되는데 감점요인이나 점수 획득에 문제가 있을까요??
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
캐글 작업형 1-6 결측치 제거
f1 컬럼의 결측치 제거 부분에서 df = df[~df['f1'].isnull()]을 사용하셨는데 이 부분이 잘 이해가 안됩니다 ㅜ 간단하게 설명해주실 수 있을까요?혹시 dropna를 사용해서 결측치만 제거를 할 수 있는 방법도 있을까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
7회 기출유형(작업형2) 강의 질문
RMSE 구할 때,mean_squared_error(y_valid, pred, squared=False) squared=False 작성하면 출력되던데 시험장에서 이렇게 작성해도 될까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5-2 type2
5-2 type2의 문제를 수치형 데이터만 선택해서 랜덤포레스트로 학습시키고 MSE로 평가했습니다.이렇게 코드를 작성해도 될까요?MSE 값이 좀 큰 것 같은데 이 방법이 아닌 다른 방법으로 풀어야 하는 걸까요? train['reviews_per_month'] = train['reviews_per_month'].fillna(0)test['reviews_per_month'] = test['reviews_per_month'].fillna(0)cols = ['id', 'host_id', 'latitude', 'longitude', 'minimum_nights', 'number_of_reviews', 'reviews_per_month', 'calculated_host_listings_count', 'availability_365']test_id = test['id']target = train.pop('price')train = train[cols]test = test[cols]from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train, target, test_size = 0.2, random_state=0)import numpy as npfrom sklearn.metrics import mean_squared_errorfrom sklearn.ensemble import RandomForestRegressorrf = RandomForestRegressor()rf.fit(X_tr, y_tr)pred = rf.predict(X_val)print(mean_squared_error(y_val, pred))#60931.44110148261pred = rf.predict(test)submit = pd.DataFrame({ 'id' : test_id, 'price' : pred})submit.to_csv("submit.csv", index=False)
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
(섹션5) train_test_split 관련 질문
안녕하세요. 섹션5 [작업형2] 모의문제 및 캐글 - 2번쨰 강의 관련 질문입니다.검증데이터 분리 시 아래와 같이 코드를 적었는데, from sklearn.model_selection import train_test_splitX_tr, X_val, y_tr, y_val = train_test_split(train.drop('price', axis=1), train['price'], test_size = 0.15, random_state=2022)윗 행에서 train.drop('price') 후, train['price']을 하는 이유가 뭔가요?'price'값이 타겟이기 떄문에X_tr 은 'price'가 없어야 하고,반면, X_val은 'price'만 있어야 하니까 위 코드가 나온게 맞는것인지요?감사합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
escape 코드
파이썬 Print 사용법(1-4) - New 2023부분을 듣고 있는데, 초반에 escape 코드를 앞에서 했다고 하시더라고요. 그런데 앞부분과 뒤에 변수 부분을 들었는데 escape 코드를 어디서 했는지 찾을 수 없습니다. 혹시 알려주실 수 있을까요?
-
미해결[2024 개정판] 이것이 진짜 크롤링이다 - 기본편
pandas 설치하는데 오류가 나서요
pip install pandas 명령을 입력하면 다음과 같은 오류가 발생해요.Collecting pandas Using cached pandas-2.2.2.tar.gz (4.4 MB) Installing build dependencies ... done Getting requirements to build wheel ... done Installing backend dependencies ... done Preparing metadata (pyproject.toml) ... error error: subprocess-exited-with-error × Preparing metadata (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [12 lines of output] + meson setup C:\Users\user\AppData\Local\Temp\pip-install-t_73zgrt\pandas_07f940e4918444ecb3ee5b4569956cfa C:\Users\user\AppData\Local\Temp\pip-install-t_73zgrt\pandas_07f940e4918444ecb3ee5b4569956cfa\.mesonpy-3kj1_j_g\build -Dbuildtype=release -Db_ndebug=if-release -Db_vscrt=md --vsenv --native-file=C:\Users\user\AppData\Local\Temp\pip-install-t_73zgrt\pandas_07f940e4918444ecb3ee5b4569956cfa\.mesonpy-3kj1_j_g\build\meson-python-native-file.ini The Meson build system Version: 1.2.1 Source dir: C:\Users\user\AppData\Local\Temp\pip-install-t_73zgrt\pandas_07f940e4918444ecb3ee5b4569956cfa Build dir: C:\Users\user\AppData\Local\Temp\pip-install-t_73zgrt\pandas_07f940e4918444ecb3ee5b4569956cfa\.mesonpy-3kj1_j_g\build Build type: native build Project name: pandas Project version: 2.2.2 ..\..\meson.build:2:0: ERROR: Could not find C:\Program Files (x86)\Microsoft Visual Studio\Installer\vswhere.exe A full log can be found at C:\Users\user\AppData\Local\Temp\pip-install-t_73zgrt\pandas_07f940e4918444ecb3ee5b4569956cfa\.mesonpy-3kj1_j_g\build\meson-logs\meson-log.txt [end of output] note: This error originates from a subprocess, and is likely not a problem with pip.error: metadata-generation-failed× Encountered error while generating package metadata.╰─> See above for output.note: This is an issue with the package mentioned above, not pip.hint: See above for details.C:\Program Files (x86)\Microsoft Visual Studio 폴더가 없던데 어떻게 해야 한나요.