묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결엑셀 활용하기 : EXCEL 중급 (Inflearn Original)
섹션3. 12. 피벗테이블로 데이터 기본분석
쿼리데이터에서 피벗테이블을 하나씩 만들어 가고 있습니다.두번째피벗을 만드는데 "월의 시작"을 행으로 놓고 나머지 계층화된것을 삭제하면 첫번째 피벗(년도별)까지 변경이 됩니다.영상에서는 첫번째 피벗은 년도별, 두번째 피벗은 월의시작으로 행을 구성하였는데.. 저는 계속 두번째꺼를 변경하면 첫번째꺼도 따라서 변경이 되는 오류가 발생합니다... 왜그러는 걸까요?
-
미해결Kafka & Spark 활용한 Realtime Datalake
[과제10-3] count 하지 않을때 `persist` 함수의 의미와 순서도에서 `scan csv`가 세번 나온 이유
질문만약 문제에서 카운트를 출력하라는 조건이 없었으면 persist를 호출 하지않아도 같은 퍼포먼스가 나오나요? (문제: ... 각각 데이터를 로드한 후 카운트를 출력하고,...)count 함수를 제외하면 action 계열 함수가 없는데 count 함수가 없는 경우에도 persist가 유의미 한지 궁금합니다. [SQL/DataFrame] - [Details for Query0] 순서도(마지막에 첨부) 에서 Scan csv 가 3번 나타나는 이유는 무엇인가요?? csv 파일을 읽어오는 함수는 두번 실행했는데 왜 3번 실행되는지 궁금합니다. 참고목차질문-참고-코드-순서도코드 구조HDFS 경로 정의스키마 정의데이터프레임 생성time_recorded에 의한 중복열 제거employee_count 컬럼 추가를 위한 joinIT Services and IT Consulting 회사 추출두 테이블 결합결과 출력dropDuplicate가 정확히 어떤 행을 drop 하는지 몰라서 egg-max 조합으로 중복 행을 제거함코드""" >>> company_industries_df.printSchema() root |-- company_id: string (nullable = true) |-- industry: string (nullable = true) >>> company_industries_df.show(5) +----------+--------------------+ |company_id| industry| +----------+--------------------+ | 391906|Book and Periodic...| | 22292832| Construction| | 20300| Banking| | 3570660|Book and Periodic...| | 878353|Staffing and Recr...| +----------+--------------------+ only showing top 5 rows >>> employee_counts_df.printSchema() root |-- company_id: string (nullable = true) |-- employee_count: string (nullable = true) |-- follower_count: string (nullable = true) |-- time_recorded: string (nullable = true) >>> employee_counts_df.show(5) +----------+--------------+--------------+-------------+ |company_id|employee_count|follower_count|time_recorded| +----------+--------------+--------------+-------------+ | 391906| 186| 32508| 1712346173| | 22292832| 311| 4471| 1712346173| | 20300| 1053| 6554| 1712346173| | 3570660| 383| 35241| 1712346173| | 878353| 52| 26397| 1712346173| +----------+--------------+--------------+-------------+ only showing top 5 rows +----------+--------------------+--------------+--------------+-------------+ |company_id| industry|employee_count|follower_count|time_recorded| +----------+--------------------+--------------+--------------+-------------+ | 1353|IT Services and I...| 596046| 14829798| 1713536641| | 1353|IT Services and I...| 595935| 14822564| 1713448937| | 1353|IT Services and I...| 595844| 14817360| 1713407024| | 1353|IT Services and I...| 595782| 14807439| 1713279321| | 1353|IT Services and I...| 595669| 14800204| 1713208435| +----------+--------------------+--------------+--------------+-------------+ only showing top 5 rows """ import time from pyspark.sql import SparkSession from pyspark.sql.types import StructType, StructField, StringType, IntegerType from pyspark.sql.functions import col, max spark = SparkSession.builder.getOrCreate() # 1. 파일 경로 정의 company_industries_path = ( "/home/spark/sample/linkedin_jobs/companies/company_industries.csv" ) employee_counts_path = "/home/spark/sample/linkedin_jobs/companies/employee_counts.csv" # 2. 스키마 정의 company_industries_schema = StructType( [ StructField("company_id", IntegerType(), True), StructField("industry", StringType(), True), ] ) employee_counts_schema = StructType( [ StructField("company_id", IntegerType(), True), StructField("employee_count", IntegerType(), True), StructField("follower_count", IntegerType(), True), StructField("time_recorded", IntegerType(), True), ] ) # 3. 데이터프레임 생성 company_industries_df = ( spark.read.option("header", "true") .option("multiLine", "true") .schema(company_industries_schema) .csv(company_industries_path) ) employee_counts_df = ( spark.read.option("header", "true") .option("multiLine", "true") .schema(employee_counts_schema) .csv(employee_counts_path) ) # 4. 중복 제거: groupby(company_id) -> agg -> max(time_recorded) agg_latest_employee_counts_df = employee_counts_df.groupBy("company_id").agg( max("time_recorded").alias("time_recorded") ) # 5. employee_count 컬럼 추가 latest_employee_counts_df = agg_latest_employee_counts_df.join( employee_counts_df, on=["company_id", "time_recorded"], how="inner", ) # 6. 필터링: 업종이 IT Services and IT Consulting인 회사 추출 industry = "IT Services and IT Consulting" it_services_company_industries_df = company_industries_df.filter( col("industry") == industry ) # 7.조인: 회사 정보와 종업원 수 결합 및 필터링: 종업원수 1000명 이상 및 정렬: 종업원수 내림차순 정렬 result_df = ( it_services_company_industries_df.join( latest_employee_counts_df, on="company_id", how="inner", ) .filter(col("employee_count") >= 1000) .orderBy(col("employee_count").desc()) ) # 8. 'company_id', 'employee_count', 컬럼만 출력 result_df.select("company_id", "employee_count").show() time.sleep(300)순서도 이미지가 압축되어 올라가 [링크] 첨부합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
리틀 엔디안 장점 질문합니다.
수업에서, 리틀 엔디안의 장점이 캐스팅에 용이하다 하셨는데, 78 56 43 21일때, 78을 빼낼 때에 용이한 것은 이해가 되는데, 뒤에 값들을 빼내는 것은 어차피 리틀엔디안이나 빅 엔디안이 똑같은 거 아닌가요? 아니면 캐스팅이 마지막 부분의 값만 빼오는 것을 의미하는 건가요? 궁금증이 생겨 질문드립니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
데이터 초기화 시 CASCADE 옵션 궁금증
안녕하세요. PostConstruct 어노테이션을 사용해 Spring이 초기화될 때 DB에 데이터를 초기화 해주셨는데요. Order, OrderItem 클래스 필드에 cascade 옵션이 있어서 order나 orderItem만 em.persist() 하면 다른 엔티티도(delivery, orderItems 등) 다 같이 persist 되지 않나요? 왜 엔티티별로 따로 하나씩 persist 하셨는지 궁금합니다. 제가 잘못 이해한 거라면 설명 한번 부탁드리겠습니다!
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
Java언어 기출문제의 변형 간단한재귀함수 21:33
Add 5 출력 후 return super.sum(n) 을 하면 n=5 가 부모 클래스 SUM으로 호출되서 if문 false로 인해 else 실행하며 5 + sum(n-1) 은 알겠어 근데 왜 ADD4 가 출력되는지 정확하게 이해하지 못하겠습니다. 5+Sum(4)4+Sum(3)3+Sum(2)2+Sum(1)1+Sum(0)n <=0 -> returm 0으로 제가 풀이된 답은ADD 5Sum : 15 로 되는데요 무슨 차이 이길래 다시 자식에게 ADD 4를 호출시키느거죠
-
미해결업무가 100배 빨라지는 엑셀 데이터 활용과 분석 노하우
빈셀만 선택 후 데이터 동시입력_수식입력
이미 정렬 및 필터를 할 때 부서가 나오지 않는 경우는 화면 내용과 어떤 게 다르게 적용된 걸까요? 필터 정렬 후 값 복사를 안 해도 되는 건 편한데 수식이 왜 똑같이 안 나오는지 알고 싶습니다!
-
해결됨(2025) 일주일만에 합격하는 정보처리기사 실기
정적메서드+문자열
Java언어 기출문제의 변형 13:48for (int i = 0; i < maxL; i++) { if (i < a.length() && i % 2 == 0) { c.append(a.charAt(i)); } if (i < b.length() && i % 2 != 0) { c.append(b.charAt(i)) }}에서 왜 1번 if문 출력 후 2번 if문이 실행되는건가요1번 if문 실행이 종료 후 2번 실행이 되어야하는거 아닌가요?
-
해결됨코딩 없이 AI 자동화 전문가가 되는 법, n8n 완벽 가이드
Railway 사용 case 문의
안녕하세요 n8n 셀프호스팅 도커로 잘 학습을 완료햇는데요 항상 도메인이 바뀌기 때문에 요새 가장 많이 사용한다는 railway를 통해서 호스팅을 해보려고하는데요 기존에 학습한 도커 컨테이너 이미지 들과 환경설정들을 이관하고 싶은데 혹시 이부분에 대해서 추가 강의를 해주실수 있을까여?
-
미해결[C#/.NET 7.0]어서와, WPF는 처음이지?
postgresql 설치 문제
https://choincnp.tistory.com/76위 링크와 동일한 설치 문제가 계속 발생합니다 현재 다운로드 링크에 있는 버전 전부 발생하며 해결 방법을 다 실행해 봐도 해결이 안됩니다. 그나마 해결됐던데 11.2-1 버전 설치인데 설치는 성공했지만 강의 해주시는 15 버전과 UI가 꽤 다른 점이 있네요 15.5 버전 설치 파일을 올려주시거나 예전 버전들 설치 파일 링크에 접근할 방도가 있을까요?
-
미해결
창의성은 연결이다
기능적,유사성 기반,상징적/은유적,인과적 연결 등을 통해 창의성을 발휘할 수 있다 철학도 마찬가지이다 우리가 푸는 문제도 이러한 것들을 토대로 만들어 졌기에 계속해서 반복하다 보면 우리도 모르게 이런 사고 회로를 갖는 것이다
-
미해결실전! GitHub Actions으로 CI/CD 시작하기
슬랙 연동 안됨
안녕하세요 강의 잘 듣고 있습니다.슬랙 연동하는 부분이 지속적으로 안돼서 어떻게 해결해야 하는지 여쭤보고 싶습니다. 강의에 나온대로해도 안되길래 payload를 간소화해보기도 했고, 직접 마켓플레이스에 들어가 v2.1.0 문법으로 수정하기도 했습니다. 그런데 워크플로우에서 계속해서 5회 리트라이에도 실패했다는 값이 출력됩니다. 웹훅 URL도 정상적으로 생성되어 있고, text 값을 수정해서 별도로 curl을 날려도 정상적으로 슬랙에 메시지가 전달되는 상태입니다. action을 통할 때에만 실패하네요.. 혹시 슬랙이 무료판이라 그런걸까요.. 아래는 워크플로우 로그와 yaml 설정값입니다. Run slackapi/slack-github-action@v2.1.02 with:3 webhook: ***4 webhook-type: incoming-webhook5 payload: {6 "text": "리포지토리 생성 결과: success"7 }8 errors: false9 payload-templated: false10 retries: 511 env:12 ACTIONS_STEP_DEBUG: true - name: slack if: always() uses: slackapi/slack-github-action@v2.1.0 with: webhook: ${{ secrets.SLACK_WEBHOOK_URL }} webhook-type: incoming-webhook payload: | { "text": "리포지토리 생성 결과: ${{ steps.create-repo.outcome }}" }
-
해결됨38군데 합격 비법, 2025 코딩테스트 필수 알고리즘
수업교재 링크 문의
안녕하세요! 수업 교재 링크에서 제목만 뜨고 코드나 내용 설명은 안뜨네요ㅠㅠ pdf로 열면 뜨는데 코드가 짤리게 나와서 드래그 복사를 해도 짤린 부분까지만 복사가 되요ㅜ 강의 영상에서처럼 강의 자료를 보려면 어떻게 해야 될까요?
-
해결됨초초보도 할 수 있다! 파이썬으로 쓱 만드는 스페이스 인베이더
숫자를 바꿔도 이미지가 바뀌지 않습니다
크기나 위치 숫자를 바꿔도 실행하면 변하지 않아서 질문드립니다.
-
미해결실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
order.getOrderItems() 시 필드 접근 안했는데 select문이 나가는 이유
[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예)[질문 내용]안녕하세요.강의 자료에 orderItems.stream().forEach(o -> o.getItem()).getName()); // LAZY 강제 초기화라고 적혀있어서 그 위의 코드인 List<OrderItem> orderItems = order.getItems()에서는 DB에 SELECT 쿼리를 보내지 않는구나라고 이해했습니다. 근데 확인해보니 아래 코드를 PostMan으로 테스트를 해보았더니 orderItems : null 이지만SELECT절을 통해 데이터를 조회한 결과를 보였습니다.또한, order.getOrderItems()를 하지 않아도 orderItem을 조회하는 SELECT절이 나가더라구요 .. @GetMapping("/api/v1/simple-orders") public List<Order> ordersV1() { List<Order> all = orderRepository.findAllByString(new OrderSearch()); for (Order order : all) { order.getMember().getName(); // LAZY 강제 초기화 => 예외 발생 안함 ! why? Open Session in View(OSIV) 때문에 order.getDelivery().getAddress(); // LAZY 강제 초기화 => 예외 발생 안함 ! why? Open Session in View(OSIV) 때문에 order.getOrderItems(); // ? } // 원래는 LazyInitializationException이 발생하는게 정상이지만 OSIV로 인해 발생하지 않음 return all; } 다른 질문을 참고하였을 때 David님께서 아래와 같은 답변을 해주셨습니다.안녕하세요. Jeongmin Lee님:), 공식 서포터즈 Taewon David Hwang입니다.지연로딩(Lazy Loading)은 엔티티의 애트리뷰트에 접근할 때 데이터를 가져옵니다.그러나 하이버네이트에서 지정한 기본타입에 해당되는 것들은 기본적으로 지연로딩을 허용하지 않습니다.따라서 OrderItem의 애트리뷰트인 name, price, stockQuantty 중 하나라도 접근하게 되면 기본타입에 해당하는 name, price, stockQuantity의 데이터를 모두 불러오게 됩니다.David 선생님 의견에 따르면 엔티티의 에트리뷰트에 접근해야 데이터를 가져오는거 같은데 왜 위 사진같이 DB에 SELECT절을 호출 해 데이터를 가져오는건가요?
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 실전편 (인공지능 수익화)
네이버카페 크롤링 실습
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 43강 페이지 안에 페이지가 있는 구조 : iframe 전환하기학습하고 있는데요. 현재 네이버 카페 구조가 바뀐것 같습니다.혹시 맞나요??아니면 제가 실습을 못따라가고 있는것인지 궁금합니다.
-
미해결C# 윈폼_ 응용프로그램 개발
솔루션 탐색기 WindowsFormApp 더블클릭 후 어셈블리명 변경안됨
거기다가 그 창이 안닫히네요 다시 껐다 켜도
-
해결됨초초보도 할 수 있다! 파이썬으로 쓱 만드는 스페이스 인베이더
해결되긴 했는데 이렇게 실행해도 되는지 질문 드립니다.
한글 사용자 명 자체를 영문으로 바꾸려다 허송세월(ㅜㅜ)하고 결국에 챗지피티 한테 물어봐서 import os, import sys 이용해서 실행하니 이미지가 뜨긴 합니다.이렇게 코드를 짜도 되는지 질문드립니다.
-
해결됨RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기
안녕하세요 "섹션2 8. Consumer간 작업 분배" 에서 질문 있습니다.
안녕하세요. 강의 잘 듣고 있습니다.섹션2. 8번 강의 11분 13초 쯤에 하시는 말씀에 의문이 들어 질문글 남깁니다. 이 부분 설명하실때 ' 컨슈밍을 할때 파라미터로 받은 초를 슬립을 준 뒤에 소진을 하겠다' 라고 하셨는데, 메시지를 받은 순간 이미 소진이 시작 된 것이고 각각 2초 4초 5초뒤에 소진이 끝나는 것 아닌가요? 조금 헷갈려서 질문 드립니다.좋은 강의 감사드립니다.
-
미해결Java/Spring 테스트를 추가하고 싶은 개발자들의 오답노트
빌드 안 되시는 분들 참고
Maven resources compiler 어쩌구자바 버전 문제제 기준 pom.xml에서 java.version 21로 올리고 프로젝트 설정에서 SDK/모듈도 동일하게 설정했더니 해소 됐습니다NoSuchFieldError 어쩌구lombok 버전이 자바 버전과 안 맞음.pom.xml lombok dependency의 버전을 자바랑 맞추기 https://jinseobbae.github.io/java/2023/02/27/lombok-version-compatibility.htmlUnsupported class file major version 65스프링부트 버전 문제3.3.0으로 올리니까 해소됐습니다
-
미해결GSAP의 ScrollTrigger를 활용한 포트폴리오 제작
스크립트 부분이 이해가 어렵네요
align = (e) => { setX(e.clientX); setY(e.clientY); },이 부분에서 align이 무슨 함수인가요?보통 함수 사용시에는 function이라던가 익명함수도 var, const등 변수에 할당하여 쓰던데 딸랑 이름만 있고 화살표 함수만 있는 함수는 처음봐서 헷갈립니다... if (activeImage) { gsap.set(image, { x: gsap.getProperty(activeImage, "x"), y: gsap.getProperty(activeImage, "y"), }); }여기서 굳이 activeImage를 밑에서 activeImage = image;이렇게 할당하여 사용할 필요가 있나요?그냥 바로 let으로 선언했던 image를 넣어도 상관없을 것 같아서요 그리고 이 강의에서 사용하셨던fade, fade.play(),fade.reverse()이 코드들은 gsap에서 사용하는 코드들인가요 아니면 일반 자바스크립트에서도 사용하는 코드들인가요..? 제가 기초가 부족해서 그런 걸 수도 있겠지만 jquery도 아니고 js에서 이렇게 사용하는 걸 처음봐서요,,,