172만명의 커뮤니티!! 함께 토론해봐요.
미해결
파이썬 무료 강의 (활용편7) - 머신러닝
프로젝트 단계에서 surprise 모듈을 설치할 수가 없어요. !pip install scikit-surprise 이후에 출력된 내용 중 하단에 다음과 같이 오류 메시지가 뜹니다. note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for scikit-surprise ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (scikit-surprise) 어떤 문제인지, 어떻게 해결해야 하는지 궁금합니다.
python 머신러닝 anaconda scikit-learn
서승아
2024-08-15T06:09:11.347Z
댓글 1
좋아요 0
조회수 385
해결됨
스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 섹션 2 HelloServlet 진행 도중 코드를 똑같이 작성하고, http://localhost:8080/hello?username=world를 입력 하였는데 화이트 라벨 에러 페이지가 발생했습니다. 어떻게 해야하나요?
devcjw
2024-08-15T04:13:38.515Z
댓글 3
좋아요 0
조회수 320
해결됨
(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
29분 포인트 강의를 보다보니 24년2회 swap 낚시문제가 떠올라서 질문드립니다. void swap(){ int temp; temp =a; a = b; b = temp; } int main(){ int a = 11; int b = 19; swap(); 기출2회 일부 추출인데요.. 해당 스왑부분을 보면 포인터변수를 준 것 외엔 차이가 없어 보입니다. 위 기출의 경우엔 왜 스왑이 될 수 없는지 부연설명이 있으면 이해가 빠를 것 같아요! (스왑 함수에서 temp값에 a넣어주고 a에 b를 대입하고.. 포인터변수 외엔 차이를 못느끼겠습니다.)
주서
2024-08-15T02:05:19.499Z
댓글 1
좋아요 0
조회수 279
미해결
스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
FrontControllerServletV3 코드에서 paramMap는 스프링 부트가 시작하고 http응답이 올때마다 새로운 객체가 생성되어 사용되는 건가요?? private Map<String, String> createParamMap(HttpServletRequest request) { Map<String, String> paramMap = new HashMap<>(); request.getParameterNames().asIterator() .forEachRemaining(paramName -> paramMap.put(paramName, request.getParameter(paramName))); // paramName = "username","age" return paramMap; }
2024-08-14T21:58:38.877Z
댓글 1
좋아요 0
조회수 349
미해결
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
https://drive.google.com/file/d/1xtWyIr26d2Xj-Z8WYxTQDvjoAQkEOqc_/view?usp=drive_link
YH K
2024-08-14T16:18:19.559Z
댓글 1
좋아요 0
조회수 149
미해결
Next + React Query로 SNS 서비스 만들기
제로초님의 next-auth 작업하시는걸 보고 프론트에서 next-auth로 로그인하는것을 구현을 하긴 했는데 로그인(인가)을 하는 주체가 프론트다 보니 기존에 배웠을때는 nest 또는 node에서 passport를 이용해서 작업을 했엇는데 이제는 passport로 인가 하는 작업이 필요가 없어진건지 궁금합니니다. 필요가 없다라고 하면 백엔드서버에서는 이사람이 로그인을 했는지 안했는지를 알아야 할텐데 그거는 어떻게 구현을 해야할지가 막막해서 질문드립니다 ㅠㅠ
react next.js react-query next-auth msw
GI P
2024-08-14T13:37:51.302Z
댓글 1
좋아요 0
조회수 217
미해결
스프링 DB 2편 - 데이터 접근 활용 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 내부 트랜잭션을 커밋 하지 않고 바로 외부 트랜잭션을 커밋 해도 문제는 없는건가요?
spring mvc jpa querydsl spring-data-mybatis spring-jpa
만릭
2024-08-14T12:06:43.532Z
댓글 2
좋아요 0
조회수 175
해결됨
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
질문을 온전히 이해할 수 있도록, 모든 맥락을 전달해주세요. 질문은 질문자가 번거로워야 보다 좋은 답변을 얻으실 수 있습니다. 시행착오를 알려주시면 곧바로 원하는 문제에 집중할 수 있습니다. 오류 메시지는 일부만 알려주시기보다 전체 오류 메시지를 캡처해서 주시면, 오류 파악에 도움이 됩니다. 당신의 파이썬/장고 페이스메이커가 되겠습니다. ;-) 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. Q1 7-01 02 강의에서 ipv4address custom field를 생성하셨는데요 8-20 강의 같이 이후에는 그냥 Django GenericIPAddressField를 사용셨습니다. 7-01 02강의는 그냥 custom 필드를 보여주기 위한 예시이고 그냥 장고에서 제공해주는 IP 필드를 사용하면 되는건가요? 아니면 차이점이 존재하는 건가요? Q2 제가 제작한 사이트의 사용량 집계를 위해 로그를 얻으려고 합니다. class AccessLog(models.Model): request = models.URLField() time = models.DateTimeField(auto_now=True) user = models.ForeignKey(User, on_delete=models.CASCADE, null=True) ip = models.GenericIPAddressField() 상기와 같은 모델을 작성하여 request가 client로 날라올 때마다 db에 쌓아나가는게 맞을까요? 아니라면 logger를 이용하는게 맞을까요?
react python django web-api htmx
pplkjh2
2024-08-14T06:50:22.398Z
댓글 1
좋아요 0
조회수 142
미해결
[개정판] 파이썬 머신러닝 완벽 가이드
분류 강의 위스콘신 유방암 예측 실습강의 코드입니다. from xgboost import XGBClassifier xgb_wrapper = XGBClassifier(n_estimators=400, learning_rate=0.05, max_depth=3) evals = [(X_tr, y_tr), (X_val, y_val)] xgb_wrapper.fit(X_tr, y_tr, early_stopping_rounds=50, eval_metric="logloss", eval_set=evals, verbose=True) ws50_preds = xgb_wrapper.predict(X_test) ws50_pred_proba = xgb_wrapper.predict_proba(X_test)[:, 1] --------------------------------------------------------------------------- TypeError Traceback (most recent call last) Cell In[36], line 5 3 xgb_wrapper = XGBClassifier(n_estimators=400, learning_rate=0.05, max_depth=3) 4 evals = [(X_tr, y_tr), (X_val, y_val)] ----> 5 xgb_wrapper.fit(X_tr, y_tr, early_stopping_rounds=50, eval_metric="logloss", 6 eval_set=evals, verbose=True) 8 ws50_preds = xgb_wrapper.predict(X_test) 9 ws50_pred_proba = xgb_wrapper.predict_proba(X_test)[:, 1] File ~\anaconda3\Lib\site-packages\xgboost\core.py:726, in require_keyword_args.<locals>.throw_if.<locals>.inner_f(*args, **kwargs) 724 for k, arg in zip(sig.parameters, args): 725 kwargs[k] = arg --> 726 return func(**kwargs) TypeError: XGBClassifier.fit() got an unexpected keyword argument 'early_stopping_rounds' 위 코드를 입력하였을때 이러한 오류가 뜨는데 무엇이 원인인지 잘모르겠습니다. Xgboost 버전은 2.1.0이고 파이썬버전같은경우는 3.1.1입니다. 아래는 인터넷에 검색하여 찾아낸 방법으로 입력한 코드입니다 from xgboost import XGBClassifier xgb_wrapper=XGBClassifier(n_estimators=400,learning_rate=0.05,max_depth=3,early_stopping_rounds=50,eval_metric="logloss") evals=[(X_tr,y_tr),(X_val,y_val)] xgb_wrapper.fit(X_tr,y_tr, eval_set=evals,verbose=True) ws50_preds=xgb_wrapper.predict(X_test) ws50_pred_proba=xgb_wrapper.predict_proba(X_test)[:,1] 아래는 위 코드에 대한 결과값입니다. 오차 행렬 [[35 2] [ 2 75]] 정확도: 0.9649, 정밀도: 0.9740, 재현율: 0.9740, F1: 0.9740, AUC:0.9961 아래는 책에 있는 코드를 입력하였을때의 결과값입니다. 오차 행렬 [[35 3] [ 2 75]] 정확도: 0.9561, 정밀도: 0.9615, 재현율: 0.9740, F1: 0.9677, AUC:0.9933 제 생각에는 버전차이에 따른 문제같은데 수정된 코드를 사용하였을때 결과값은 도출되지만 기존 강의에서 사용하신 코드의 결과값과는 다릅니다. 수정된 코드를 그대로 사용하는게 맞을지 아니면 다른 방법이 있는지 궁금합니다.
김정구
2024-08-14T04:26:04.972Z
댓글 1
좋아요 0
조회수 1477
해결됨
(2026 최신!) 일주일만에 합격하는 정보처리기사 실기
8:29초 부분입니다. b=a[:3] 이면 배열주소 0123을 출력하는게 아니라 3까지(012) 라고 봐야하는건가요? c=a[4:6]도 마찬가지로 45까지만 출력하는건가요?
주서
2024-08-14T04:12:21.541Z
댓글 1
좋아요 0
조회수 220
미해결
Airflow 마스터 클래스
실무는 어떻게하는지 궁금해요
조만준
2024-08-14T03:52:28.295Z
댓글 1
좋아요 0
조회수 216
미해결
파이썬/장고로 결제 시작하기 (Feat. 아임포트) - 기본편
사진과 같이 편집할 때 마다 djlint가 계속 검사합니다ㅠㅠ black은 처음엔 그러다가 자동 저장 설정 변경한 뒤부터 안 그러는데 djlint의 경우는 자동저장을 바꾸고 감시기 설정 체크 모두 해제해도 1바이트의 글자만 입력해도 자동 감시를 시작하는군요ㅠㅠ 혹시 아시는 바가 있을까요... 지피티가 해결을 못 해주어서 1시간이 넘게 고생하는 중입니다ㅠㅠ...
KANG HOJUN
2024-08-14T03:13:02.154Z
댓글 1
좋아요 0
조회수 149
해결됨
[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
api 요청하기를 눌러도 콘솔창에 아무것도 안떠요
react node.js seo graphql next.js
imhj11777
2024-08-14T02:51:56.348Z
댓글 2
좋아요 0
조회수 146
해결됨
[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)
https://github.com/supabase/storage/issues/207 모든 파일을 제거했을 때 갑자기 .emptyFolderPlaceholder가 파일 리스트에 나오는 문제입니다. 슬랙에 올라온 질문인데 같은 이슈를 겪는 분들이 종종 계실 것 같아 인프런 커뮤니티에도 해결책을 공유드립니다.
firebase next.js tailwind-css react-query supabase
로펀
2024-08-14T02:46:45.888Z
댓글 1
좋아요 0
조회수 186
해결됨
[풀스택 완성] Supabase로 웹사이트 3개 클론하기 (Next.js 14)
Slack에 올라온 질문이 좋아서 인프런 커뮤니티에도 공유드립니다.
firebase next.js tailwind-css react-query supabase staletime cache
로펀
2024-08-14T02:42:14.452Z
댓글 1
좋아요 1
조회수 177
미해결
Next + React Query로 SNS 서비스 만들기
강좌와 git을 보면서 했는데, 왜 아래에 회색영역이 생기는 건지 잘 모르겠습니다.ㅜㅜ 세로로 생기는 스크롤도 흰색영역에만 생깁니다. 그런데 로그아웃버튼은 회색영역에 생기네요 이리저리 해봐도 잘 모르겠어서 도움을 요청합니다
react next.js react-query next-auth msw
슈퍼아스라다
2024-08-13T14:12:28.056Z
댓글 1
좋아요 0
조회수 146
미해결
스프링 DB 2편 - 데이터 접근 활용 기술
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] @Transactional이 작성되지 않은 메서드에서 @Transactional이 작성된 자신의 메서드를 호출하면 트랜잭션이 실행되지 않는다는 것은 이해하였습니다. 그러면 @Transactional이 작성된 메서드에서 @Transactional이 작성된 자신의 메서드를 호출하면 현재 자신이 프록시 객체이므로 트랜잭션이 실행되는걸까요? 아니면 현재 프록시 객체가 아니라 타겟 객체이므로 똑같이 트랜잭션이 실행되지않는걸까요?
spring mvc jpa querydsl spring-data-mybatis spring-jpa
ljwicdi
2024-08-13T13:44:00.444Z
댓글 2
좋아요 0
조회수 211
미해결
Next + React Query로 SNS 서비스 만들기
안녕하세여 제로초님 UserInfo에서 팔로우버튼을 누르면 팔로잉으로 변해야되고 다시 한번 누르면 팔로우로 변해야되는데 버튼을 누르고 새로고침을 해야지만 반영이됩니다... 팔로우 추천에서는 바로 반영이 되는데.... 깃허브 ch3-2 UserInfo에 있는 코드로 가져다 써도 안되네여 ㅠㅠ "use client"; import style from "@/app/(afterLogin)/[username]/profile.module.css"; import BackButton from "@/app/(afterLogin)/_component/BackButton"; import { useQuery, useQueryClient, useMutation } from "@tanstack/react-query"; import { User } from "@/model/User"; import { getUser } from "@/app/(afterLogin)/[username]/_lib/getUser"; import cx from "classnames"; import { MouseEventHandler } from "react"; import { Session } from "@auth/core/types"; type Props = { username: string; session: Session | null; }; export default function UserInfo({ username, session }: Props) { const { data: user, error } = useQuery< User, Object, User, [_1: string, _2: string] >({ queryKey: ["users", username], queryFn: getUser, staleTime: 60 * 1000, // fresh -> stale, 5분이라는 기준 gcTime: 300 * 1000, }); const queryClient = useQueryClient(); const follow = useMutation({ mutationFn: (userId: string) => { console.log("follow", userId); return fetch( `${process.env.NEXT_PUBLIC_BASE_URL}/api/users/${userId}/follow`, { credentials: "include", method: "post", } ); }, onMutate(userId: string) { const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); if (index > -1) { console.log(value, userId, index); const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: [{ id: session?.user?.email as string }], _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers + 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow: User = { ...value2, Followers: [{ id: session?.user?.email as string }], _count: { ...value2._count, Followers: value2._count?.Followers + 1, }, }; queryClient.setQueryData(["users", userId], shallow); } }, onError(error, userId: string) { console.error(error); const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); console.log(value, userId, index); if (index > -1) { const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: shallow[index].Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers - 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow = { ...value2, Followers: value2.Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...value2._count, Followers: value2._count?.Followers - 1, }, }; queryClient.setQueryData(["users", userId], shallow); } } }, }); const unfollow = useMutation({ mutationFn: (userId: string) => { console.log("unfollow", userId); return fetch( `${process.env.NEXT_PUBLIC_BASE_URL}/api/users/${userId}/follow`, { credentials: "include", method: "delete", } ); }, onMutate(userId: string) { const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); console.log(value, userId, index); if (index > -1) { const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: shallow[index].Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers - 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow = { ...value2, Followers: value2.Followers.filter( (v) => v.id !== session?.user?.email ), _count: { ...value2._count, Followers: value2._count?.Followers - 1, }, }; queryClient.setQueryData(["users", userId], shallow); } } }, onError(error, userId: string) { console.error(error); const value: User[] | undefined = queryClient.getQueryData([ "users", "followRecommends", ]); if (value) { const index = value.findIndex((v) => v.id === userId); console.log(value, userId, index); if (index > -1) { const shallow = [...value]; shallow[index] = { ...shallow[index], Followers: [{ id: session?.user?.email as string }], _count: { ...shallow[index]._count, Followers: shallow[index]._count?.Followers + 1, }, }; queryClient.setQueryData(["users", "followRecommends"], shallow); } } const value2: User | undefined = queryClient.getQueryData([ "users", userId, ]); if (value2) { const shallow = { ...value2, Followers: [{ userId: session?.user?.email as string }], _count: { ...value2._count, Followers: value2._count?.Followers + 1, }, }; queryClient.setQueryData(["users", userId], shallow); } }, }); console.log("error"); console.dir(error); if (error) { return ( <> <div className={style.header}> <BackButton /> <h3 className={style.headerTitle}>프로필</h3> </div> <div className={style.userZone}> <div className={style.userImage}></div> <div className={style.userName}> <div>@{username}</div> </div> </div> <div style={{ height: 100, alignItems: "center", fontSize: 31, fontWeight: "bold", justifyContent: "center", display: "flex", }} > 계정이 존재하지 않음 </div> </> ); } if (!user) { return null; } const followed = user.Followers?.find((v) => v.id === session?.user?.email); console.log(session?.user?.email, followed); const onFollow: MouseEventHandler<HTMLButtonElement> = (e) => { e.stopPropagation(); e.preventDefault(); console.log("follow", followed, user.id); if (followed) { unfollow.mutate(user.id); } else { follow.mutate(user.id); } }; return ( <> <div className={style.header}> <BackButton /> <h3 className={style.headerTitle}>{user.nickname}</h3> </div> <div className={style.userZone}> <div className={style.userRow}> <div className={style.userImage}> <img src={user.image} alt={user.id} /> </div> <div className={style.userName}> <div>{user.nickname}</div> <div>@{user.id}</div> </div> {user.id !== session?.user?.email && ( <button onClick={onFollow} className={cx(style.followButton, followed && style.followed)} > {followed ? "팔로잉" : "팔로우"} </button> )} </div> <div className={style.userFollower}> <div>{user._count.Followers} 팔로워</div> <div>{user._count.Followings} 팔로우 중</div> </div> </div> </> ); } 제가 보기에는 useQuery가 제대로 작동안하는거같은데...제로초님 의견이 궁금합니다 팔로우버튼 안눌렀을때 팔로우버튼 눌렀을때
react next.js react-query next-auth msw
장산
2024-08-13T12:32:32.701Z
댓글 2
좋아요 0
조회수 235
해결됨
실리콘밸리 엔지니어가 가르치는 파이썬 기초부터 고급까지
나라 이름, 도시 같은 것들은 영상 아래 강의 노트에서 복붙할 수 있으면 좋겠네요 원활한 답변을 위해, 자세한 질문 사항 부탁드려요 :D
minsu2587
2024-08-13T11:51:47.267Z
댓글 1
좋아요 1
조회수 189
미해결
평생 써먹는 데이터 기반 투자법 with 파이썬 퀀트 투자
안녕하세요. 저도 강의자료를 다운로드하면 압축파일에 requirement.txt 파일만 나오고 다른 파일들은 보이지 않습니다. 앞에서 문의한 분처럼 저도 이메일로 보내주시면 감사하겠습니다. kimv100@gmail.com 감사합니다.
김승백
2024-08-13T09:17:57.739Z
댓글 2
좋아요 0
조회수 235