안녕하세요 예외처리에 대한 질문이생겨 글 적습니다 ! MemberServiceV3_2에서 bizLogic()을 호출해서 메서드에서 던져진 SQLException을 잡습니다 그런데 MemberServiceV3_1에서 트랜잭션 매니저로 처리하는 try catch문에서는 Exception으로 예외를 잡는데 Exception이 모든 예외의 조상이라서 모든 예외를 잡는건 알고있습니다 ! 그런데 헷갈리는 부분이 SQLException이 commit을 하면 사라지나요 ?아니면 이때 SQLException이 잡히나요 ? 잡히지만 이미 커밋을 해버려서 롤백할 데이터가 없기 때문에 SQLException을 IllegalStateException으로 바꿔주기만 하고 try catch문을 빠져나오는 걸까요 ??
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! 질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요 먼저 유사한 질문이 있었는지 검색해보세요 train = train.drop 할 때가 있고 target = train.pop 할 때있는데 방법이 다른 이유가 무엇인지
5회 2형 lightgbm으로 작성하면 아래와 같은 문구가 나타납니다. 혹시 어떤 부분이 잘못되었을까여?? < 코드 > x_train = pd.get_dummies(x_train) x_test = pd.get_dummies(x_test) from sklearn.model_selection import train_test_split xx_train, xx_test, yy_train, yy_test = train_test_split(x_train, y_train, test_size = 0.2, random_state = 42) import lightgbm as lgb model_g = lgb.LGBMRegressor(n_estimators = 150, max_depth = 4, random_state = 42) model_g.fit(xx_train, yy_train) pred_t_g = model_g.predict(xx_test) < 에러 메세지 > [LightGBM] [Warning] Found whitespace in feature_names, replace with underlines [LightGBM] [Info] Auto-choosing row-wise multi-threading, the overhead of testing was 0.000399 seconds. You can set force_row_wise=true to remove the overhead. And if memory is not enough, you can set force_col_wise=true . [LightGBM] [Info] Total Bins 395 [LightGBM] [Info] Number of data points in the train set: 3007, number of used features: 23 [LightGBM] [Info] Start training from score 12318.722980 [LightGBM] [Warning] No further splits with positive gain, best gain: -inf [LightGBM] [Warning] No further splits with positive gain, best gain: -inf
강사님께서 설명해주신대로 LoginCheckFilter를 만들어서 적용해서 Chrome 에서 실행해봤는데 localhost:8080/items를 입력해도 자동으로 localhost:8080 으로 이동합니다... 그래서 혹시나 싶어서 LoginCheckFilter를 적용하기 전으로 하고 다시 localhost:8080/items 를 입력했더니, 그래도 localhost:8080 으로 이동이 됩니다. 제가 코드를 잘못 입력한건가 싶었는데 Chrome 이 아니라 Safari 로 들어가서 localhost:8080/items를 입력하면 Filter적용전에는 localhost:8080/items 에 접근이 가능하고, Filter 적용시에는 http://localhost:8080/login?redirectURL=/items 로 redirect가 이루어집니다. Chrome 에서 어떤 설정을 만져야 제대로 동작하게 될까요....? Safari 에서는 제대로 동작하는데 왜 Chrome 만 동작이 안되는지 모르겠습니다...
이미 앞에서 글을 써주신 분이 계신데요, 저도 같은 입장이라 글을 남기게 되었습니다ㅜㅜ 직접 애플리케이션을 만들어보며 눈으로 확인하는 작업이 필요한데, 연결이 되지 않으니 사실 어느 부분부터 손을 대는 것이 맞는지 모르겠습니다. 포털에서 받아온 OPEN API를 사용하려 해도 이게 잘 하고 있는 건지 어떤지 확인을 할 수도 없구요. 23년도에 이 부분에 관하여 글을 작성하셨는데, 지금은 시간이 꽤 흘렀으니 혹시 API부분을 해결한 설명 자료가 있나요? 도무지 감이 안 잡히네요.. 앞의 기초 수업은 잘 넘어왔는데 실전 수업은 진도를 전혀 나가지 못하고 있습니다..
안녕하세요! # 주어진 데이터에서 상위 10개 국가의 접종률 평균과 하위 10개 국가의 접종률 평균을 구하고, 그 차이를 구해보세요 # (단, 100%가 넘는 접종률 제거, 소수 첫째자리까지 출력) 이 문제에서 df2 = df.groupby('country').max() 왜 이 코드가 나오는지 이해를 못하겠습니다 ㅜ 국가별로 접종률의 최대값이 나오는건가요?? 상, 하위국가를 구해야하니 국가별로 groupby를 해야하는 것은 알겠는데 max를 하는 이유는 무엇일까요?
https://www.kaggle.com/code/agileteam/t3-2-example-py/ 캐글에 올려주신 문제를 보고 있는데 위랑 아래 각각 결과가 다른데 이유를 모르겠어서 문의남깁니다. 로지스틱 회귀 문제의 계수문제는 logit으로 푸는게 맞는걸까요? import pandas as pd from sklearn.linear_model import LogisticRegression # 데이터 로드 df = pd.read_csv('/kaggle/input/bigdatacertificationkr/Titanic.csv') # 데이터 전처리 df['Gender'] = df['Gender'].map({'male': 0, 'female': 1}) # 로지스틱 회귀 모형 생성 및 학습 X = df[['Pclass', 'Gender', 'SibSp', 'Parch']] y = df['Survived'] model = LogisticRegression() model.fit(X, y) # parch 변수의 계수값 출력 print("Parch 변수의 계수값:", model.coef_[0][3]) import pandas as pd from statsmodels.formula.api import logit df = pd.read_csv("/kaggle/input/bigdatacertificationkr/Titanic.csv") formula = "Survived ~ C(Pclass) + Gender + SibSp + Parch" model = logit(formula, data=df).fit() model.params['Parch']
범주형 변수만 선택하여 아래와 같이 원핫인코딩했는데 타입이 모두 bool 바꼈습니다. 왜 int로 안바뀌는지궁금합니다. 또 bool 상태로 계속 진행해도 괜찮은가요? c_cols = ['Gender', 'Ever_Married', 'Graduated', 'Profession', 'Spending_Score', 'Var_1'] train = pd.get_dummies(train,c_cols) test = pd.get_dummies(test,c_cols)
안녕하세요 6회 작업형 3에 질문이생겨서 문의드립니다. 카이제곱 적합성검정의 경우 모든 기대빈도가 5이상일때 사용한다고 알고있었는데요 배포해주신 문제의 데이터는 보면 무증상 70% 그외 30%로 전체데이터수를 곱해 빈도로 변환해주면 [2.0, 1.0, 3.0, 14.0]입니다. 문제가 [감기약의 예상 부작용 비율과 항암약의 부작용 관찰값이 통계적으로 유의미하게 차이가 있는지 확인하려 한다. 카이 제곱 검정을 사용하여 검정 통계량을 구하시오.] 이경우 기대값에서 빈도가 5이하인 아픔: 10% 조금 아픔 5% 속 쓰림 15% 의 범주를 합쳐주고 검정을 해야하는것 아닌가요? 그냥 검정을해도 값이 나오긴하지만 이 값이 신뢰할만한 값이라고 할수있는건가요?
db에 등록도 잘 되었는지 확인해 보기 위해서 coupon 테이블 조회 해보았는데 [coupon_id], [user_id] 테스트 로직에서 userId 값은 단순히 for을 통해 0부터 순차적으로 받은 뒤 쿠폰 개수에 맞춰 userId 도 0~99 사이의 값이 들어 올 것이라 생각했는데 예상과 다르게 103 이라는 id가 들어왔습니다 이런 이유가 궁금합니다
100만 이하의 약수가 존재하는지 확인할 때 반복문을 왜 101만까지 돌리는 건 가요? 저는 입력 받은 수까지 확인을 했었거든요... 이유가 궁금합니다! 백만보다 큰지 안 큰지 확인하기 위함인 건 알겠는데 수학적으로 이해가 좀 안 가서 질문을 드립니다. 추가적으로 알고리즘을 풀다보면 수학적인 지식이 좀 많이 부족하다고 느끼는데 어떻게 채우는 게 좋을지도 궁금합니다.. 6개월 정도 회사 다니면서 코테에만 집중해서 이직하는 게 현재 목표입니다. 제가 작성한 답안입니다. 답 도출까지는 못했습니다.
답글에 답글을 다는 기능이 없네요.. 시비를 걸다니요.. 애시당초 답변을 잘못 했다는 생각 안하시나요? 공부 하고 있는 부분에 대해서 문의를 했는데.. 그 부분을 삭제 하면 문제가 해결 된다고 말하는 게 맞는 건가요? 무슨 답변이 그런가요? 그러면..실무 에서도 그냥 지우면 되는 건가요? 영상 끝 부분에 꼭..잘 이해가 안가는 부분이 있으면 문의를 하라고 하던데.. 문의를 하면 뭐합니까? 그 부분을 지우면 해결 된다고 하는데.. 이 부분은 잘 모르겠으니 확인 후 답변 하겠다고 하는게 맞는 것 아닌가요? 아니면 좀 더 확인 후 답변을 하던가요.. 답변 좀 잘해 주세요.
체험환경 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 LabelEncoder for 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_split x_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 RandomForestClassifier rfc = 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_score print(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) 프로세스가 종료되었습니다.