묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결그림으로 쉽게 배우는 자료구조와 알고리즘 (기본편)
해쉬테이블 데이터 관련해서 질문있습니다.
데이터를 연결리스트로 관리하고 해당 연결리스트의 노드에 data가 들어갈때 data : { key: ?? , value: ??} 이런식으로 들어가는거 맞죠??애니메이션에 이름만 나와있어서 살짝 헷갈려서 여쭤봅니다.해당 노드에 축구선수 번호랑 이름이 들어가는게 맞죠?
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
코랩사용시 코드가 미리 예상으로 나와있는데
이거 안나오게 하는 설정방법이 있을까요??저는 안보고 치고 싶은데 ㅠㅠㅠ자꾸 미리 예측하고 내용이 떠서요
-
미해결[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
predict 시
model.predict(data) 와 model.get_prediction(data)의 차이가 무엇인가요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
RMSLE 함수 질문
회귀모델의 평가방법 중 RMSLE 함수를 외우려고 했는데요. 쉽지가 않습니다. 좀 더 간단한 방법 없을까요..?def rmsle(y_test, y_pred): #RMSLE return np.sqrt(np.mean(np.power(np.log1p(y_test) - np.log1p(y_pred), 2)))
-
해결됨Flutter 앱 개발 기초
강의 수강 연장 문의
안녕하세요강의 연장 가능할까요?연초에 앱 개발 기초반, 실전반 둘 다 구매했는데HTML, CSS, JS 웹 개발 공부하느라 구매 후 거의 못 들었습니다.수강기간이 한 달 정도 남았는데 연장 가능한지 문의드립니다
-
미해결스프링 MVC 2편 - 백엔드 웹 개발 활용 기술
내추럴 템플릿이 정확히 뭔 개념인가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.내추럴 템플릿 기능이라는 것이 정확히 무엇인지 모르겠습니다.느낌은 파일을 직접 열기 할 때, html css 자바스크립트의 순수한 구조가 그대로 남겨진 것? 이라는 것 같은데 맞는지 모르겠습니다.
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
ENUM데이터 변경관련 질문
package hellojpa; public enum RoleType { USER , ADMIN, GUEST , CEO==추가한 데이터(테이블 생성 후) } /////// try { Member member1 = new Member(); member1.setId(5L); member1.setUsername("하하"); member1.setRoleType(RoleType.CEO); //////////// <property name="hibernate.hbm2ddl.auto" value="update" /> 이러한설정의 상태입니다 영한님도 auto가 update로 되어있는것 같은데 저는 ENUM의 컬럼을 추가하고 적용해서 DB를 생성하려하면 오류가발생합니다
-
미해결
FINGOO📊에서 창업멤버를 모집합니다❗
(사이드 프로젝트는 아닙니다)1) CTO / 1명2) 백엔드 개발자 / 1명3) 프론트 개발자(서비스개발기획가) / 1명4) AI 개발자 / 1명 ✔1) CTO 우대 요건- 팀의 목표에 얼라인하고 목표 달성을 위한 전략을 세울 수 있고, 사회성이 좋으신 분- 기술 스택 (필수는 아님) : Nest.js, Postgresql, Typeorm, Redis ✔2) 백엔드 개발자 우대 요건 - 깃허브 등 포트폴리오 및 백엔드 개발에 일가견이 있으신 분- 기술 스택 (필수는 아님) : Nest.js, Postgresql, Typeorm, Redis ✔3) 프론트 개발자 우대 요건 - Next.Js 및 TypeScript 개발 경험과 컴포넌트 분리에 대한 고민이 있으신 분- 기술 스택 (필수는 아님) : Next.js, TypeScript, React, SWR, Zustand, Jest, Storybook, MSW, Tailwind✔4) AI 개발자- 경제/금융/투자 분야에 강하고 이를 수치적으로 해석할 수 있는 분- GPT 프롬프팅 학습에 관심이 있으신 분 (아예 몰라도 됨) 📈 서비스 소개트레이딩 뷰 차트의 핵심 기능, Fred의 편리한 이미지 공유 기능에 더해, 금융전용 챗 GPT를 입혀, 개개인 고객의 눈높이에 맞춰 증권사 직원처럼 친절히 투자를 분석해주는 서비스입니다. 🌎 서비스 소개 홈페이지 링크https://fingoo.vercel.app/ 📩 지원방법https://forms.gle/ZgpwxkaGUA5jYNaT8 🗓 모집기한채용 시까지 📍업무 장소대부분 온라인 📍소득배분 및 지분협의를 통해 결정 📍참고사항현재 개발은 70% 이상 진행완료 되었으며, 현재는 베타모델 런칭을 통해 사용자 경험을 축적하고 있습니다. 2월 모바일 및 웹 베타 버전 정식 런칭 예정이며, 3월 모바일 및 웹 정식 버전 공식 런칭 예정입니다. 기획서, IR자료 등 본 사업에 더 많은 사항이 궁금하시다면 문의 부탁 드립니다. 📍About 임원진CEO 김도경 : 베스트 셀러 <최저임금 딜레마>의 저자, 텔레그램 macro guide, 네이버 블로그 '경제 읽어드립니다' 운영자, 투자자산운용사☎ 문의사항https://open.kakao.com/o/s07te5Igㅣ머케팅
-
미해결비전공자도 이해할 수 있는 Redis 입문/실전 (조회 성능 최적화편)
Redis를 사용하는 이유
캐싱을 위해 Redis를 많이 사용한다고 생각하고 있었는데 SQL튜닝으로 해결되는 부분이 있는거군요! 그러면 일반적으로 현업에서 Redis를 사용하는 이유 중 어떤 이유로 가장 많이 사용하는지 여쭤볼 수 있을까요??
-
미해결코드로 배우는 스프링 웹 프로젝트 - Intermediate
로그인 처리 시 패스워드 null이 들어 가는 현상
강사님 코드 대로 로그인 처리 시 password가 null 이라 로그인 실패 합니다<security:authentication-manager> <security:authentication-provider user-service-ref="myUserDetailsService"> </security:authentication-provider> </security:authentication-manager>결국 검색을 통해 <security:authentication-manager> <security:authentication-provider user-service-ref="customUserDetailsService"> <!-- PasswordEncoder 추가 --> <security:password-encoder ref="passwordEncoder" /> </security:authentication-provider> </security:authentication-manager>안에 코드를 추가하니 정상으로 로그인 처리가 되었습니다의문점은 왜 강사님은 저 코드를 추가 하지 않아도 정상 적으로 로그인이 되는 건지 궁금합니다 제가 빠뜨린 코드가 있나 전부 체크를 해보았는데 그런 부분은 없었습니다
-
미해결
/actuator/metrics 수행 결과가 강의 내용과 다름
섹션 15를 공부하고 있습니다. 현재 저는 스프링부트 3.3.x에서 코딩하고 있고요. 강의 내용을 그대로 따라하면서 build.gradle 파일과 application.yml을 수정하였습니다. 그런데 강의 내용에는 ~~/actuator/metrics라고 endpoint를 지정하면 users.status와 users.welcome 항목이 나타나던데, 제가 수행한 결과에는 그것들이 나타나지 않더군요. 그 이유가 무엇인지 궁금합니다. zipkin 관련 항목들도 나타나지 않네요. 물론 zipkin server는 이미 구동해 놓은 상태입니다. 섹션 13까지는 스프링 부트 버전의 차이는 나름대로 정보를 찾아보고 해서 강의 내용과 제가 코딩하고 수행한 결과가 특별히 다르지 않았는데, 섹션 14와 15에서는 그대로 따라해도 강의 내용과 수행 결과가 다르네요. 도움이 주시면 고맙겠습니다. 참고로 섹션 14에서는 스프링부트 3.3.x에 맞춰 수업 내용에 새롭게 반영된 zipkin 관련 라이브러리를 반영하였습니다.
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
작업형2 모델링 및 평가 순서
안녕하세요, 강사님작업형2 회귀 모델 모델링 및 평가를 해보면서 궁금한 점이 있어 질문드립니다.작업형2에서 머신러닝 학습 및 평가를 할 때 학습, 평가 순으로 해야 할 것만 같은데 ,,,혹시 평가 먼저 진행 후 학습을 하는 이유가 있을까요 ..?
-
해결됨[리뉴얼] 맛집 지도앱 만들기 (React Native & NestJS)
3-8. 로그아웃 에러
안녕하세요 강사님. 그동안 로그인 구현을 해본적이 없어서 정말 유익한 강의였습니다. 3-8 강의를 듣던 중 강의대로 했는데 로그아웃이 안 되더라구요. 혼자 해결해보려고 다양한 방법으로 해서 결국 로그인과 로그아웃이 동작은 하는데 로그아웃 버튼을 두 번 클릭해야지 AuthStackNavigator로 네비게이팅이 되는 문제가 있습니다.https://github.com/G0MTENG/MatzipApp-project/tree/3-8 깃허브에 3-8 브랜치에 올려두었습니다. src/hooks/queries/useAuth에 이에 대한 구현이 있고 추가적으로 useAuth 코드를 올려두겠습니다. 감사합니다. import { getAccessToken, postLogin, postSignUp, getProfile, logout, } from '@/apis'; import {queryClient} from '@/apis/queryClient'; import {authQueryKeys, storageKeys, numbers} from '@/constants'; import {UseMutationCustomOptions, UseQueryCustomOptions} from '@/types'; import { removeEncryptStorage, removeHeader, setEncryptStorage, setHeader, } from '@/utils'; import {useMutation, useQuery} from '@tanstack/react-query'; import {useEffect} from 'react'; export const useSignUp = (mutationOptions?: UseMutationCustomOptions) => { return useMutation({ mutationFn: postSignUp, ...mutationOptions, }); }; export const useLogin = (mutationOptions?: UseMutationCustomOptions) => { return useMutation({ mutationFn: postLogin, onSuccess: ({accessToken, refreshToken}) => { setEncryptStorage('refreshToken', refreshToken); setHeader('Authorization', `Bearer ${accessToken}`); }, onSettled: () => { queryClient.refetchQueries({ queryKey: [authQueryKeys.AUTH, authQueryKeys.GET_ACCESS_TOKEN], }); queryClient.invalidateQueries({ queryKey: [authQueryKeys.AUTH, authQueryKeys.GET_PROFILE], }); }, ...mutationOptions, }); }; export const useGetRefreshToken = () => { const {data, isSuccess, isError} = useQuery({ queryKey: [authQueryKeys.AUTH, authQueryKeys.GET_ACCESS_TOKEN], queryFn: getAccessToken, staleTime: numbers.ACCESS_TOKEN_REFRESH_TIME, refetchInterval: numbers.ACCESS_TOKEN_REFRESH_TIME, refetchOnReconnect: true, refetchIntervalInBackground: true, }); useEffect(() => { if (isSuccess) { setHeader('Authorization', `Bearer ${data.accessToken}`); setEncryptStorage(storageKeys.REFRESH_TOKEN, data.refreshToken); } }, [isSuccess, data]); useEffect(() => { if (isError) { removeEncryptStorage(storageKeys.REFRESH_TOKEN); removeHeader('Authorization'); } }, [isError]); return {isSuccess, isError}; }; export const useGetProfile = (quryOptions?: UseQueryCustomOptions) => { return useQuery({ queryKey: [authQueryKeys.AUTH, authQueryKeys.GET_PROFILE], queryFn: getProfile, ...quryOptions, }); }; export const useLogout = (mutationOptions?: UseMutationCustomOptions) => { return useMutation({ mutationFn: logout, onSuccess: async () => { await removeEncryptStorage(storageKeys.REFRESH_TOKEN); removeHeader('Authorization'); }, onSettled: () => { queryClient.resetQueries({queryKey: [authQueryKeys.AUTH]}); queryClient.invalidateQueries({queryKey: [authQueryKeys.AUTH]}); }, ...mutationOptions, }); }; export const useAuth = () => { const signupMutation = useSignUp(); const refreshTokenQuery = useGetRefreshToken(); const getProfileQuery = useGetProfile({ enabled: refreshTokenQuery.isSuccess, }); const isLogin = getProfileQuery.isSuccess; const loginMutation = useLogin(); const logoutMuatation = useLogout(); return { signupMutation, loginMutation, isLogin, getProfileQuery, logoutMuatation, }; };
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
test에 없는 컬럼을 추가할때 이 방법을 써도 될까요?
# missing_cols = set(train.columns) - set(test.columns) # for col in missing_cols: # test[col]=0 # test = test[train.columns] # train.head()질문1) train의 컬럼이 test에 없을 때 train의 컬럼을 test 컬럼과 동일하게 삭제하거나test를 위의 코드를 통해 컬럼을 만들고 '0' 값으로 채운다. 그리고 train 컬럼의 순서대로 맞춘다.여쭤보는 이유는 반대로 test에 있는 컬럼이 train에 없다면 위의 코드를 사용해도 되지 않을까 싶어서요...제가 이해하는게 맞는지 모르겠네요.. 질문2) train과, test의 범주형 컬럼이 다를 때 concat하라고 말씀하셨는데요. 좀 어려워서 원핫인코딩 한적이 있는데 잘 되더라구요... concat을 해야 하나요..?
-
미해결
c++,c# wpf 프로젝트
WPF앱(.NET Framwork) 프로젝트 만들었는데Mainwindows.xaml.cs 이거 안뜸니다 도와주세요 ㅠ이렇게 뜸니다 ㅠ
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
오즈비 구하는 문제일때는
오즈비 값을 구해야 하는 문제일 경우에는, import numpy as np 식만 사용하면 될까요?
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
스케일링 문제
해당 예시 문제를 밑의 식으로 풀이를 해보았는데,import pandas as pd df = pd.read_csv('mtcars.csv') from sklearn.preprocessing import minmax_scale print('변환 전 :',df['qsec'].head()) df['qsec'] = minmax_scale(df['qsec']) print('변환 후 :', df['qsec'].head()) cond = df['qsec'] >0.5 sum(cond)제가 알기로 스케일링 할 수 있는게 min-max, standard,robust 이렇게 3가지가 있는데, 만약 minmax가 아닌 standard,robust를 이용하게 된다면 코드를 어떻게 작성을 해야할까요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part5: 데이터베이스
conect시 신뢰할 수 없는 기관에서 인증서 발급 오류 뜨시는분들
https://mozi.tistory.com/285 참고하세요
-
미해결[하루 10분|Web Project] HTML/JS/CSS로 나만의 심리테스트 사이트 만들기
결과 이미지랑 글이 안떠요 왜일까요
// main변수= 문서 내 #main을 찾아서 가지고 와라 const main= document.querySelector("#main"); const qna= document.querySelector("#qna"); // statusbar 위한 엔드포인트 정의 const endPoint =12; // 결과값 const result=document.querySelector("#result"); // 사용자 입력값에 대한 배열 // const select = []; // 사용자 입력값에 대한 배열 new.직접 12개의 배열에 value 0넣기 const select = [0,0,0,0,0,0,0,0,0,0,0,0,0]; // 질문에 따른 답변 계산 // function calresult(){ // var pointArray = [ // 이 부분 data는 data.js로 옮겨서 동물 당 번호로 바꿔줌. // ] // for(let i = 0; i<endPoint; i++){ // // qnalist로 들어가서 a로 들어가고 거기서 select한 값 // var target =qnaList[i].a[select[i]]; // for(let j=0; j< target.type.length; j++){ // for(let k=0; k<pointArray.length; k++){ // if(target.type[j]=== pointArray[k].name){ // pointArray[k].value += 1; // } // } // } // } function calresult(){ // select라는 배열에 index를 반환할건데 최대값을 console.log(select); var result =select.indexOf(Math.max(...select)); return result; } // // value기준으로 정렬 sort // var resultArray = pointArray.sort(function(a,b){ // if(a.value > b.value){ // return -1; // } // if(a.value < b.value){ // return 1; // } // return 0; // }); // console.log(resultArray) // // key값을 도출, 동물의 이름 // let resultword = resultArray[0].key; // return resultworld; function setresult(){ let point = calresult(); const resultName = document.querySelector('.resultname'); resultName.innerHTML = infoList[point].name; var resultImg = document.createElement('img'); const imgDiv = document.querySelector('#resultImg'); var imgURL = 'img/image-'+ point + '.png'; resultImg.src=imgURL; resultImg.alt=point; resultImg.classList.add('img-fluid'); imgDiv.appendChild(resultImg); const resultDesc = document.querySelector('.resultDesc'); resultDesc.innerHTML=infoList[point].desc; } function goresult(){ qna.style.WebkitAnimation = "fadeOut 1s"; qna.style.Animation = "fadeOut 1s"; setTimeout(() => { result.style.WebkitAnimation = "fadeIn 1s"; result.style.Animation = "fadeIn 1s"; setTimeout(() => { qna.style.display = "none"; result.style.display = "block" }, 450)}) setresult(); calresult(); } function addAnswer(answerText, qIdx,idx){ var a = document.querySelector('.answerbox'); var answer = document.createElement('button'); // answer는 클래스나 id값이 없어서 querySelector이용 불가하므로 클래스 만들어주기 answer.classList.add('answerlist'); // qbox, answerlist에 애니메이션 넣기 위해 클래스 만들어주기 answer.classList.add('fadeIn'); // 버튼 간 간격 answer.classList.add('my-3'); answer.classList.add('py-3'); answer.classList.add('mx-auto'); // 답변 클릭할 수 있게 버튼 만들기 그것을 html에서 코드 짜지 않고 // innerhtml을 통해서 넣기 a.appendChild(answer); answer.innerHTML = answerText; // html의 onclick 역할의 addEventListener answer.addEventListener("click", function(){ // 버튼 하나만 클릭해도 모든 버튼이 사라지도록 함 var children = document.querySelectorAll('.answerlist'); for(let i=0; i< children.length; i++){ children[i].disabled =true; children[i].style.WebkitAnimation = "fadeOut 1s"; children[i].style.Animation = "fadeOut 1s"; } setTimeout(() => { // 소,닭 등 각 부여된 select 리스트의 순서를 찾아 value값 1씩 늘려주기 var target =qnaList[qIdx].a[idx].type; for(let i=0; i< target.length; i++){ select[target[i]] +=1; } //// 사용자 입력이 몇 번째인지 인덱스로 넣어주고 idx로 받아주기 -> 몇 번째 질문에서 몇 번째 답변 눌렀는지 select[qIdx] = idx; for(let i=0; i< children.length; i++){ children[i].style.display = 'none'; } goNext(++qIdx); // 버튼이 사라지고 950초쯤 이후 버튼 없어지게 }, 950) }, false); } function goNext(qIdx){ // 결과값 호출하는 함수 if(qIdx === endPoint){ goresult(); return; } // html파일에서 qna 안 qbox가져와라 var q= document.querySelector('.qbox'); q.innerHTML = qnaList[qIdx].q; // 원래는 q.innerHTML =qnalist[0].q; 였는데 0~11번째 질문을 // 하나씩 입력하면 귀찮으니까 let Idx라는 변수 만들어서, for 함수 사용 for(let i in qnaList[qIdx].a){ // answerlist를 하나씩 입력하지 않고 파라미터로 addAnswer(qnaList[qIdx].a[i].answer,qIdx,i); } // status에 따라서 바로 나타내려고 var status = document.querySelector('.statusbar'); status.style.width=(100/endPoint)*(qIdx+1) + '%'; } // 장면 넘어가는 animation function begin(){ main.style.WebkitAnimation = "fadeOut 1s"; main.style.Animation = "fadeOut 1s"; setTimeout(() => { qna.style.WebkitAnimation = "fadeIn 1s"; qna.style.Animation = "fadeIn 1s"; setTimeout(() => { main.style.display = "none"; qna.style.display = "block" }, 450); // 위에서 세운 고넥스트 함수 호출 let qIdx = 0; goNext(qIdx); }, 450); }
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
rmsle 평가할 때, 음수값 포함
print('rmsle: ', mean_squared_log_error(y_val, pred)) 이 코드를 실행할 때, 해당 오류가 나옵니다. Mean Squared Logarithmic Error cannot be used when targets contain negative values.궁금한 것이, 회귀모델을 사용할 때 pred에서 음수값이 나오면 어떻게 처리하면 되는지 궁금합니다. 사실 y_tr 통계값에서 min값이 0이기 때문에 예측 모델에서 음수값이 나오면 안된다고 생각하는데 혹시나 나오게 되면 어떤식으로 전처리를 해야하는지 궁금합니다. 또한 선생님이 실행하신 랜덤포레스트 모델에서 r2_score가 0.77정도 나오는데 저는 같은 과정으로 해도 0.24정도 나와 차이가 큽니다.. 완전히 같을 순 없지만 비슷해야한다고 생각하는데 너무 차이가 나서 저의 코드가 잘못되어 그런것일지 궁금합니다.