묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)
범주형변수를 포함한 다중선형회귀 모델에서 독립변수 사용 방식
강의 중 ols함수를 ols('매출액 ~ 광고비 + 유형_A + 유형_C', data=df2).fit() 이런식으로 범주형 변수의 일부 컬럼만 사용해서 회귀모델을 구축할 수 있다고 하셨습니다.그래서 테스트를 해 본 결과 위와 같이 유형_A와 유형_C를 회귀모델의 독립변수로 활용하기 위해서는df = pd.get_dummies(df, drop_first=True)이런식으로 다중공선성 방지를 위한 파라미터를 추가하는게 아니라 위 캡처본에서의 df2와 같이 전체 변수가 포함된 데이터프레임을(유형_A, 유형_B, 유형_C 가 전부 포함된 데이터프레임) 사용해야 하는 것을 알았습니다. 근데, 이렇게 df2와 유형_A, 유형_C를 활용한 회귀모델은 유형_B를 감안한 것이 아니라 그냥 유형_B만 갑자기 누락해버린 회귀모델이 아닐지 문의드립니다. import pandas as pd df = pd.DataFrame({ '매출액' : [300, 320, 250, 360, 315, 328, 310, 335, 326, 280, 290, 300, 315, 328, 310, 335, 300, 400, 500, 600] , '광고비': [70, 75, 30, 80, 72, 77, 70, 82, 70, 80, 68, 90, 72, 77, 70, 82, 40, 20, 75, 80] , '플랫폼': [15, 16, 14, 20, 19, 17, 16, 19, 15, 20, 14, 5, 16, 17, 16, 14, 30, 40, 10, 50] , '투자':[100, 0, 200, 0, 10, 0, 5, 0, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] , '유형':['B','B','C','A','B','B','B','B','B','B' ,'C','B','B','B','B','B','B','A','A','A'] }) df = pd.get_dummies(df, drop_first=True) from statsmodels.formula.api import ols model = ols('매출액 ~ 광고비 + 유형_B + 유형_C', data=df).fit() print(model.summary()) 위에서는 엄연히 유형_A도 감안된 것일텐데 이런 상황에서 유형_A를 회귀모델 독립변수로 쓰지 않은 것과는 (매출액 ~ 광고비 + 유형_B + 유형_C) 다른 결인 것 같아서요!
-
미해결Three.js로 시작하는 3D 인터랙티브 웹
PlaneGeometry 브라우저 화면 크기에 맞게 셋팅하는 법
PlaneGeometry 브라우저 화면 크기에 맞게 셋팅하는 법이 있을까요? width, height를 계산해서 넣어야하는데 계산식이 어떻게 되는지 모르겠네요...OrthographicCamera를 사용 중입니다!답변 주시면 감사하겠습니다!
-
해결됨빅데이터 파이프라인 마스터; 성공을 위한 도구와 기술
수강 연장 이벤트 신청합니다.
안녕하세요!강의를 들으면서 데이터와 관련된 기술 스택들을 익히는데 많은 도움을 받고 있습니다.다름이 아니라 수강 연장 이벤트를 신청하려고 하는데,구글 설문 링크가 보이지 않아서 이렇게 커뮤니티에 글을 남깁니다.혹시 이벤트 기간이 종료가 된건지 아니라면 어떻게 신청하면 되는지 궁금합니다. 좋은 강의 만들어주셔서 감사합니다!
-
미해결[게임 프로그래머 도약반] DirectX11 입문
다렉 수업 전에 들어야 할 수업들이 있나요?
안녕하세요제가 미리보기 강의들을 보다가 수업 방식도 마음에 들었고 미리보기 예제 코드를 다운 받기 위해서 그냥 바로 수업 신청을 했습니다. 근데 초반에서 지속적으로 전에 수업에서 다 배웠다고 많은 부분들을 그냥 넘어가셔서 제가 이해가 잘 가지가 않습니다. 혹시 배우지 못했던 부분만을 따로 빼서 저렴하게 강의를 올리실 의향이나 아니면 제가 따로 공부하고 와야 할 부분을 알려주실 수 있을까요? 좀 많이 당황스럽습니다.
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
@ConfigurationProperties 사용 시 질문 드립니다.
제가 아직 초보 개발자라 막연히 setter 사용은 지양하는게 좋다고 배워서 실무에서는 다른지 궁금합니다.setter 를 열어두면 빈으로 등록된 AppConfig 의 불변성을 보장할 수 없게 되는게 아닌가 해서 질문드립니다.https://mangkyu.tistory.com/189위 블로그를 보면 @ConfigurationProperties 를 setter 없이 생성자로 할 수도 있는것 같아서요.혹시 제가 너무 setter 사용을 지양하라는 말에 매몰돼있는건 아닐까 고민도 되네요.
-
미해결실무자를 위한 구글애널리틱스(GA4+GTM) 활용법(25년 Update)
웹사이트 헤드에 태그삽입
안녕하세요. '데이트 스트림과 스크립트 설치방법'을 듣고있습니다.강의에서 요즘은 스크립트를 웹사이트 head에 삽입하기보다 태그매니저를 먼저 설치하고 ga4와 연결시키는 편이라고했는데 기존 회사 계정의경우 태그매니저 없이 head에 스크립트가 들어가있는 상황입니다. 이 경우 뒤늦게 구글 태그매니저와 ga4를 연결해도 충돌이라던지 문제가 일어나지는 않을까요 ?
-
해결됨[코드캠프] 부트캠프에서 만든 고농축 프론트엔드 코스
별점 수정 초기화를 막고 싶습니다.
수정 버튼을 클릭하면 기존 값의 작성자와 내용이 작성되어 있는데 별점도 똑같이 유지 시키고 싶어서 다음과 같이 작성 했습니다.<S.Star onChange={props.setStar} value={props.star !== 0 ? props.star : props.el?.rating ?? 0} />별점을 선택하고 댓글 등록하기 클릭하면 함수를 통해 setStar(0) 초기화도 해주었고수정 아이콘을 클릭했을 때 기존 등록한 별점도 유지되게 했는데 수정하기 버튼을 클릭하면 별점이 0으로 수정이 됩니다.여기서 어느 부분을 건들어야 할지 모르겠어요.
-
미해결
유니티 Linecast 오류..?
제가 유니티로 점프랑 애니메이션을 구현하는데 점프는 ground Layer에서만 되도록 Linecast로 플레이어 위치랑 0.1칸 아래 사이에 ground Layer가 있을 때만 점프가 되도록 했는데.. 다른 프로젝트에서는 잘만 되더니 다른 프로젝트로 이 스크립트 파일을 옮기니까 공중에서도 점프가 되고 점프 애니메이션이 계속 재생됩니다.어떻게 하면 해결될까요.. 코드는 이렇게 작성했습니다. (위쪽은 그냥 글로 썼고 아래쪽은 코드 눌러서 썼으니까 편한거 보시고 답변주십셔) using System.Collections;using System.Collections.Generic;using UnityEngine;public class PlayerController : MonoBehaviour{ Rigidbody2D rbody; //Rigidbody2D형 변수 float axisH = 0.0f; //입력 public float speed = 3.0f; //이동 속도 public float jump = 9.0f; //점프력 public LayerMask groundLayer; //착지할 수 있는 레이어 bool goJump = false; //점프 개시 플래그 bool onGround = false; //지면에 서 있는 플래그 //애니메이션 처리 Animator animator; //애니메이터 public string stopAnime = "PlayerStop"; public string moveAnime = "PlayerMove"; public string jumpAnime = "PlayerJump"; public string goalAnime = "PlayerGoal"; public string deadAnime = "PlayerOver"; string nowAnime = ""; string oldAnime = "";void Start() { //Rigidbody2D 가져오기 rbody = this.GetComponent<Rigidbody2D>(); //Animator 가져오기 animator = GetComponent<Animator>(); nowAnime = stopAnime; oldAnime = stopAnime; } void Update() { if (Input.GetButtonDown("Jump")) { Jump(); //점프 } } //착지 판정 onGround = Physics2D.Linecast(transform.position, transform.position - (transform.up * 0.1f), groundLayer); if(onGround || axisH != 0) { //지면 위 or 속도가 0 아님 //속도 갱신하기 rbody.velocity = new Vector2(axisH * speed, rbody.velocity.y); } if (onGround && goJump) { //지면 위에서 점프 키 눌림 //점프하기 Debug.Log("점프!"); Vector2 jumpPw = new Vector2(0, jump); //점프를 위한 벡터 생성 rbody.AddForce(jumpPw, ForceMode2D.Impulse); //순간적인 힘 가하기 goJump = false; //점프 플래그 끄기 } if (onGround) { //지면 위 if (axisH == 0) { nowAnime = stopAnime; //정지 } else { nowAnime = moveAnime; //이동 } } else { //공중 nowAnime = jumpAnime; } if (nowAnime != oldAnime) { oldAnime = nowAnime; animator.Play(nowAnime); //애니메이션 재생 } } //점프 public void Jump() { goJump = true; //점프 플래그 켜기 Debug.Log("점프 버튼 눌림!"); } using System.Collections;using System.Collections.Generic;using UnityEngine;public class PlayerController : MonoBehaviour{ Rigidbody2D rbody; //Rigidbody2D형 변수 float axisH = 0.0f; //입력 public float speed = 3.0f; //이동 속도 public float jump = 9.0f; //점프력 public LayerMask groundLayer; //착지할 수 있는 레이어 bool goJump = false; //점프 개시 플래그 bool onGround = false; //지면에 서 있는 플래그 //애니메이션 처리 Animator animator; //애니메이터 public string stopAnime = "PlayerStop"; public string moveAnime = "PlayerMove"; public string jumpAnime = "PlayerJump"; public string goalAnime = "PlayerGoal"; public string deadAnime = "PlayerOver"; string nowAnime = ""; string oldAnime = "";void Start() { //Rigidbody2D 가져오기 rbody = this.GetComponent<Rigidbody2D>(); //Animator 가져오기 animator = GetComponent<Animator>(); nowAnime = stopAnime; oldAnime = stopAnime; } void Update() { if (Input.GetButtonDown("Jump")) { Jump(); //점프 } } //착지 판정 onGround = Physics2D.Linecast(transform.position, transform.position - (transform.up * 0.1f), groundLayer); if(onGround || axisH != 0) { //지면 위 or 속도가 0 아님 //속도 갱신하기 rbody.velocity = new Vector2(axisH * speed, rbody.velocity.y); } if (onGround && goJump) { //지면 위에서 점프 키 눌림 //점프하기 Debug.Log("점프!"); Vector2 jumpPw = new Vector2(0, jump); //점프를 위한 벡터 생성 rbody.AddForce(jumpPw, ForceMode2D.Impulse); //순간적인 힘 가하기 goJump = false; //점프 플래그 끄기 } if (onGround) { //지면 위 if (axisH == 0) { nowAnime = stopAnime; //정지 } else { nowAnime = moveAnime; //이동 } } else { //공중 nowAnime = jumpAnime; } if (nowAnime != oldAnime) { oldAnime = nowAnime; animator.Play(nowAnime); //애니메이션 재생 } } //점프 public void Jump() { goJump = true; //점프 플래그 켜기 Debug.Log("점프 버튼 눌림!"); }
-
미해결카프카 완벽 가이드 - 커넥트(Connect) 편
connector의 적정 tasks.max 값은 어떻게 될까요?
s3 sink connector 설정 관련해서 문의드립니다.적절한 tasks.max의 값은 어떻게 될까요?여러 요인이 있겠지만 특히 토픽의 파티션 개수와 관련하여 정해야하는지 문의드립니다.
-
해결됨CloudNet@ - Amazon EKS 기본 강의
ebs csi의 정적 프로비저닝에서도 스토리지 용량 증설이 가능한지요?
안녕하세요. 강사님ebs csi의 정적 프로비저닝에서도 pvc 패치를 통해 스토리지 용량 증설이 가능한지요?
-
미해결Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)
Firebase: Please verify the new email before changing email. (auth/operation-not-allowed). 해결 방법
안녕하세요.해당 강의 수강 중 이메일 변경 과정에서 에러가 발생하였고, 많은 분들이 해당 에러를 겪을 것 같아 해결방법 공유드립니다.에러firebase의 정책 변경에 따른 문제인지 이메일 변경시 변경하려는 이메일에 대한 인증이 필요하다는 에러가 나타납니다.해당 에러는 이메일 열거 보호 (무차별 이메일 입력에 대한 대처)로 인해 나타나는 에러이며, 이메일 열거 보호를 해제하여 해결하였습니다.참조: https://github.com/firebase/firebase-ios-sdk/issues/11886 해결방법Firebase 프로젝트 ID 확인https://console.firebase.google.com/Firebase 콘솔 접속 -> 해당 프로젝트 접속 -> 좌측 상단 프로젝트 개요 우측 톱니바퀴 -> 프로젝트 설정화면에 노출되는 Firebase 프로젝트 생성시 작성한 프로젝트 ID를 확인합니다.gCloud shell 접속https://console.cloud.google.com/welcome?cloudshell=true위 링크 접속시 하단에 CloudShell이 노출됩니다.gcloud access token 취득CloudShell 에 아래의 명령어를 입력해 accessToken을 취득합니다.gcloud auth print-access-token --project=PROJECT_ID위 명령어의 PROJECT_ID는 1. Firebase 프로젝트 ID 확인 에서 얻은 프로젝트 ID를 입력합니다.이메일 열거 보호 비활성화CloudShell 에 아래의 명령어를 입력해 이메일 열거 보호를 비활성화 합니다.curl -X PATCH -d "{'email_privacy_config':{'enable_improved_email_privacy':"false"}}" \ -H 'Authorization: Bearer ACCESS_TOKEN' \ -H 'Content-Type: application/json' -H 'X-Goog-User-Project: PROJECT_ID' \ "https://identitytoolkit.googleapis.com/admin/v2/projects/PROJECT_ID/config?updateMask=email_privacy_config"여기서 PROJECT_ID는 3번과 동일한 프로젝트 ID를, ACCESS_TOKEN은 3번을 통해 취득한 ACCESS_TOKEN을 입력합니다.이제 이메일 변경이 잘됩니다 :)참조: https://cloud.google.com/identity-platform/docs/admin/email-enumeration-protection?hl=ko이메일 열거 보호가 서비스중인 프로젝트라면 중요하겠지만 학습을 위한 개발단계인 현재는 비활성화해도 괜찮을 것 같습니다.감사합니다.
-
미해결스프링 부트 웹 개발 입문 - 따라하며 배우기
int i = menuService.doInsert(coffee,kind,price); 이 코드 질문있어요
혹시 변수타입이 왜 int인지 알 수 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
No active profile set
이런식으로 실행이 안되는 모습을 보입니다.세팅에서 이렇게 둘다 IntelliJ로 설정해주고 Download external Annotations 도 켜놨는데 저런 상황이네요 ㅠㅡㅠ 어떻게 해야할지 모르겠습니다...
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
UE 수업 관련 문의드립니다
안녕하세요 게임 서버 개발자 직무를 희망하고 있는 학생입니다. 이번에 올인원 강의와 part4 서버 강의를 들은 뒤 언리얼 엔진과 서버 연동 강의 그리고 데디 서버 강의를 들을려고 계획중입니다. 혹시 해당 강의들을 듣고 따라갈려면 UE part1 ~ 4까지를 모두 들어야만 수강을 하는데 있어서 문제가 없는지 궁금합니다. 또 서버 개발자도 Unreal Engine을 현업에서 만지고 사용할 일이 많은지도 궁금합니다.
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
리액트 쿼리 SSR 부분 질문있습니다.
강의 프로젝트를 제로초님 깃헙 코드 참고해서 리액트 쿼리로 다시 만들어 보는중인데요 회원가입 페이지에 SSR 적용하는 과정에서 다음과 같은 에러가 납니다. 코드를 보면//pages/signup.tsx export const getServerSideProps = async (context: GetServerSidePropsContext) => { const cookie = context.req ? context.req.headers.cookie : ''; axios.defaults.headers.Cookie = ''; if (context.req && cookie) { axios.defaults.headers.Cookie = cookie; } const response = await loadMyInfoAPI(); if (response.data) { return { redirect: { destination: '/', permanent: false, }, }; } return { props: {}, }; }; // api/user.ts export function loadMyInfoAPI() { return axios.get('/user').then((response) => response.data); } // routes/user.js router.get('/', async (req, res, next) => { try { if (req.user) { const fullUwerWithoutPassword = await User.findOne({ where: { id: req.user.id }, attributes: { exclude: ['password'] }, include: [ { model: Post, attributes: ['id'] }, { model: User, as: 'Followings', attributes: ['id'] }, { model: User, as: 'Followers', attributes: ['id'] }, ], }); res.status(200).json(fullUwerWithoutPassword); } else { res.status(200).json(null); } 로그인안한 상태에서 유저 정보를 불러오면 null이 반환되서 에러가 나는거 같은데요 const response = await loadMyInfoAPI(); if (response.data) { return { redirect: { destination: '/', permanent: false, }, }; } 이부분을 지우고 다음과 같이 바꿔주면export const getServerSideProps = async (context: GetServerSidePropsContext) => { const cookie = context.req ? context.req.headers.cookie : ''; axios.defaults.headers.Cookie = ''; if (context.req && cookie) { axios.defaults.headers.Cookie = cookie; } return { props: {}, }; }; 에러가 사라지는데 지워도 상관없는건가요??
-
해결됨시나브로 자바스크립트
첫 강의 배포 & 번들러의 기초에 대한 제 이해가 맞는지 궁금합니다
안녕하세요! 저는 시나브로님의 강의를 듣고 있는 학생입니다! 다름이 아니라 이전에 강의를 들었을 때에는 다소 난이도가 있어 미뤄두고 이번에 들었는데 조금 나아진 것 같습니다. 사실 아직 배포를 해본 경험이 없어 제 이해가 맞는지 여쭤보고 싶습니다.배포를 위해서는 netlify나 vercel과 같은 호스팅 서비스를 이용하면 간편하게 진행할 수 있습니다(주변 분들께 궁금해서 여쭤보니, aws를 통해 좀 더 근간적으로 빌드와 배포를 진행할 수 있다는데 이 부분을 지금 공부하는 것이 좋을까요?)시나브로님께서 강의에서 parcel과 vite를 이용해 빌드 & 번들하는 것을 보여주셨습니다. 두 방식 모두 특정 디렉토리에 소스 파일들을 작성하고, build 명령어를 통해 dist 디렉터리에 배포될 파일들을 생성합니다. 후에 vercel 같은 호스팅 서비스에서는 해당 프로젝트가 어떤 번들 툴로 만들어졌는지를 파악하고 서비스를 도와줍니다.제가 추가적으로 chatGPT를 통해 알아보니 vite는 esbuild라는 트랜스파일링 & 번들을 동시에 해주는 내장 프로그램을 사용합니다. 이는 GO 언어로 작성되었기에 속도가 굉장히 빠릅니다. 기존의 CRA 프로젝트 같은 경우에는 babel 컴파일러와 webpack 번들러를 이용하지만, 이보다는 속도가 느릴 수 있습니다.tailwindCSS 라이브러리를 이용하여 문서의 스타일링을 진행하면 parcel이나 vercel 같은 프로그램이 이를 CDN을 통하여 관리해줍니다(이 부분이 개념이 다소 헷갈리는 것 같습니다). 사실 아직 실제로 해본 것이 아니라 개념이 헷갈립니다. 그래도 일단 강의를 한번 차례로 들으면 이해가 더 나아질까요? 감사합니다☺️
-
미해결[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
스크립트도 다운로드 할 수 있나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.코드팩토리 디스코드https://bit.ly/3HzRzUMFlutter 강의를 구매하시면 코드팩토리 디스코드 서버 플러터 프리미엄 채널에 들어오실 수 있습니다! 디스코드 서버에 들어오시고 저에게 메세지로 강의를 구매하신 이메일을 보내주시면 프리미엄 채널에 등록해드려요! 프리미엄 채널에 들어오시면 모든 질의응답 최우선으로 답변해드립니다!
-
미해결[2023 코틀린 강의 무료제공] 기초에서 수익 창출까지, 안드로이드 프로그래밍 A-Z
Room DB와 firebase 차이
Room DB와 firebase 차이가 궁금합니다~! Room DB는 내장데이터를 잡아먹고 firebase는 비용을 지불하면서 서버에 저장공간을 구축하는게 좋은걸까요? 전문 개발자 목표가 아닌 아마추어 개발자의 입장에서는 어떤게 더 사용하기 쉬울지도 추천해주세요 :)
-
해결됨그림으로 쉽게 배우는 운영체제
인터럽트 수업관련 질문
안녕하세요 감자님. 이번 강의를 수강하면서 몇가지 질문이 있어서 남겨봅니다.폴링방식과 인터럽트 방식에 대해 설명을 해주셨는데 0:15 시간대에서 "CPU는 입출력 명령이 들어오면 입출력 관리자에게 입출력 명령을 내린다"라고 말씀을 해주셨는데 이 부분은 폴링방식과 인터럽트 방식 공통적으로 적용되고 폴링은 일정주기마다 CPU가 확인하는 방식이고 인터럽트 방식은 입출력관리자가 인터럽트 신호를 CPU에게 전달하여 CPU가 ISR을 실행하는 방식인건가요? 제가 이해하는게 맞는지 궁금합니다.그리고 만약 위에 이해한게 맞다면 "CPU는 입출력 명령이 들어오면 입출력 관리자에게 입출력 명령을 내린다"에서 입출력 명령이 들어오는지 어떻게 확인이 가능할까요?그리고 인터럽트 방식에서 입출력 관리자에게 입출력 명령을 내리고 CPU는 다른 일을 한다고 했는데 제가 다른데에서 찾아보기론 다른 일을 안하고 기다리는 경우도 있다고 들었습니다. 기다리는 방식을 blocking I/O 다른 일을 하는 경우를 non-blocking I/O라고 들었던것 같은데 맞는걸까요?
-
미해결PWA 시작하기 - 웹 기술로 앱을 만들자
깃헙 레포지토리 권한 요청
인프런 아이디 : akakss225@hanwha.com인프런 이메일 : akakss225@hanwha.com깃헙 아이디 : akakss225@naver.com깃헙 Username : Alarm Song