묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[개정판] 파이썬 머신러닝 완벽 가이드
best_score_값과 pred값이 다른 이유
안녕하세요, 구글코랩에서 GridsearchCV를 실행하다가 궁금한 점이 생겨 질문합니다. grid_dtree.best_score_ 를 출력하면 정확도가0.975가 나오고 pred=grid_dtree.predict(X_test)에서 pred를 출력하면 0.9667이 나옵니다. refit=True옵션이 최고성능을 내는 파라미터로 재학습하는 것이니 grid_dtree를 테스트 데이터셋으로 학습 및 예측한 pred와 best_score_ 속성 값은 동일해야 하는 것 아닌지 궁금합니다. 두 값이 다른 이유는 K폴드를 실행하는 과정에서 학습데이터셋과 테스트데이터셋의 구간이 강의에서 나온 구간과는 약간 상이해서 그런듯합니다. 이것도 맞는지 알려주시면 감사하겠습니다!
-
미해결애플 웹사이트 인터랙션 클론!
강사님 질문있습니다.
const calcValues = (values, currentYoffset) calcValues 함수에 values 값이 제대로 들어가지 않습니다. calcValues 함수 속에서 console.log(values, "작동") 을 기입해도 undefined라고 등장하고, 당연히 해당 함수를 돌릴때, 계속 아래와 같은 에러가 등장합니다. Uncaught TypeError: Cannot read property 'length' of undefined --- 여기서 등장하는 length는 if (values.length === 3) { 이부분이라고 생각해주시면 감사하겠습니다. 아래 복사한 제 코드문입니다. 무엇이 잘못일까요...? (() => { let yOffset = 0; // window.pageYOffset 대신 사용할 변수 let prevScrollHeight = 0; // 현재 스크롤 위치(yOffset)보다 이전에 위치한 스크롤 섹션들의 스크롤 높이값의 합 let currentScene = 0; // 현재 활성화된(눈 앞에 보고있는) 씬(scroll-section) let enterNewScene = false; const sceneInfo = [ { // 0 type: "sticky", heightNum: 5, // 모든 디스플레이 높이의 5배로 지정해준다. scrollHeight: null, objs: { container: document.querySelector("#scroll-section-0"), messageA: document.querySelector( "#scroll-section-0 .main-message.a" ), messageB: document.querySelector( "#scroll-section-0 .main-message.b" ), messageC: document.querySelector( "#scroll-section-0 .main-message.c" ), messageD: document.querySelector( "#scroll-section-0 .main-message.d" ) }, values: { messageA_Opacity_in: [0, 1, { start: 0.1, end: 0.2 }], messageB_Opacity_in: [0, 1, { start: 0.3, end: 0.4 }], messageC_Opacity_in: [0, 1, { start: 0.5, end: 0.6 }], messageD_Opacity_in: [0, 1, { start: 0.7, end: 0.8 }], messageA_Opacity_out: [1, 0, { start: 0.25, end: 0.3 }], messageB_Opacity_out: [1, 0, { start: 0.45, end: 0.5 }], messageC_Opacity_out: [1, 0, { start: 0.65, end: 0.7 }], messageD_Opacity_out: [1, 0, { start: 0.85, end: 0.9 }], messageA_translateY_in: [20, 0, { start: 0.1, end: 0.2 }], messageB_translateY_in: [20, 0, { start: 0.3, end: 0.4 }], messageC_translateY_in: [20, 0, { start: 0.5, end: 0.6 }], messageD_translateY_in: [20, 0, { start: 0.7, end: 0.8 }], messageA_translateY_out: [0, -20, { start: 0.25, end: 0.3 }], messageB_translateY_out: [0, -20, { start: 0.45, end: 0.5 }], messageC_translateY_out: [0, -20, { start: 0.65, end: 0.7 }], messageD_translateY_out: [0, -20, { start: 0.85, end: 0.9 }] } }, { // 1 type: "normal", // heightNum: 5, scrollHeight: 0, objs: { container: document.querySelector("#scroll-section-1") } }, { // 2 type: "sticky", heightNum: 5, scrollHeight: 0, objs: { container: document.querySelector("#scroll-section-2") } }, { // 3 type: "sticky", heightNum: 5, scrollHeight: 0, objs: { container: document.querySelector("#scroll-section-3") } } ]; ///////////////////////////////////////////////// const setLayout = () => { // 각 높이 세팅 for (let i = 0; i < sceneInfo.length; i++) { if (sceneInfo[i].type === "sticky") { sceneInfo[i].scrollHeight = sceneInfo[i].heightNum * innerHeight; } else { sceneInfo[i].scrollHeight = sceneInfo[i].objs.container.style.offsetHeight; } sceneInfo[ i ].objs.container.style.height = `${sceneInfo[i].scrollHeight}px`; } totalScrollHeight = 0; yOffset = window.pageYOffset; for (let i = 0; i < sceneInfo.length; i++) { totalScrollHeight += sceneInfo[i].scrollHeight; if (totalScrollHeight >= yOffset) { currentScene = i; break; } } document.body.setAttribute("id", `show-scene-${currentScene}`); }; ///////////////////////////////////////////////// const calcValues = (values, currentYoffset) => { let rv; let scrollHeight = sceneInfo[currentScene].scrollHeight; let scrollRatio = currentYoffset / scrollHeight; console.log(currentYoffset); if (values.length === 3) { let partScrollStart = values[2].start * scrollHeight; let partScrollEnd = values[2].end * scrollHeight; const partScrollHeight = partScrollEnd - partScrollStart; if ( currentYoffset >= partScrollStart && currentYoffset <= partScrollEnd ) { rv = ((currentYoffset - partScrollStart) / partScrollHeight) * (values[1] - values[0]) + values[0]; } else if (currentYoffset < partScrollStart) { rv = values[0]; } else if (currentYoffset > partScrollEnd) { rv = values[1]; } } else { rv = scrollRatio * (values[1] - values[0]) + values[0]; } return rv; }; const playAnimation = () => { const Values = sceneInfo[currentScene].values; const objs = sceneInfo[currentScene].objs; const currentYoffset = yOffset - prevScrollHeight; const scrollHeight = sceneInfo[currentScene].scrollHeight; const scrollRatio = currentYoffset / scrollHeight; switch (currentScene) { case 0: console.log("0번입니다.", 0); if (scrollRatio <= 0.24) { objs.messageA.style.opacity = calcValues( Values.messageA_Opacity_in, currentYoffset ); objs.messageA.style.transform = `translateY( ${calcValues( Values.messageA_TranslateY_in, currentYoffset )}% )`; } else { objs.messageA.style.opacity = calcValues( Values.messageA_Opacity_out, currentYoffset ); objs.messageA.style.transform = `translateY( ${calcValues( Values.messageA_TranslateY_out, currentYoffset )}%)`; } break; case 1: console.log("1번입니다.", 0); break; case 2: console.log("2번입니다.", 0); break; case 3: console.log("3번입니다.", 0); break; } }; const scrollLoop = () => { enterNewScene = false; prevScrollHeight = 0; for (let i = 0; i < currentScene; i++) { prevScrollHeight += sceneInfo[i].scrollHeight; } if (yOffset > prevScrollHeight + sceneInfo[currentScene].scrollHeight) { enterNewScene = true; currentScene++; document.body.setAttribute("id", `show-scene-${currentScene}`); } if (yOffset < prevScrollHeight) { enterNewScene = true; if (currentScene === 0) return; currentScene--; document.body.setAttribute("id", `show-scene-${currentScene}`); } if (enterNewScene) return; playAnimation(); }; window.addEventListener("scroll", () => { yOffset = window.pageYOffset; console.log(yOffset); scrollLoop(); }); window.addEventListener("load", setLayout); window.addEventListener("resize", setLayout); })();
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
프로젝트 생성 후, 메인 실행하고 끄면 에러가 발생합니다.
이니셜라이저로 만들어서 압축풀고 annotation processor체크하고 메인 실행하면 잘됩니다. 화이트라벨 페이지도 뜨구요. 그런데 종료하면 이런 에러가 뜨네요... 계속 프로젝트 만드는 건 문제 없지만 프로그램 종료마다 이게 뜨니 불안합니다. 혹시 이게 뭔지 아시는 분 계신가요? ㅠㅠ
-
미해결테스트주도개발(TDD)로 만드는 NodeJS API 서버
테스트 환경 개선 질문
안녕하세요 강사님 계속 잘 따라하다가 테스트환경개선하기부분에서 막혔습니다. 패키지 파일에서 NODE_ENV=test 추가해주고 index.js에 변경한 부분 process를 이용해서 반영해 보았는데 계속 test 실행시 NODE_ENV가 인식이 안되거나 내부및외부 명령어가 아니라고 뜨는데요... 답변주시면 감사하겠습니다.
-
미해결애플 웹사이트 인터랙션 클론!
requestanimationframe 질문
안녕하세요 강사님 두가지 질문이 있는데요 첫번째로는 function loop{... requestanimationframe(loop) } 일때 loop이 계속 돌고있는데 이건 그러면 loop함수가 없어지지 않고 계속 생성되고 있는건가요?? 답변주시면 감사하겠습니다. 그리고 두번째로는 위의 addEventListener함수에서 rafId = requestAnimationFramp(loop) 을 쓰지 않고 그냥 loop을 쓰면 되지 않나요? rafId는 loop안에서만 사용되어도 상관없다고 생각이 돼서요. 답변주시면 감사하겠습니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part2: 자료구조와 알고리즘
class 안에서 자신을 재사용? 하는 경우
class TreeNode<T> { public T Data { get; set; } public List<TreeNode<T>> Children { get; set; } = new List<TreeNode<T>>(); } 이 부분에서 현재 정의하는 클래스 내부에 자신을 다시 사용하는 것이 왜 가능한 것인가요?(TreeNode 클래스의 정의 내부에 TreeNode가 사용되는 것) 이전부터 이렇게 사용하시길래 그냥 지나가려다가 궁금해서 질문드립니다.
-
미해결Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)
StreamBuilder dispose 문의.
안녕하세요 강사님. search_page.dart(StatefulWidget) 파일내용중 문의 드립니다. StreamBuilder 에 대해서 dispose 할 필요는 없나요? 필요하다면 어떻게 처리하는지 문의 드립니다. 감사합니다.
-
미해결Flutter 입문 - 안드로이드, iOS 개발을 한 번에 (with Firebase)
StreamBuilder dispose 문의.
안녕하세요 강사님. root_page.dart(StatelessWidget) 파일내용중 문의 드립니다. StreamBuilder 에 대해서 dispose 할 필요는 없나요? 필요하다면 어떻게 처리하는지 문의 드립니다. 감사합니다
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
git 허가 부탁드립니다~
git 허가 부탁드립니다~!!
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
조합만들기처럼 res 리스트를 만들어서
안녕하세요 저는 sum을 인자로 두지않고, 조합만들기처럼 res 리스트를 만들어서 진행했습니다. import sys sys.stdin = open("input.txt", 'r') def dfs(L, s): global cnt if L==k and sum(res) % m ==0: cnt+=1 else: for i in range(s, n): res[L] = num[i] dfs(L+1, i+1) if __name__ == "__main__": n, k = map(int, input().split()) num = list(map(int, input().split())) m = int(input()) cnt = 0 res = [0]*(k) dfs(0,0) print(cnt) 10. 조합만들기에서 총합 개념만 조금 더해서 만든 코든데 계속 IndexError: list assignment index out of range가 납니다.. 왜 그런지 모르겠어요..
-
미해결플렉스(Flex) 반응형 웹사이트 포트폴리오(The World's Best Cities)
완성본을 보고 있습니다.
아직 1회차로 정주행 하고 있습니다. 완성본으로 모바일반응형으로 화면 전환하여 트리거를 클릭하여 .active를 넣어준 후 다시 클릭해 빼준 후, 다시 웹화면으로 돌아오면, .gnb와 .sns가 사라져 있습니다. 새로고침하면 다시나오는데, 일시적인게 아니고 계속그렇습니다. 제 생각에는 $('.trigger').click(function(){ $(this).toggleClass('active') $('.gnb, .sns').toggle() }) 여기에서 단순히 $('.gnb, .sns').toggle() 이렇게만 하면 .gnb와 .sns 라는 클래스가 아예 들어갔다 사라졌다를 하기 때문에, 웹화면에도 영향을 미치는 것으로 판단됩니다. 물론 이 파트를 플렉스 관련하여 배우는 거라 이 부분이 그렇게 중요하지 않고 넘길 수 있는 부분이지만, 조금 더 확실히 하고 싶었습니다. 다음 영상에서 이부분에 대해 언급을 해주셨으면 이 질문을 삭제하겠습니다. 괜한 또 오지랖인것 같아서. 그래서 선생님께서 그동안 가르쳐주신걸 기초로 했을 때, CSS 의 반응형 즉 미디어쿼리 파트에 .gnb.active, .sns.active { display: block; } 이 부분을 추가하고, 제이쿼리를 $('.trigger').click(function(){ $(this).toggleClass('active') $('.gnb, .sns').toggleClass('active') }) 이렇게 수정해 보니 잘 작동되었습니다. 이 방법도 괜찮은가요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
DDL문 생성시 주석 관련 질문입니다.
엔티티 정보를 토대로 DDL문이 만들어 지는데 컬럼 주석은 만들어지지 않습니다. 컬럼주석 생성시 DB에 종속되지 않고 해주는 어노테이션이나 기능이 있나요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
low level code에 관해 질문드립니다.
안녕하세요. 선생님 현재 대학원 진학을 앞둔 학생입니다. 선생님 강의를 통해 다향한 Object detection에 내용을 배울 수 있어 감사드립니다. 다만, 저의 학습 목표가 기존 모델의 구조를 변형 혹은 추가를 하려고 하다 보니 제한점이 생겨 질문드립니다. 강의 실습에 API를 사용하셨는데 혹시 API가 아닌 low level의 code를 참고할 수 있는 site가 있을까요? API의 경우 기존 code에 접근하기가 오히려 어렵게 느껴져서요... 좋은 강의 정말 감사합니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
7:37초에 findIndex 대신 find 써준 이유가
draft를 써서 굳이 불변성 유지를 신경써줄 필요가 없어졌기 때문에 Index를 찾을 필요없이 그냥 바로 find를써서 v.id === action.data.postId인 객체를 찾아준건가여??
-
해결됨[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문
13분 40초 부근에 long 타입의 변수는 id계열에 사용한다고 하셨는데
id계열이 무엇인지 알 수 있을까요?
-
[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
해외 지수 크롤링건입니다
삭제된 글입니다
-
미해결실전 리액트 프로그래밍
성능 이슈 관련해서 문의드려요
강사님 안녕하세요. 강사님 강의가 좋아서 몇 번을 돌려보고 있는 지 모르겠습니다. 좀 더 실무에 활용할 수 있는 리액트 두번째 강의도 만들어 주시면 안될지요? ㅎㅎ 오늘은 강의에서 적용하셨던 Antd 의 다양한 요소를 함께 적용해 보고 있는데요.Antd 의 Form 에 다양한 요소들(Input, Select, Radio 등) 을 담아서 양식 등록하는 화면을 만들어 보고 있습니다. 만약 Form 안에 많은 항목들이 담긴 양식을 하나 개발한다고 가정해보겠습니다.양식의 모든 요소들은 Redux 를 사용하여, 강의님이 설명해주신 dispatch(SetValue(...)) 와 useSelector 를 사용하여 연동을 시키구요.. 이럴 경우, form 의 한 가지 요소만 값이 변경해도 양식 전체의 가상돔이 리렌더링이 발생할 듯 한데요..혹시 양식의 요소가 많아질 경우, 양식을 하나의 컴포넌트가 아닌 여러개의 컴포넌트로 분리시키는 것이 중요할 지 궁금합니다.(한번에 저장되는 양식이라 할지라도) 쪼갠 컴포넌트들이 재활용 가능성이 전혀 없는 Component 라 할지라도 성능을 고려하여 state 의 변화에 따른 렌더링의 범위를 줄이기 위해 하나의 양식 컴포넌트를 여러 개로 쪼개야만 하는 것인지.. 이런 부분들이 공부하면서 어려운 점이네요..조언을 부탁드리겠습니다.
-
미해결QGIS 기초와 Python의 만남
food_layer.invalid()를 사용했는데 왜 저런 빨간 글씨가 나올까요?
(사진)
-
미해결Vue.js - Django 연동 웹 프로그래밍 (실전편)
정적 이미지는 어떻게 넣을 수 있을까요?
안녕하세요. 강의를 듣고 실제로 Django와 Vue를 연동해서 홈페이지를 만들어보고 있는 완강생입니다. 사이트에 정적 이미지를 넣고 싶은데, 두 개를 연동한 경우에는 어떻게 해야 이미지를 올릴 수 있을까요?ㅠㅠ href로 해서 외부에서 가져오는건 속도가 너무 느립니다.
-
해결됨빠르게 git - 핵심만 골라 배우는 Git/Github
ls-al과 status 명령어 입력시 나타나는 것들에 대한 질문이 있습니다.
예전에 유튜브 영상을 보면서 git을 처음 설치하고 이것저것 따라해보다가 어려워서 중단했던 적이 있는데 이번에 이 강의를 들으면서 다시 해보려고 하니까 $ls -al 과 $git status 명령어를 쳤을 때 아래와 같은 것들이 나오는데 이미 git에 연결된채로 있었기 때문에 이런건가요? 혹시 없앨 수 있는 방법이 있나요?