묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
DBSCAN 임의의 datapoint 생성 관련 질문
안녕하세요. 강의를 수강중인 학생입니다.DBSCAN 실습에서 총 1510개의 랜덤 datapoint를 만드는 과정에서 질문이 있어서 글을 작성합니다.X1, X2를 생성하는 방식은 이해가 되는데, X3과 X4를 생성하는 것에서 잘 이해가 되지 않습니다.X1과 X2를 생성할 시에는 KMeans에서 데이터를 만드는 방식과 동일하게 하였는데, 왜 갑자기 X3을 생성할 때에 저런 방식을 사용한 것인가요? 그리고 옆에 3과 +4는 무엇을 의미하는 것인가요? X4를 생성할 때에도 왜 3이 되어있는 건가요?추가로, DBSCAN 훈련 결과 나온 label에서 -1을 결과로 가진 datapoint는 무조건 outlier 취급인 것이 기본 설정인가요? 그렇다면, 0을 결과로 가지는 datapoint는 무엇을 의미하나요? 강의에 따르면 set을 통해 나올 수 있는 label을 확인한 결과 {-1, 0, 1, 2, 3, 4, 5}입니다.항상 자세하고 유익한 강의 감사드립니다.
-
미해결React 기반 Gatsby로 기술 블로그 개발하기
IntersectionObserver deploy( gatsby build) 시 오류(자답)
useInfiniteScroll.tsx 파일IntersectionObserver 구문에서 오류 발생아래 처럼 코드 수정import { MutableRefObject, useState, useEffect, useRef, useMemo } from 'react' import { PostListItemType } from 'types/PostItem.types' export type useInfiniteScrollType = { containerRef: MutableRefObject<HTMLDivElement | null> postList: PostListItemType[] } const NUMBER_OF_ITEMS_PER_PAGE = 10 const useInfiniteScroll = function ( selectedCategory: string, posts: PostListItemType[], ): useInfiniteScrollType { const containerRef: MutableRefObject<HTMLDivElement | null> = useRef<HTMLDivElement>( null, ) const [count, setCount] = useState<number>(1) const postListByCategory = useMemo<PostListItemType[]>( () => posts.filter(({ node: { frontmatter: { categories } } }: PostListItemType) => selectedCategory !== 'All' ? categories.includes(selectedCategory) : true, ), [selectedCategory], ) const observer = useRef<IntersectionObserver | null>(null); useEffect(() => { observer.current = new IntersectionObserver( (entries, observer) => { if (!entries[0].isIntersecting) return; setCount(value => value + 1); observer.disconnect(); }, ) }, []); useEffect(() => setCount(1), [selectedCategory]) useEffect(() => { if ( NUMBER_OF_ITEMS_PER_PAGE * count >= postListByCategory.length || containerRef.current === null || containerRef.current.children.length === 0 ){ return; } if(observer && observer.current){ observer.current.observe( containerRef.current.children[containerRef.current.children.length - 1], ) } }, [count, selectedCategory, observer]) return { containerRef, postList: postListByCategory.slice(0, count * NUMBER_OF_ITEMS_PER_PAGE), } } export default useInfiniteScroll
-
미해결[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지
스스로 해보기 좋아요, 좋아요 취소 질문
https://www.youtube.com/watch?v=x7H_mIa5rTE제로초님 유튜브 강의 영상에서프론트에 좋아요 좋아요 취소 버튼 만들려고 하는데유튜브 강의영상에는 pug로 나왔있어서-const like = twit %% twit.Liker.map(l => l.id).includes(req.user.id)이부분을 새로 리뉴얼된 강의에 맞게 바꿀려고 하는데{% if not LikerIdList.includes(req.user.id) and twit.User.id !== user.id %}이런식으로 바꿔서 사용하려고 합니다 그래서router.use((req, res, next) => { //res.locals를 통해서 프론트에서 이 변수를 사용할 수 있습니다 res.locals.user = req.user; // req.user 이 있다는것은 로그인을 했다는 뜻 res.locals.followerCount = req.user ? req.user.Followers.length : 0; res.locals.followingCount = req.user ? req.user.Followings.length : 0; res.locals.followerIdList = req.user ? req.user.Followings.map(f => f.id) : []; res.locals.LikerIdList = next(); }); 이 부분을 바꿔야 할꺼 같은데 res.locals.LikerIdList에 무었을 넣어주면 되나요?아무리 고민해도 잘 모르겠네요
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
분산락의 정의가 궁금합니다.
인터넷을 찾아봐도 분산락은 언제 쓴다. 이 정도의 얘기만 나오고 그래서 분산락이 무엇인지에 관해서는 안 나오더라구요 !Redis를 이용한 방식은 분산락이고, 네임드락을 이용한 방식도 분산락이라고 부르는 것 같긴한데, 대체 분산락이란 무엇인가요?무엇을 분산한다는 것인가요?비관적 락은 분산 락인가요?
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
비관적 락과 update product set stock = stock -1 where id = 1의 차이
update product set stock = stock -1 where id = 1 이렇게 할 경우 읽는 작업과 쓰는 작업이 원자적으로 이루어지고, 이 쿼리가 커밋하기 전까지는 다른 update 쿼리는 블락되기 때문에 비관적 락과 다른 점이 없다고 생각되는데요.제가 잘못 생각한 부분이 있을까요?
-
미해결React 기반 Gatsby로 기술 블로그 개발하기
PostHead.tsx BackgroundImage 동작오류(자답)
PostHead Head쪽에 오류가 발생하여 아래처럼 코드를 수정했습니다.PostHead.tsx 파일의 아래코드를type PostHeadProps = PostHeadInfoProps & { thumbnail: IGatsbyImageData } 다음과 같이 변경해야 정상동작 했습니다.type PostHeadProps = PostHeadInfoProps & { thumbnail: { childImageSharp: { gatsbyImageData: IGatsbyImageData } } } Index.tsx에서 PostList 썸네일 이미지를 가져오는 코드에서 thumbnail 가져오는 방식과 동일하게 PostHead.tsx에서 가져오니 저의 경우 정상동작 했습니다.( 캐시 동작을 하는듯 하므로 npm run clean -> gatsby develop )
-
미해결마케터를 위한 구글 애널리틱스 실무
PDF 강의북 요청 드립니다.
안녕하세요!PDF 강의북 요청드립니다. ymosa3654@gmail.com감사합니다.
-
해결됨[리뉴얼] 타입스크립트 올인원 : Part2. 실전 분석편
안녕하세요.
안녕하세요. 웹 스톰에서 this에 커서를 올리면 사진과 같이 타입이 뜨는 것이 아니라 this가 선언된 함수 자체가 뜨는데 설정에서 바꿔줄수 있을까요?강의 중 f12로 설명해주시는건 다른 질문 답변 보고 command + b 나 command + option + b 또는 command + shift + b 를 통해서 정의, 구현, 타입선언으로 각각 이동 가능하다는 걸 알았는데 현재 이 문제는 해결 못하고 있습니다.vscode로는 강의와 같게 zQuery가 잘 출력 되는걸로 봐서 IDE쪽 설정 같아서 강의 듣는 시간보다 더 많은 시간을 썼는데 결국 해결하지 못해 질문 드립니다. 감사합니다.
-
해결됨재고시스템으로 알아보는 동시성이슈 해결방법
Redis를 이용한 방식이 MySQL을 이용한 방식보다 느리지 않나요?
제가 생각하기로는 Redis를 이용한 방식은 서버 -> Redis서버 -> MySQL 이렇게 두 번 접근하게 되니 네트워크 타는 시간 때문에 당연히 더 느릴 것이라고 생각했거든요비관적 락을 이용한다면서버 -> MySQL 이렇게 바로 접근한 후에 lock이 풀릴 때까지 기다렸다가 바로 작업을 수행하니 더 빠르지 않나요?
-
미해결
코랩 관련 질문입니다.
어떤 오류인가요..?해결법 알려주시면 감사하겠습니다.
-
미해결빅데이터분석기사 실기대비 (R 활용)
실기4 유형2 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.질문1model1 <- train(Segmentation~. , data = train, method = 'rpart')model2 <- train(Segmentation~. , data = train, method = 'lda')1-1 model2에서 glm 대신에 lda를 사용하는 이유가 4개로 분류하기 때문에 lda를 사용한다 하셨는데 그럼 앞으로 glm 대시 lda를 외워서 사용해도 되는지 궁금합니다.1-2 glm보다 lda가 활용폭이 넓기 때문에 lda를 사용하는걸로 이해 했는데 만약 lda대신에 glm만 사용해야 되는 경우가 있나요?1-3 랜덤 포레스트는 14분이 걸린다고 했는데 실기4회 유형2번 문제에서 14분이 걸린다는 얘긴가요??랜덤 포레스트가 빅분기 실기에서 시간때문에 적합하지 않는 경우가 많은건가요? 질문2실기3회 스크립트 일부분model1 <- train(TravelInsurance~. , data = df, method = 'glm')model2 <- train(TravelInsurance~. , data = df, method = 'rpart')p1 <- predict(model1, tst, type = 'prob')p2 <- predict(model2, tst, type = 'prob')p3 <- (p1 + p2)/2실기4회 스크립트 p1 <- predict(model1, test)p2 <- predict(model2, test)2-1 p3를 안 만든 이유가 있을까요? p3를 만들때 와 안만들때 케이스가 궁금합니다. 질문3cm1 <- confusionMatrix(p1,test$Segmentation)mean(cm1$byClass[,7], na.rm = T)cm2 <- confusionMatrix(p2,test$Segmentation)mean(cm2$byClass[,7], na.rm = T) 3-1 위스크립트는 외우라는 틀에 없는 내용인데 만약 시험장에서 위 스크립트가 생각이 안날 경우 생략하고 제출하면 문제가 생기는 부분이 무엇인지 궁금합니다.
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
%f 질문있어요
안녕하세요 수업중 의문이 있어서 문의드려요print('%.8f' % (3.0123456789))이런 명령어를 입력하면3.01234567 이 출력되야 하는게 아닌가요3.01234568 이 출력이 됩니다. 왜 7이 생략이 되는걸까요?
-
미해결빅데이터분석기사 실기대비 (R 활용)
실기 3회 유형2 세부사항 문의
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.유형2 스크립트 관련하여 세부 내용설명이 필요해서 질문드립니다.질문1>df<-read.csv("C:/Users/datauser/Desktop/제3회 실기시험/TravelInsurancePrediction_train.csv")tst<-read.csv("C:/Users/datauser/Desktop/제3회실기시험/TravelInsurancePrediction_test.csv") 질문 1-1위 스크립트는 데이터 불러오기인가요?1-2 x_train, x_test , y_train 3개를 불러오는거와 달리 왜 이 부분을 명칭을 df와 tst로 했는지 어떤 문제 부분일 때 x_train, x_test , y_train 을 지정 하는지 궁금합니다.질문2str(df)summary(df)df$Employment.Type <- as.factor(df$Employment.Type)df$GraduateOrNot <- as.factor(df$GraduateOrNot)df$FrequentFlyer <- as.factor(df$FrequentFlyer)df$EverTravelledAbroad <- as.factor(df$EverTravelledAbroad)df$TravelInsurance <- as.factor(df$TravelInsurance)2-1 문자형 data는 factor로 무조건 보통 바꾸나요?2-2보통 자료의 마지막 컬럼을(3회에서는 TravelInsurance)을 factor 바꾸는거 같던데 맞나요?아니면 어떤 자료의 num을 factor로 바꾸는지 기준이 궁금합니다. 질문33-1분류모델 구축 강의에서는 merge함수를 사용하여 df=merge(x_train,y_train, by='cust-id') 하던데 이문제에서는자료를 합치지 않은 이유가 궁금합니다.3-2만약 합치지 않은이유가 회귀모델이라서 그렇다면 문제에 어떤부분을 보고 분류모델인지 회귀모델인지 구분하는법이 궁금합니다. 질문4library(ModelMetrics)auc(test$TravelInsurance, p3[,2])4-1 auc하는 부분은 모델의 성능을 평가하기 위해서 사용한건가요? 질문5 df 자료 변환 vs tst자료 변환df$Employment.Type <- as.factor(df$Employment.Type)df$GraduateOrNot <- as.factor(df$GraduateOrNot)df$FrequentFlyer <- as.factor(df$FrequentFlyer)df$EverTravelledAbroad <- as.factor(df$EverTravelledAbroad)df$TravelInsurance <- as.factor(df$TravelInsurance)tst변환tst$Employment.Type <- as.factor(tst$Employment.Type)tst$GraduateOrNot <- as.factor(tst$GraduateOrNot)tst$FrequentFlyer <- as.factor(tst$FrequentFlyer)tst$EverTravelledAbroad <- as.factor(tst$EverTravelledAbroad)5-1 df와 동일하게 tst를 자료 변환하는건 맞는지 그런데 TravelInsurance 에 대해서는 왜 factor로 변환하지 않았는지 궁금합니다. 질문6스크립트를 외워서 시험을 칠려고 하는데 세부사항 이해가 안되니 적용이 안되네요강의를 여러번 들어도 잘 모르겠습니다. 어떻게 공부를 더 해야 될지 조언도 부탁드립니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
setmaxthreads 그리고 추가 질문
ThreadPool.SetMinThreads(1, 1);ThreadPool.SetMaxThreads(3, 3); 에서 최대 쓰레드가 3개라고 설정했는데 parallel로 실행하면아래와 같이 1,4,6,5 이렇게 4개의 쓰레드 id를 가지는지 궁금합니다.그리고 TLS가 static 변수를 각 쓰레드의 로컬 변수로 만들어서 사용한다는 건데 이 또한 lock을 걸어서 사용하는 건가요?만약 lock을 사용하지 않는다면 쓰레드 에서 값을 변경한 것이 static 변수에는 영향을 끼치지 않고 스레드 로컬에서만 사용한다는 것인가요?
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃허브 권한 요청 드립니다.
인프런 아이디 : coll_eksql@naver.com인프런 이메일 : colleksql3@gmail.com깃헙 아이디 : colleksql3@gmail.com깃헙 Username : dvlpDana
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-L 2852 prev에 관하여 질문
prev 전역변수 선언시 초기화 방법전역변수로 string prev를 선언해서 내부에 ""빈문자열로 초기화됩니다.C++ 에 대한 이해가 부족atoi(s.c_str()) 에서 빈문자열이 들어갔을때 0을 반환하는지 확인빈문자열.substr(3, 2)문자열에 index를 초과해도 "" 빈문자열을 반환하는지전역변수 string prev = "00:00" 으로하는게 뭔가 위에 문법을 생각하지않아도 될것같아 심리적인 안점감이 듭니다.
-
미해결앨런 iOS 앱 개발 (15개의 앱을 만들면서 근본원리부터 배우는 UIKit) - MVVM까지
활용-2 앱/코드 설정하기 (활용 앱 14강)
왜 저렇게 뜨는지 모르겠습니다 ㅠㅠ 빌드는 잘 됩니다!
-
미해결스프링 핵심 원리 - 기본편
선생님 Restful API 제작 관련 커리큘럼이 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]안녕하세요. 선생님현재 스프링 입문강의, 기본강의를 완강한 상태이고 복습 중 입니다.아직 학생이고, 프로젝트를 한개 해보려고 싶은 마음에 실력은 부족하지만 Restful API제작을 하고 싶습니다.기술스택으로는 SpringBoot 와 JPA를 사용해보고 싶고, HTTP통신 기반으로 제작하려 합니다.11월 말일부터 제작을 시작하고 싶은데, 다음 커리큘럼으로 선생님의 HTTP강의를 듣고, 이후에 어떤 강의를 들어야할지 고민되어서, 질문드립니다.정말 어려운 프로젝트가 될거같지만, 1. HTTP강의 이후에 Spring MVC 1,2듣기 (Servlet과 자바 MVC패턴2에 대한 지식은 가지고있습니다.)HTTP강의 이후 Spring Boot JPA강의 야생형으로 듣기이 두가지 방법을 고민하고 있습니다.엄청난 서비스를 만들면 좋겠지만, 아직 서비스를 구동하기에 필요한 API에 대한 개념이 아에 없는 상태인데,어떤 과정으로 넘어가면 좋을까요?감사합니다.
-
미해결파이썬(Python)으로 데이터 기반 주식 퀀트 투자하기 Part1
수업자료 불러오기
파이썬으로 ~~ part.2 강의자료를 주피터에서 불러오기가 잘 안돼서 처음부터 다시 불려오려다가잘 불러와져있던 part.1까지 모두 삭제해버렸습니다강의자료를 workspace 폴더로 옮기면 된다는 설명을 part.1 강의에서 찾았습니다(이미 강의자료가 불러와져있던건 지운 상태였죠)문제는 이후에 다시 workspace 폴더로 옮기고 주피터를 실행해도 강의자료가 나오지 안나오네요그래서 upload file 아이콘을 눌러서 하나하나씩 업로드를 했는데 이렇게 하면 전체 강의자료의 목차가 한번에 안뜨게 되네요(table of contents-점3개 줄 3개 아이콘 눌렀을때)이전처럼 강의자료가 (예를들어 1~6까지) 한번에 다 나오게 하려면 어떻게 해야하나요? (workspace 폴더에는 옮긴 파일들이 그대로 잘있으나 주피터를 실행시키면 이전처럼 안나오네요 ㅠㅠ) 원래는 어떻게 있었는지 기억나지는 않지만 현재 uploadfile 아이콘으로 하나하나 불러왔더니 이렇게 됐네요(기존처럼 바꾸려면 어떻게 해야할까요?)
-
해결됨실전! Querydsl
tuple로 조회된 결과값을 modelMapper에 담을 수 있을까요?
아래와 같이 querydsl을 사용해서 목록을 조회하고 List로 받은 결과값을 BoardDto 타입으로 변환해서 저장하는것은 잘 됩니다. List<Board> list = queryFactory.select(board) .from(board) .fetch(); List<BoardDto> boardList = new ArrayList<>(); list.forEach(v -> { boardList.add(modelMapper.map(v, BoardDto.class)); });그런데 문제는 아래와 같이 Tuple로 리턴을 받았을때는 어떻게 담아야 할까요?List<Tuple> list = queryFactory.select(board.title, board.content) .from(board) .fetch();검색을 했을 때.. 아래와 같이 사용을 하면 된다고 하는데.. getElements()라는 메소드는 존재하지 않는데 어떻게 저렇게 사용을 하는지 모르겠네요..(현재 자바 8을 사용하고 있습니다.)List<Product> products = productsTuple .stream() .map(p -> { Map<String, Object> maps = new HashMap<>(); p.getElements().forEach(te -> { maps.put(te.getAlias(), p.get(te.getAlias())); }); return modelMapper.map(maps, Product.class)); }) .collect(Collectors.toList());단순하게 DB에 있는 컬럼만을 사용자로 보내주는 경우는 많지 않고 가공을 해서 보내줘야 하는 경우가 대부분인데..querydsl로 tuple데이터를 조회했을 때 modelmapper로 담는 방법이 없을까요? tuple로 조회된 정보들은 Map으로 따로 담아서 view 로 리턴을 해 주는데 그렇게 되면 tuple의 결과값에 따라 map에 넣어주는 데이터들도 많아지고, 중복 비슷한 자료들이 너무 많아져서 보기가 좋지 않은데.. return 할 DTO를 하나 만들어서 그곳에 리턴될 값들으 모두 담아서 리턴을 할 수 있는 방법이 있을까요??예를들어 게시판 테이블에서 조회를 할 때 특정 필드값들을 select하고, 첨부파일 정보를 select하고, 회원 정보를 select를 해서이 3개의 테이블에 있는 필요한 값들을 DTO를 하나 만들어서 그곳에 담아서 리턴을 해 주고 싶은데제가 알고있는 방식은Map<String, Object> map = new HashMap<>(); map.put("id", tuple(user.id)); map.put("title",tuple(board.title)); map.put("fileName", tuple.attach.fileName));위와같은 식으로 맵에 각각 담아서 맵으로 화면에 리턴을 해 주고 있는데이런 값들을 담을 DTO를 아래와 같이 만들고public class returnDTO{ private Long id; private String title; private String filename; }returnDTO 안에 modelmapper나 다른 방법을 사용해서 한꺼번에 담을 수 있는 방법이 있을까요?값이 얼마 없을때는 그냥 사용을 하면 되는데 값이 많아지고, 하나의 메소드 안에서 여러번 가공을 해서 만들어야 할 경우에는 Map을 만드는 작업을 여러번 반복을 해야하는 상황이 발생하다보니 소스가 많이 지저분해지는 느낌이 많이 듭니다.