inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

static 내부클래스의 인스턴스화에 대한 질문

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

화면에서 Hello class를 static으로 정의한 이유가 따로 있는 건가요??? "helloApi 메서드" 블록 내부 첫줄에서. new연산자를 통해, Hello 인스턴스를 만드는데, 그러면 Hello class는 굳이 static이 아니라, static을 지워버려도 상관 없을거 같다는 생각이 들어서요. 혹시 static을 붙인 이유가 따로 있는 건가요? 소스에서 static을 지워버려도 구문오류같은건 보이지 않더라구요. 제 자바 문법의 깊이가 얕아서 그런지 몰라도, static으로 정의한 메서드나 클래스 같은 경우, 보통 인스턴스화 시키지 않는것 같아서요 그리고 Hello class가 static으로 정의되어 있어서, 별도의 인스턴스 생성없이, Hello.setName()으로 접근가능할 줄 알았는데... 구문오류가 발생하던데... 이건 왜일까요...? [

  • java
  • spring
  • MVC
  • spring-boot
ksk 댓글 2 좋아요 2 조회수 579

MemberRepository에서 findByName 메서드

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 저는 중복 이름 허용하려고 이렇게 두신 줄 알았는데 여기서 보니까 중복 이름을 허용하지 않으시더라구요 그럴거면 굳이 List로 반환 받을 필요 없고 getSingleResult로 받아도 상관 없는 건가요? 실제 성능이나 이런 건 아무 관계 없겠지만 의미상 저게 더 맞는 것 같아서요. 그리고 id가 서비스에서 추가하는 시점에서 생성되어 있지 않기 때문에 이름으로 검증하는 것으로 알고 있는데, 만약 중복 이름을 허용하고 싶으면 어느 시점에서 검증해야 할까요?

  • java
  • JPA
  • spring-boot
  • 웹앱
  • spring
euni 댓글 1 좋아요 0 조회수 305

reverse()메서드 사용

해결됨

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

def reverse(x): wordL = [] for i in str(x): wordL.append(str(i)) wordL.reverse() res = int("".join(wordL)) #int는 019 같은건 자동으로 0을 제외해서 만들어줌 return res 이렇게 풀어도 될까요? .

  • python
  • 코테 준비 같이 해요!
[SQL 실전반 16기 ] 이현지 댓글 1 좋아요 0 조회수 279

[JPA와 DB 설정, 동작확인] import Assert 오류

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? ( 예/ 아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? ( 예 /아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? ( 예 / 아니오 ) [질문 내용] 여기에 질문 내용을 남겨주세요. 안녕하세요, 현재 <JPA와 DB 설정, 동작확인> 내용을 (09:13) 따라가면서 듣고 있는데 import하는 Assert 부분에서 오류가 납니다. <강의> <내 코드> 구글링해서 찾아보니까 (https://aonee.tistory.com/2) build.gradle에 밑 내용 넣으면 된다고 하는데 다른 방법이 있나요? 강의에서는 안 넣어도 잘 되는 것 같아서 여쭤봅니다. 또 제가 devtools 동작오류가 있어서 (https://www.inflearn.com/course/스프링부트-JPA-활용-1/unit/24277?tab=community&q=152186) 질문에서 알려준 사이트 내용대로 build.gradle에 apply plugin: 'idea'를 적었습니다. 저는 이 부분을 바꾸지 않는 선에서 오류를 해결하고 싶어서 다른 방법을 찾고 싶습니다. 추가) 비슷한 질문 보니까 build.gradle를 올리면 좋다고 하셔서 추가합니다. https://www.inflearn.com/course/ 스프링부트 -JPA- 활용 -1/unit/24279?tab=community&q=580709 <bulid.gradle> plugins { id 'org.springframework.boot' version '2.7.2' id 'io.spring.dependency-management' version '1.0.12.RELEASE' id 'java' } apply plugin: 'idea' group = 'jpabook' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-devtools' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { useJUnitPlatform() }

  • 오류
  • 웹앱
  • spring-boot
  • java
  • spring
  • JPA
blackbird7 댓글 2 좋아요 3 조회수 745

안녕하세요 No tests found for given includes: [jpabook.jpashop.MemberRepositoryTest](--tests filter) 이 에러가 나서 도움을 요청합니다.

해결됨

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

MemberRepositoryTest을 실행 했는데 아래와 같이 에러가 나옵니다 Execution failed for task ':test'. > No tests found for given includes: [jpabook.jpashop.MemberRepositoryTest](--tests filter) * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. MemberRepositoryTest코드 package jpabook.jpashop; import static org.junit.Assert.*; import jpabook.jpashop.Member; import jpabook.jpashop.MemberRepository; import org.assertj.core.api.Assertions; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.annotation.Rollback; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import javax.persistence.EntityManager; @RunWith(SpringRunner.class) @SpringBootTest public class MemberRepositoryTest { @Autowired MemberRepository memberRepository; @Test @Transactional @Rollback(false) public void testMember() { Member member = new Member(); member.setUsername("memberA"); Long savedId = memberRepository.save(member); Member findMember = memberRepository.find(savedId); Assertions.assertThat(findMember.getId()).isEqualTo(member.getId()); Assertions.assertThat(findMember.getUsername()).isEqualTo(member.getUsername()); Assertions.assertThat(findMember).isEqualTo(member); //JPA 엔티티 동일성 보장 } } application.yml코드 spring: datasource: url: jdbc:h2:tcp://localhost/~/jpashop username: sa password: driver-class-name: org.h2.Driver jpa: hibernate: ddl-auto: create properties: hibernate: # show_sql: true format_sql: true logging.level: org.hibernate.SQL: debug # org.hibernate.type: trace build.gradle코드 plugins { id 'org.springframework.boot' version '2.7.2' id 'io.spring.dependency-management' version '1.0.12.RELEASE' id 'java' } group = 'jpabook' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-thymeleaf' implementation 'org.springframework.boot:spring-boot-starter-web' implementation 'org.springframework.boot:spring-boot-devtools' implementation 'junit:junit:4.13.1' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' } tasks.named('test') { useJUnitPlatform() } 인프런 질문에도 찾아보고 구글링도 해봤는데 뭐때문인지 몰라 질문을 합니다 도와주세요ㅠ 아래는 제코드 구글드라이브 공유링크입니다. https://drive.google.com/drive/folders/1h5v97WrZW3rjxwzl_G2_73a17sXsQYpw?usp=sharing

  • JPA
  • spring-boot
  • java
  • spring
  • 웹앱
감바스 댓글 1 좋아요 0 조회수 1915

Time Limit Exceed 관련 질문드립니다.

해결됨

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

아래와 같이 코드를 작성했는데 강사님의 강의와 다른 점은 set대신 list를 사용하고 L == K일때 , 정답으로 가능한 리스트 안에 현재 추의 sum이 없으면 추가한다는 조건으로 if문을 작성해주었는데 Case#5에서 계속 Time Limit이 뜹니다. 이전 질문에서 리스트와 set에 원소 할당할 때 시간복잡도 차이가 없다고 하셨는데 if문을 한줄에 여러 조건을 추가할 수록 식나이 추가되는걸까요? import sys input = sys.stdin.readline K = int(input()) weights = list(map(int,input().split())) possible = [] max = sum(weights) def dfs(L,sum): if L == K: if 0 < sum <= max and sum not in possible: possible.append(sum) return dfs(L+1,sum+weights[L]) dfs(L+1,sum-weights[L]) dfs(L+1,sum) dfs(0,0) print(max-len(possible))

  • python
  • 코테 준비 같이 해요!
taehyeong1998 댓글 1 좋아요 0 조회수 421

하이버네이트에서 지연 로딩된 객체의 필드가 null인 현상에 대해 질문드립니다

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요 좋은 강의 감사드립니다. 하이버네이트에서 지연 로딩 사용 시, 지연 로딩된 객체가 초기화 되었음에도 불구하고 필드 접근 시 null이 조회되는 현상에 대해서 질문드립니다. 간단하게 현상을 재현하면 다음과 같습니다. 위와 같이 Member가 Team을 지연 로딩으로 설정한 경우이며, 예시를 위해 Team의 name을 public으로 설정하였습니다. 그리고 다음 코드를 실행하면 발생하는 결과는 다음과 같습니다. 이와같은 오류의 원인을 찾아본 결과 stackoverflow에서 지연 로딩으로 설정된 Proxy 객체의 필드는 모두 null로 세팅한다고 얘기해주었습니다. 그러나 관련된 공식 자료를 찾아볼 수가 없어 정확한 작동 원리에 대해 알고 싶어 질문드립니다. 또한 비슷한 현상으로 스프링에서 Proxy 타입으로 생성된 Bean에 대해서는 내부 필드들을 null로 할당하는 것이 있습니다. 이는 공식 문서에 따르면 Spring AOP에서 메서드 실행 조인 포인트만 제공하며, 필드 가로채기에 대해서는 지원하지 않는다고 나와있었습니다. 혹시 지연 로딩된 프록시 객체의 필드가 null로 세팅되는 현상이 위와 관련있는 현상인지에 대해서도 궁금합니다. 관련된 스프링 공식문서는 다음과 같습니다. https://docs.spring.io/spring-framework/docs/3.0.x/spring-framework-reference/html/aop.html 또한 지연 로딩과 null 세팅에 관한 스택 오버플로우 링크는 다음과 같습니다. https://stackoverflow.com/questions/8945365/jpa-hibernate-proxy-not-fetching-real-object-data-sets-all-properties-to-null 너무 긴 질문 죄송합니다. 항상 감사합니다.

  • java
  • JPA
신동훈 댓글 1 좋아요 1 조회수 619

5:38초 질문입니다!

미해결

실전! Querydsl

5:38 초 부근 member 접근 할때 get 을 쓰면 안된다고 테스트니까 그냥 진행하신다고 하셨는데 이게 어떤의미인지 설명 가능할까요? 한 entity 에 대해서 직접적으로 접근 하기 보다는 dto 같은 전달 객체를 이용해서 가지고 와야 된다. 뭐 이런 뜻인건지 좀더 설명을 듣고 싶어 질문 올립니다!

  • java
  • JPA
dlektl6 댓글 1 좋아요 1 조회수 232

[과제] EnumMap, EnumSet

미해결

이펙티브 자바 완벽 공략 1부

## EnumMap Javadoc에 따르면 "when the map is created. Enum maps are represented internally as arrays. This representation is extremely compact and efficient." -> hashmap 은 key를 bucket에 저장하고각 bucket이 linked list를 참조 하고 있음. (linkedlist에는 hash(key)가 같은 element가 들어감) 그런데 enummap 의 경우 key로 사용할 값이 제한되어 있으므로, 그 갯수만큼 길이를 가진 array를 선언하고. 해당 index에 값을 넣으면 됨. ## EnumSet Javadoc에 따르면 "when the set is created. Enum sets are represented internally as bit vectors." -> hashset은 hashmap 과 같은데 map의 value가 있다 없다를 표현하는 지시자 같은 값이 들어감. enumset은 값이 있다 없다만 표시하면 되니까 enummap 처럼 array로 구현하지 않고 10101011 같은 bitvector로 구현이 가능.

  • java
멜론 댓글 1 좋아요 8 조회수 898

주피터 노트북 커널 죽음

미해결

주피터 노트북으로 GAN CNN 실습중입니다. 가상환경 설정 잘 해놔서 GAN 모델이 잘 돌아가서 데이터 생성 잘했는데요 어제 CNN모델 생성해보니깐 커널이 계속 죽더군요 문제를 해결해보려고 구글링해서 max_buffer_size도 바뀌봤고요 그래도 문제가 해결되지 않아서 조금 냅뒀다가 다시 실행해보니깐 또 돼서 메모리 문제인가 싶었습니다 문제는 CNN 모델을 실행이 되니깐 이제 GAN 모델을 또 다시 돌리려다 또 다시 커널이 죽어버렸어요 메모리를 초기화해주려고 다른 창 다 꺼서 용량 충분히 확보해줬는데도 잘 안되네요 그리고 RAM 용량이 16gb 짜리라 메모리 용량도 충분하다고 생각했는데 이상해요ㅠㅠㅠ 저 같이 주피터 노트북 커널 죽었을 때 해결법 아시는 분 계신가요?..

  • python
  • 주피터노트북
  • 커널
  • dead
  • kernel
권순관 댓글 0 좋아요 0 조회수 1002

트랜잭션 밖에서 값을 수정했는데 왜 update 쿼리가 발생할까요?

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

위의 그림과 같이 트랜잭션을 시작하기 전에 데이터를 수정했는데 update 쿼리가 나가더라구요... 트랜젝션 밖에서는 값의 조회만 가능할 것 같은데 수정이 되는 이유가 궁금합니다!

  • java
  • JPA
JEONG HYUN KANG 댓글 1 좋아요 0 조회수 326

savedRequest.getRedirectUrl()가 null이 들어가서 로그인 후 localhost:8080/null이 나옵니다

미해결

스프링 시큐리티

안녕하세요. localhost:8080/로 들어가서 나오는 시큐리티의 기본 로그인 페이지에서 아무 계정으로 로그인을 하면 localhost:8080/null이 나옵니다. localhost:8080/login로 request를 보냈을떄도 로그인을 하면 localhost:8080/null이 나옵니다 response header를 보면 Location: http://localhost:8080/null 로 나와있고 디버그시에도 savedRequest가 null인게 확인되는데 로그인전에 request로 보낸 url이 httpSessionRequestCache에 저장돼서 로그인 이후 제대로 이동하려면 뭘 수정해야되나요? logout이나 rememberme같은 부차적인 요소들은 가독성을 위해 생략했습니다. 밑에는 코드입니다. // 메모리 방식으로 사용자를 생성하는 configure()는 생략함 @Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .antMatchers("/login").permitAll() .antMatchers("/user").hasRole("USER") .antMatchers("/admin/pay").hasRole("ADMIN") .antMatchers("/admin/**").access("hasRole('ADMIN') or hasRole('SYS')") .anyRequest().authenticated(); http .formLogin() // .loginPage("/loginPage") .defaultSuccessUrl("/", true) .failureUrl("/login") .usernameParameter("userId") .passwordParameter("passwd") .successHandler(new AuthenticationSuccessHandler() { @Override public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) throws IOException, ServletException { System.out.println("authentication:"+authentication.getName()); // savedRequest가 null로 전달되는게 문제! RequestCache requestCache=new HttpSessionRequestCache(); SavedRequest savedRequest=requestCache.getRequest(request,response); String redirectUrl=savedRequest.getRedirectUrl(); response.sendRedirect(redirectUrl); } }) .permitAll(); // http.logout() 생략 // http.rememberMe() 생략 // http.sessionManagement() 생략 http.exceptionHandling() // .authenticationEntryPoint(new AuthenticationEntryPoint() { // @Override // public void commence(HttpServletRequest request, HttpServletResponse response, AuthenticationException authException) throws IOException, ServletException { // response.sendRedirect("/login"); // } // }) .accessDeniedHandler(new AccessDeniedHandler() { @Override public void handle(HttpServletRequest request, HttpServletResponse response, AccessDeniedException accessDeniedException) throws IOException, ServletException { response.sendRedirect("/denied"); } }); } @RestController @RequestMapping("/") public class SecurityController { @GetMapping public String index() { return "home"; } @GetMapping("loginPage") public String loginPage() { return "loginPage"; } @GetMapping("user") public String user() { return "user"; } @GetMapping("admin/pay") public String adminPay() { return "adminPay"; } @GetMapping("admin/**") public String admin() { return "admin"; } @GetMapping("login") public String login() { return "login"; } @GetMapping("denied") public String denied() { return "denied"; } }

  • Spring Security
  • spring-boot
  • java
gil jung 댓글 1 좋아요 0 조회수 641

Yahoo Finance에서 URL 가져오기

미해결

파이썬 증권 데이터 수집과 분석으로 신호와 소음 찾기

이 강의를 듣고 나면 네이버금융 뿐만 아니라 다른 웹 스크래핑도 가능할 것이라 하셨는데, 처음부터 너무 막히니 속상하네요. 스크립트는 다음과 같습니다. import pandas as pd from bs4 import BeautifulSoup as bs url = f"https://finance.yahoo.com/quote/YM%3DF/history?p=YM%3DF" table = pd.read_html(url) response = requests.get(url, headers = headers) html = bs(response.text) table = html.select("table") temp = pd.read_html(str(table)) temp[0] 여기서 url부터 인식을 못하고 HTTPError가 뜹니다. 해결방법이 있을까요? HTTPError : HTTP Error 404: Not Found

  • url
  • 스크래핑
  • numpy
  • python
  • pandas
  • 웹-크롤링
  • seaborn
  • 웹 스크래핑
  • plotly
  • matplotlib
hmin 댓글 1 좋아요 1 조회수 647

Rest API 이해를 위한 웹기술 이해: GET 방식과 URL 강의에서 윈도우 환경에서 httpi 파라미터값을 못 얻어올때 해결방안입니다.

해결됨

[리뉴얼] 처음하는 파이썬 백엔드와 웹기술 입문 (파이썬 중급, flask[플라스크] 로 이해하는 백엔드 및 웹기술 기본) [풀스택 Part1-1]

https://stackoverflow.com/questions/50319752/httpie-not-recognizing-second-parameter-of-get-request 처럼 ex) http GET "localhost/api/data?param1=3&param2=7" 으로 해결 가능합니다 도움 될까 하여 올립니다.

  • python
  • rest-api
  • flask
csky222 댓글 1 좋아요 1 조회수 272

spring.io

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

버전이 달라서 그런지(최신) spring boot features 가 보이지 않습니다 ㅠ

  • spring-boot
  • spring
  • java
  • MVC
파바배라던도 댓글 2 좋아요 0 조회수 381

자바8로 하면 안되는 걸까요?

해결됨

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

자바11로 하는 이유가 궁금합니다~~

  • java
  • spring
  • spring-boot
  • MVC
파바배라던도 댓글 1 좋아요 0 조회수 364

GenerationType.SEQUENCE 전략

해결됨

자바 ORM 표준 JPA 프로그래밍 - 기본편

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 그 GenerationType.SEQUENCE 전략 일때 allocationSize를 지정하면 DB에 key값(id)을 얻기위해 디비에 매번 쿼리를 날리는게 아닌 일정 개수마다 쿼리를 날리기에 최적화가 된다고 하셨고, 그 원리는 메모리를 이용하기 떄문이다라고 하셨습니다. (질문1) 여기서 만약에 어플리케이션이 이중화가 되어있으면, 메모리를 이용한 key값(id) 설정이 조금 이상해질것 같기도한데, 이 부분에 대해서 이상이 없나요? (질문2) 이상이 없다면, 어떻게 처리하는지 알 수 있을까요?

  • JPA
  • java
정태연 댓글 2 좋아요 2 조회수 500

PasswordChangeForm 재정의 관련 질문

해결됨

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

안녕하세요 강사님, PasswordChangeForm 을 재정의 하는 부분에서 질문이 있어 글 남깁니다. 1. PasswordChangeForm은 SetPasswordForm을 상속받기 때문에 clean_new_password2를 오버라이딩하여 해당 함수가 기존 대로 실행 될때 단순히 old_password와 같은지 비교하는 로직을 추가한게 맞나요? 2. clean_new_password2를 오버라이딩 할 때, super().clean_new_password2()를 하지 않고 self.cleaned_data.get('new_password2')를 하게 기존의 pw1==pw2 확인하는 로직이 사라져 버리기 때문에 문제가 생기는 것이 맞나요? (실험결과 new_pw1, new_pw2 를 다르게 넣으면 new_pw1 으로 변경이 됩니다). 즉 super()... 를 적어줘야 기존 로직을 지킬 수 있는 것이죠? 3. clean_new_password1은 새로운 함수를 정의한 것인데 clean_ 이 앞에 붙었기 때문에 PasswordChangeForm의 로직이 동작할 때 무조건 해당 함수가 실행이 되는 것이 맞나요? 이 함수가 실행되는 시점이 궁금합니다. 감사합니다.

  • react
  • docker
  • python
  • django
zxpjh0323 댓글 1 좋아요 1 조회수 336

PyCharm Professional

미해결

장고 설계철학으로 시작하는 파이썬 장고 입문

안녕하세요. 본 강의에 대한 내용을 실습하는데 PyCharm Professional이 필수적인지 문의 드립니다. 우선 community로 연습해보려고 하는데 실습이 안되는 파트가 있나요?

  • python
  • django
Anderson 댓글 1 좋아요 0 조회수 396

원핫인코딩 관련 궁금증

미해결

[개정판] 파이썬 머신러닝 완벽 가이드

안녕하세요. 강의 듣다가 궁금증이 생겨서 질문 드립니다. 이 Bike Sharing Demand 데이터 실습에서 원핫인코딩을 수행할 때, 인코딩을 먼저 수행 후 train과 test를 분리했는데, 실전을 포함해서 test 데이터가 이미 분리된 상태로 주어진 경우 도 많은 것 같아요. 근데 이럴 때 train과 test 각각 따로 인코딩을 수행하면 특정 칼럼에 대해 서로 없는 범주가 포함될 수 있을 것 같습니다. (예를들어 train에는 개/고양이만 있는데, test에는 개/고양이/원숭이 범주까지 있다던지..) 이 경우에 칼럼 갯수에도 차이가 발생할텐데 이때 모델 학습/예측시에 문제가 발생하지 않나요? 그렇다고 pd.concat 등으로 데이터를 합치고서 인코딩을 수행 후 다시 분리하면 데이터 리키징 문제가 발생한다고 들었습니다. (아니라면 말씀해주세요!) 머신러닝/딥러닝 강의 계속 잘 듣고 있습니다. 감사합니다.

  • 통계
  • python
  • 머신러닝 배워볼래요?
강주형 댓글 1 좋아요 1 조회수 857

인기 태그

인프런 TOP Writers

주간 인기글