묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
오류 org.springframework.context.NoSuchMessageException: No message found under code 'hello' for locale 'null'.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]안녕하세요 강의를 듣던중에 MessageTestSourceTest 부분에서 오류 터져서 커뮤니티랑 구글링을 해보니 다들 한글이 깨졌다고 하더라고요 그래서 저도 utf8로 해도 똑같은 오류가 나더라구요.그런데 여기서 ItemServiceApplication.java 에 ```java@Bean public MessageSource messageSource() { ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource(); messageSource.setBasename("messages"); return messageSource; }```을 남기니깐 테스트를 통과하더라고요 혹시 어떤 문제인지 알고 있으시나요? ㅠㅠ
-
미해결빅데이터분석기사 실기대비 (R 활용)
4회 작업형 2유형 문제 불러왔을 때 변수가 안보이는데요
데이터셋(엑셀)로 직접 열면 train 파일에서 segmentation변수가 보이는데read.csv하여 R에서 불러들이면 segmentation변수가 안보이네요 제공해주신 리뷰코드(메모장) 에는아래와 같이 as. factor로 바꾼걸 보면 있어야 할 변수인거같은데.. df$Gender <- as.factor(df$Gender)df$Ever_Married<- as.factor(df$Ever_Married)df$Graduated <- as.factor(df$Graduated )df$Profession<- as.factor(df$Profession)df$Spending_Score<- as.factor(df$Spending_Score)df$Var_1 <- as.factor(df$Var_1)df$Segmentation <- as.factor(df$Segmentation) 파일이 잘못된걸까요 ? 아니면 제가 이해를 못한것일까요?
-
해결됨인프라공방 - 그럴듯한 서비스 만들기
안녕하세요. BFF 사용 이유 관련되서 질문이 있습니다.
안녕하세요. nextXXXX에서 언제 개설되나 궁금했었는데 이렇게 강의로 나오다니 좋네요.. BFF를 도입한 이유에 대해서 말씀 주신것 중에 궁금한게 있습니다!트래픽 대응, 크롤링, 시스템 점검과 같은 클라이언트 접근 제어와 관련된 정책을 한곳에서 관리 가능 및 보안성 수준 제공 가능=> Q. 나머지는 이해되는데 크롤링이 잘 이해가 안갑니다 front 모듈에서 크롤링을 시도해서 client한테 뿌려주는건가요? 사용자에게 노출되어야 하는 정보를 제한할 수도 있음bff가 없다면 변경사항이 있을때 마다 내부적으로 사용하는 API와 public call을 위한 api 모두 변경을 해야 합니다(백엔드 api랑 프론트 모두 변경해야 한다는건가?) 그러다보면 놓치는 부분도 생김 => Q. 내부적으로 사용하는 API는 분리된 서버(컨퍼런스, analysis 등)로 이해했늗네, public call을 위한 api는 어떤걸 지칭하는 걸까요? 감사합니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
5회 기출 작업형1 - 1번 문제
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요먼저 유사한 질문이 있었는지 검색해보세요cond1 = df['종량제봉투종류'] == '규격봉투' cond2 = df['종량제봉투용도'] == '음식물쓰레기' cond3 = df['2ℓ가격'] != 0 df = df[cond1 & cond2 &cond3] print(round(df['2ℓ가격'].mean()))위 작업에서 cond1,2,3를 df에 대입하지 않고 print문으로평균을 구할 수 있는 방법이 있나요??아니면 따로 방법이 없어서 df에 대입 후 2ℓ가격의 평균을 구한 건지 궁금합니다!
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
fold 예시 오류
void main() { List<String> words = [ '안녕하세요 ', '저는 ', '코드팩토리입니다.', ]; final sentence = words.fold<String>('', (prev + next) => prev + next); print(sentence);} 이렇게 똑같이 작성을 했는데, 오류가 뜨는 이유가 뭘까요?The argument type 'String Function(String)' can't be assigned to the parameter type 'String Function(String, String)'. Expected to find ')'.Undefined name 'next'.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업2유형 전처리&피쳐엔지니어링
안녕하십니까. 선생님 수업 잘 듣고 있는데 제가 전처리나 피처엔지니어링에서 정확한 기준을 모르겠습니다. 그냥 object타입을 모두 제거하거나 아니면 결측치가 있는 경우 어떤것은 제거하고 어떤것은 0으로 채우는데 정확한 기준이 있나요? 있다면 대략적인 기준을 알고 싶습니다.
-
미해결김영한의 실전 자바 - 중급 1편
로또 메서드 문의
안녕하세요.궁금한 점이 있어 문의 드립니다.아래의 isUnique 메서드가 실행되었을 때를 가정해서 질문해보면 isUnique 매서드가 호출이 될 때 스택에 새롭게 할당이 되고 코드가 실행이 될텐데 이 때 이 새롭게 생성된 스택 영역 안에서 매개변수로 받은 number의 값 말고 나머지 바디에 있는 count 변수나 lottoNumbers 배열을 아는 건 메서드 영역의 클래스 영역에서 클래스 네임별로 구별이 되어 있고 그 클래스의 메서드를 가져다 쓰는 거니 메서드 내부의 변수들도 그 클래스에 해당한다는 걸 스택영역에서 알 수가 있는 거죠 ? 생각해보니 메서드 영역과 스택 영역은 분리되어 있고 메서드가 호출될 때 새롭게 스택 영역이 할당이 될텐데 어떻게 새롭게 할당된 공간 안에서 메서드 내부의 값들을 다 알까 싶어서요.감사합니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
members 500 오류 힘드네요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]찾아보고 했는데 계속 오류 뜨는데 어떻게해야할까요
-
해결됨두고두고 써먹는 유니티 VR
빌드파일 VR연결
에디터상에서는 VR이 잘 연결됩니다. 그런데 안드로이드로 빌드해서 apk로 Meta Quest Developer Hub에서 실행하면검정화면에서 꺼져버립니다.그리고 윈도우로 빌드하면 실행은 되는데 VR연결이 되지 않습니다.에디터 버전이 2022.3.29f1인데 에디터 버전 문제일까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제2 - 4번
문제에서 자료형이 object인 칼럼을 삭제하라고 하였는데df.head()로 출력하면 'age', 'f1', 'f2', 'f5', 'views' 가 object인 칼럼을 제외한 칼럼이지만,df.info()로 출력하면 아래 사진과 같이 'age', 'f1', 'views' 만이 object인 칼럼을 제외한 칼럼으로 나옵니다.어떤게 맞는 기준인지 판단하기가 어려워 질문 드립니다.이럴 땐 어떻게 사고하고 판단하여야 할까요?
-
해결됨[C#/.NET 7.0]어서와, WPF는 처음이지?
DB 테이블 구조 변경시 클래스 구조 갱신관련
안녕하세요. DB 구조를 클래스로 자동으로 생성하여 해당 클래스를 사용한다고 했을 때 이후에 DB 구조를 수정한다고 했을 때 오류가 발생할 것 같은데 바뀐 DB 구조에 따라서 클래스 구조도 같이 갱신 되나요? 자동으로 갱신시키려면 어떻게 해야 하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
피처 엔지니어링 전체 과정
피처 엔지니어링의 전체 과정에 대해서 잘 이해가 안되서 질문 드립니다.데이터 전처리를 통해 결측값과 이상값을 처리하고, 수치형 변수와 범주형 변수로 나눈 뒤 수치형 변수는 스케일링을 적용하고 범주형 변수는 인코딩을 적용하고 그 이후에 나눈 수치형 변수와 범주형 변수를 합친다.만약 수치형 변수와 범주형 변수를 합친 후 train 데이터와 test 데이터의 shape를 출력했을 때, 각각의 컬럼 수가 다르다면 인코딩을 잘못한 것이다.train데이터와 test 데이터의 shape를 출력했을 때 컬럼 수가 다르다는 걸 알게 되면 그때부턴 어떻게 해야 되나요?데이터를 다시 새로 load하고범주형 변수와 수치형 변수의 컬럼 정보를 리스트에 저장한 후 train data와 test data를 합쳐서합친 전체 data의 수치형 변수 컬럼과 범주형 변수 컬럼에 대해 각각 스케일링과 인코딩을 진행한 후 train data와 test data로 나눠줘야하는 건가요?제가 이해한 것이 맞는 건지 궁금합니다!!강의 잘 듣고 있습니다. 감사합니다!^^
-
해결됨PHP 개발자의 최종 테크트리, 라라벨 강의
꼭 api.php, web.php 로 나눠서 해야 하나요?
11버전을 설치 하였는데..api.php 가 없던데요..꼭 api.php, web.php 로 나눠서 해야 하나요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형1 모의문제3 - 9번 문제 (답글에 대한 답이 없어 다시 질문 드립니다.)
아래는 수업 자료에 있는 풀이부분 코드이고,from google.colab import drive drive.mount('/content/drive') import pandas as pd import numpy as np df = pd.read_csv('/content/drive/MyDrive/bigdata(빅분기 놀이터)/빅분기 놀이터 Dataset/members.csv') df['subscribed'] = pd.to_datetime(df['subscribed']) df['year'] = df['subscribed'].dt.year df['month'] = df['subscribed'].dt.month df['day'] = df['subscribed'].dt.day df = df.groupby('month').count() print(df.sort_values('subscribed').index[0]) ValueError Traceback (most recent call last) <ipython-input-1-2092ad4ed95e> in <cell line: 10>() 8 df = pd.read_csv('/content/drive/MyDrive/bigdata(빅분기 놀이터)/빅분기 놀이터 Dataset/members.csv') 9 ---> 10 df['subscribed'] = pd.to_datetime(df['subscribed']) 11 df['year'] = df['subscribed'].dt.year 12 df['month'] = df['subscribed'].dt.month 4 frames/usr/local/lib/python3.10/dist-packages/pandas/_libs/tslibs/strptime.pyx in pandas._libs.tslibs.strptime.array_strptime() ValueError: time data "9690" doesn't match format "%Y-%m-%d", at position 21. You might want to try: - passing `format` if your strings have a consistent format; - passing `format='ISO8601'` if your strings are all ISO8601 but not necessarily in exactly the same format; - passing `format='mixed'`, and the format will be inferred for each element individually. You might want to use `dayfirst` alongside this.이는 에러 코드입니다.df['subscribed'] = pd.to_datetime(df['subscribed'])이 코드에서 발생한 에러입니다.
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
연장 부탁드립니다.
최근 다른 학습때문에 제대로 시간 낼 수가 없어서 연장 요청 드립니다!
-
미해결폐강 수강 금지
자료 비번
자료다운을 받고보니까 실기기출문제에 암호가걸려있어요.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
빅분기 작업형 2유형 predict, predict_proba 제가 이해한게 맞나 의문이 생겨 질문드립니다
선생님 분류 문제에서 확률을 예측하라고 제시되고 평가는 f1-score로 하라고 하면평가부분에서는model.fit(X_tr,y_tr)pred = model.predict(X_val)print(f1_score(y_val,pred))이렇게 하고예측부분에서는pred = model.predict_proba(test)이렇게 하고 제출하면 될까요 ?제가 이해한게 맞나 긴가만가해서 여쭤보고싶습니다..!
-
미해결비전공자의 전공자 따라잡기 - 자료구조(with JavaScript)
숙제2 연결리스트를 이용하여 큐 구현하기
학습 목표- 배열 치트키 자료구조가 아닌 연결 리스트를 이용하여 queue 자료구조를 구현하자.- 삽입과 삭제를 시간복잡도 O(1)가 되게 해야됨.- queue은 FIFO이기 때문에 삭제시 첫번째를 삭제해야됨.class Node { constructor(value) { this.value = value; this.next = null; this.prev = null; } } class LinkedList { constructor(length = 0) { this.length = length; this.head = null; this.tail = null; } add(value) { const newNode = new Node(value); if (this.head === null) { this.head = newNode; this.tail = newNode; } else { newNode.prev = this.tail; this.tail.next = newNode; this.tail = newNode; } this.length++; return this.length; } // 스택 구현시 삭제 메서드 removeLast() { const value = this.tail.value; this.tail.prev.next = null; // 제일 마지막 이전의 next의 좌표를 null로 변경해줌 this.tail = this.tail.prev; // 마지막을 tail의 이전 노드로 변경 해줌 return value; } // 큐 구현시 삭제 메서드 removeFirst() { const value = this.head.value; this.head.next.prev = null; // 제일 첫번째 다음의 이전 좌표를 null로 변경해줌 this.head = this.head.next; // 첫번째를 head next 노드로 변경 해줌 return value; } } // 숙제2 연결리스트로 큐 만들기 class Queue { linkedList = new LinkedList(); add(value) { return this.linkedList.add(value); } shift() { return this.linkedList.removeFirst(); } get top() { return this.linkedList.head.value; } get length() { return this.linkedList.length; } } const queue = new Queue(); console.log(queue.add(1)); // 1 console.log(queue.add(3)); // 2 console.log(queue.add(5)); // 3 console.log(queue.top); // 1 console.log(queue.length); // 3 console.log(queue.shift()); // 1 결과head의 value값이 3, prev가 null이 되고 next가 value가 5인 노드를 가르킴
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
3-4 와 10-2 피쳐엔지니어링(인코딩) 부분 .columns 사용 등
질문 1. 3-4 피쳐엔지니어링 강의 부분과10-2 공식예제 체험형 2 연계 질문이 있습니다.아래건 10-2에서 풀어본 거입니다.import pandas as pd train = pd.read_csv("data/customer_train.csv") test = pd.read_csv("data/customer_test.csv") # 사용자 코딩 # EDA print(train.shape, test.shape) # print(train.info()) # 범주형 주구매상품 , 주구매지점 # print(test.info()) # 범주형 주구매상품 , 주구매지점 # print(train.isnull().sum()) # 결측치 환불금액 # print(test.isnull().sum()) # 결측치 환불금액 ## 전처리 (결측치, 이상치) # print(train["환불금액"]) train["환불금액"] = train["환불금액"].fillna(0) test["환불금액"] = test["환불금액"].fillna(0) # print(train["환불금액"]) ## 피쳐엔지니어링(스케일링, 인코딩) from sklearn.preprocessing import LabelEncoder cols = train.select_dtypes(include="O") for col in cols: le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) ## 검증데이터셋 분리 from sklearn.model_selection import train_test_split x_tr,x_val,y_tr,y_val = train_test_split(train.drop(["성별"], axis=1), train["성별"],test_size=0.2, random_state = 100) ## 평가지표 및 모델 불러오기 from sklearn.metrics import roc_auc_score, f1_score, accuracy_score from sklearn.ensemble import RandomForestClassifier rf = RandomForestClassifier(random_state = 100) rf.fit(x_tr, y_tr) pred_rf = rf.predict_proba(x_val) print("roc_auc:",roc_auc_score(y_val,pred_rf[:,1])) # 기본 0.6258311184510446 # 인코딩 후, 0.6356067057174067 # 예측 (테스트셋에 적용) pred = rf.predict_proba(test) # print(pred) # print(pred[:,1]) # df 생성 및 제출 df = pd.DataFrame({"pred": pred[:,1]}) # print(df) df.to_csv("result.csv", index=False) print(pd.read_csv("result.csv"))라벨? 레이블? 인코딩 하면서cols 변수를 만들 때, .columns 를 추가하지 않아도 결과까지 문제 없이 되더라고요. .columns를 추가하면 시리즈 타입의 변수가 생성되고, 위에처럼 빼면 데이터프레임 차원 타입으로 변수가 생성되는건 확인했습니다.그래서 간편성을 위해 .columns 를 빼고 원핫 인코딩도 가능한가3-4 강의 때 자료를 적용해서 돌려봤습니다n_train = X_train.select_dtypes(exclude = 'object').copy() n_test = X_test.select_dtypes(exclude = 'object').copy() #사본 작성시 copy() 넣어서 실행 c_train = X_train.select_dtypes(include='object').copy() c_test = X_test.select_dtypes(include = 'object').copy() cols = X_train.select_dtypes(include="O") c_train = pd.get_dummies(c_train[cols]) c_test = pd.get_dummies(c_test[cols]) 그랬더니 에러가 발생 하더라고요.# ValueError: Boolean array expected for the condition, not objectcols = X_train.select_dtypes(include="O").columns # 이렇게 .columns 를 추가하고 돌리니 사용 가능cols 변수 생성할때 다시 .columns 를 추가하고 돌리니까 에러 없이 끝까지 잘 되더라고요.라벨 인코딩에선 문제 없던게 원핫 인코딩에서 ValueError: Boolean array expected for the condition, not object가 발생하는 이유가 뭔지 궁금합니다.인코딩은 라벨이든 원핫이든 cols 변수 때 select_dtypes(include="O).columns 으로 .columns 까지 다 입력하는걸로 연습하는게 맞는거 같은데 오류 발생은 이해가 안되네요. 질문 2.※ 피쳐엔지니어링에서 train, test 셋을 분리( .copy() )해서 수치형은 스케일링하고 범주형은 인코딩 한 다음, 합치기 ( .concat() ) 하는 방식이 아니라수치형 부분 칼럼을 변수(cols_n)로 받고, 범주형 부분을 변수(cols_c) 으로 받아서, 데이터셋을 수치와 범주형으로 분리하지 않은 상태에서 각각 스케일링, 인코딩을 적용하고 검증데이터셋 분리-> 모델 & 평가지표 불러오기 -> 예측(테스트셋 적용) -> df 생성 -> 제출 하는 방법은 어렵나요?아래 처럼요. [train, test 2개 데이터셋 제공시]# train셋엔 있고 test셋엔 없는 target에 해당하는 칼럼 분리target = train["target"]cols_n = train.drop("target", axis=1).select_dtypes(exclude="O).columnscols_c = train.drop("target",axis=1).select_dtypes(include="O").columns# "target" 데이터는 범주형이든 수치형이든 스케일링이나 인코딩을 하면 안되므로 제외시킴(이거 맞나요?)또는target = train.pop(["target"])cols_n = train.select_dtypes(exclude="O).columnscols_c = train.select_dtypes(include="O").columns## 수치형 민맥스 스케일링 작업 from sklearn.preprocessing import MinMaxScaler scaler = MinMaxScaler() train[cols_n] = scaler.fit_transform(train[cols_n]) test[cols_n] = scaler.transform(test[cols_n]) ## 범주형 라벨 인코딩 작업 from sklearn.preprocessing import LabelEncoder le = LabelEncoder() for col in cols_c: le = LabelEncoder() train[col] = le.fit_transform(train[col]) test[col] = le.transform(test[col]) 그 다음 검증데이터셋 분리 ~~~~~~~~~~~ 제출 [X_train, y_train, X_test 3개 데이터셋 제공시]cols_n = X_train.select_dtypes(exclude="O).columnscols_c = X_train.select_dtypes(include="O").columns## 수치형 민맥스 스케일링 작업 from sklearn.preprocessing import MinMaxScaler scaler = MinMaxScaler() X_train[cols_n] = scaler.fit_transform(train[cols_n]) X_test[cols_n] = scaler.transform(test[cols_n]) ## 범주형 라벨 인코딩 작업 from sklearn.preprocessing import LabelEncoder le = LabelEncoder() for col in cols_c: le = LabelEncoder() X_train[col] = le.fit_transform(X_train[col]) # 처음에 X_test[col] = le.transform(X_test[col]) 이후 검증데이터셋 분리 ~~~~~~~~~~~ 제출 이런 식으로요.작업형2에서 피쳐엔지니어링 부분이 특히 어려워서 조금이라도 간편하고, 범용성 높은 방법을 찾는게 머리 속 정리하기도 쉽고, 외우기도 좋을 거 같아서 고민중입니다.
-
미해결비전공자의 전공자 따라잡기 - 자료구조(with JavaScript)
숙제1 LinkedList로 스택 구현하기
학습 목표- 배열 치트키 자료구조가 아닌 연결 리스를 이용하여 stack 자료구조를 구현하자.- 삽입과 삭제를 시간복잡도 O(1)가 되게 해야됨.- stack은 FILO이기 때문에 삭제시 마지막을 삭제해야됨. class Node { constructor(value) { this.value = value; this.next = null; this.prev = null; } } class LinkedList { constructor(length = 0) { this.length = length; this.head = null; this.tail = null; } add(value) { const newNode = new Node(value); if (this.head === null) { this.head = newNode; this.tail = newNode; } else { newNode.prev = this.tail; this.tail.next = newNode; this.tail = newNode; } this.length++; return this.length; } removeLast() { const value = this.tail.value; this.tail.prev.next = null; // 제일 마지막 이전의 next의 좌표를 null로 변경해줌 this.tail = this.tail.prev; // 마지막을 tail의 이전 노드로 변경 해줌 return value; } } // 숙제 1 연결리스트로 스택 만들기 class Stack { linkedList = new LinkedList(); add(value) { return this.linkedList.add(value); } pop() { return this.linkedList.removeLast(); } get top() { return this.linkedList.head.value; } get length() { return this.linkedList.length; } } const stack = new Stack(); console.log(stack.add(1)); // 1 console.log(stack.add(3)); // 2 console.log(stack.add(5)); // 3 console.log(stack.top); // 1 console.log(stack.length); // 3 console.log(stack.pop()); // 5결과디버거 결과를 확인 해보면 최종적으로tail의 value는 3이고 next는 null prev는 value1의 노드를 가르키고 있는걸 알 수 있다.