inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

범주형 데이터 세트의 불균형 문제

미해결

[바이브 코딩 + AI 실무 데이터 분석] 런던 MBA 학생들이 열광한 수강평 5.0 만점 강의: 문과출신 비전공자도 현업에서 바로 써먹는 데이터분석 실무 역량과 취준 완성!

안녕하세요, 수업을 듣다가 fraud detection을 예시로 주셨던 범주형 데이터 속성중에 세트 자체에서 불균형이 큰 경우, 예를 들어 yes 는 1000 개고 no 가 5개 밖에 없는 극단적인 불균형이 있을 때는 모델의 정확도를 맞추기 어렵다고 설명주신 부분에 질문이 있어요. 저도 사실 제 프로젝트를 하던중에 비슷한 문제가 있었어서 SMOTE같은 방법을 써서 어떻게 해서든 불균형 문제를 완화해보려고 노력했는데 주어진 데이터 자체가 너무 불균형이 심하면 설명주셨던 것처럼 별다른 방법을 찾지 못했습니다. 만약 그럼에도 불구하고 그 데이터가 중요한 속성들과 데이터라면 어떻게 다루는 것이 좋을까요? 제가 예전에 했던 방법은 정확하게는 기억이 나지 않지만 그 그룹군을 아예 나누어 data frame을 따로 짜서 분석을 진행해보려고 했던 것 같아요. (예시: no = fraud 그룹군 df, yes = non_fraud 그룹군) 실질적으로는 보통 어떻게 접근하거나 해결하는 지 궁금합니다...!

  • python
  • EDA
  • analytics
  • chatgpt
소요요 댓글 1 좋아요 0 조회수 198

3-13. 리텐션 분석 과제

해결됨

BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)

"3-13. 리텐션 과제 : 꼭 풀어보시고 제출해주세요" 강의 과제 완료하여 제출 합니다. 링크 : 리텐션 분석 과제 "쿼리 검토 요청"이라고 기재되어 있는 부분 쿼리에 이상이 없는지 확인해주시면 감사하겠습니다! 그리고 과제하다가 궁금한 점이 있어 "문의사항"도 남겨두었습니다. 해당 부분도 답변 부탁드립니다! 전반적으로 리텐션 분석을 진행하는 과정이 올바른지에 대해서도 피드백을 주시면 많은 도움이 될 것 같습니다! 강의를 통해 정말 많이 배울 수 있었습니다! 감사합니다.

  • sql
  • Google-Analytics
  • firebase
  • google-sheets
  • bigquery
sddyyy1004 댓글 3 좋아요 0 조회수 203

Firebase Hosting 후 페이지 안뜰 때!

미해결

Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)

혹시나 저 같으신 분 있으실까봐 공유해요! firebase hosting 후 Deploy complete! 라고 잘 떴는데도 불구하고 본인이 만든 페이지는 안뜨고 저 화면이 나타날때, 1분정도 기다렸다가 새로고침하니까 제대로 뜨네요 ㅎㅎ 이런 이유인지 모르고 이것저것 다시 해보다가(삽질 ㅠㅠ) 새로 고침 하니까 바로 뜨네요 😅 😅

  • vue.js
  • firebase
  • quasar
  • algolia
  • vue-3
  • hosting
이예나 댓글 1 좋아요 0 조회수 205

hwp.TableCellBlockCol()에서 내용만 지우기

해결됨

직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피

안녕하세요 일코님! 환절기 건강 잘챙기시기 바랍니다. 아래와 같이 했을 때 표 셀 자체가 사라져버리는데, 표의 내용만 지우려면 어떻게 해야할까요? 감사합니다! hwp.TableCellBlockCol() hwp.TableDeleteCell()

  • python
  • 한컴오피스
윤병현 댓글 1 좋아요 1 조회수 192

ML Model Sqauence에 대한 이해

미해결

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

안녕하세요 교수님 교수님의 머신러닝 강의가 정말 많은 도움이 되고 있어 감사하고 있습니다. 저는 통계를 우선 공부를 한 후 교수님 강의를 통해 머신러닝을 공부중인 연구개발 직장인입니다. 지도학습, 비지도학습 각각의 모델에 대한 개요와 내용들은 정말 자세하게 설명해주시는 것 같습니다. 다만, 예측 모델을 만든다 라고 했을 때, 저는 다음 과정으로 머신 러닝을 이해했습니다. 틀린 게 있거나, 부족하면 말씀부탁드립니다. 1. Teat data set EDA 2. Data pre-processing 3. Input feature select, extract 4. Model training 5. Model validation 6. new input feature prediction 연속 데이터로 이루어진 실험데이터로 선형 회귀 예측 모델을 구현한다라고 했을 때 하기 내용에 대해 궁금합니다. step 2. 과정에서 standardization scaling 했을 때 정규성 검증은 필요가 없나요?? (e.g. shaprio-wilks test, 각 feature 별 QQ plot) step 3. 과정에서 교수님 강의에서는 data scaling 이후 바로 모델 학습/예측/평가를 진행하고, feature 별 회귀 계수를 구하십니다.(경사 하강법) 저는 해당 과정에서 다중 공선성 방지를 위해 PCA, ICA를 통한 features extraction으로 training 으로 진행하는 것으로 이해했는데 해당 방식이 틀린 것인지 여쭙고 싶습니다. 추가로, n개 feature에 대해 몇 개로 차원 축소하는 기준이 있는지 궁금합니다 또, 지도 학습 모델인 선형 회귀 모델을 진행하는데 있어 비지도 학습 기법이 사용이 되는 것이 소개가 안된 것 같은데 이부분에 대해서 어떻게 생각하시는지도 궁금합니다.(정확히는 예측 모델을 구현하는 일련의 과정) 마지막으로 step 5. 과정에서 선형 회귀 모델이 통계적으로 유의한가에 대해 P-value 를 측정하곤 하던데, 이부분에 대해서 간단히 설명해주시면 정말 감사하겠습니다. 상기 질문들을 하는 이유는, 저는 단순히 어떤 연속 데이터 셋에서 ML 모델을 통해 추정하고 싶은데, 여러 분야에서 ML을 사용하다보니 예를 들어 통계 분야 에서는 가설과 함께 설명하고 또 어떤 분야에서는 또 다르게 설명을 하다보니 혼동이 되어서 해당 질문을 드리게 되는 것입니다. 답변 주시면 정말 감사합겠습니다!

  • python
  • 머신러닝
  • 통계
charge 댓글 1 좋아요 0 조회수 132

요약자료나 마인드맵 자료

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

요약자료나 마인드맵자료 등 받아볼수 있나요? 못찾겠어요ㅜㅜ

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
오주연 댓글 2 좋아요 0 조회수 139

코드 뒤에 . 아니면 _ 붙이는 차이 띄어쓰기만 하면 안되나요?

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

강의 3개 정도 들었는데요. 보다보니 dictionary.keys() dict_values(['name', 'level']) 위 예시인데요 . 나 _ 붙이는데 안붙이고 띄어쓰기만 하면 안되나요? 언제 .를 붙이는지 _를 붙이는지 차이를 모르겠어요 저장

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
오주연 댓글 2 좋아요 0 조회수 151

개봉 날짜 및 평점 가져오는 코드 추가

미해결

남박사의 파이썬으로 봇 만들기 with ChatGPT

강의에서 제공된 코드는 영화 개봉 날짜, 평점을 가져오지 못하고 있는데 아래 코드 사용하시면 됩니다. 그리고 태그가 단일 요소일 경우 contents 속성을 사용하기 보다는 string 속성을 사용하면 리스트가 아닌 문자형으로 바로 출력할 수 있습니다. for dt, dd in zip(c_dt, c_dd): if dd.select_one('c-star'): rating = dd.select_one('c-star').next_element.strip() c_data[dt.string] = rating elif dd.select_one('span'): days = dd.select_one('span').string c_data[dt.string] = days else: c_data[dt.string] = dd.string

  • python
  • 웹-크롤링
  • 챗봇
  • 객체지향
  • openai-api
naroSEC 댓글 1 좋아요 0 조회수 164

C언어 배열(문자열) 포인터

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

int array[] = {10, 20, 30, 40, 50} int *ptr = array ; printf("%d\n", ptr); printf("%d\n", *ptr); 위와 같을 경우에는 출력값은 ptr > 주소 = 10 (이해됨) *ptr > 값 = 10 *ptr 이거는 값이 나와야하는데 왜 10이 나오는건가요?

  • python
  • java
  • c
  • 정보처리기사
ssssso 댓글 2 좋아요 0 조회수 187

__mul__ 백터 * 숫지, 백터 * 백터 처리

미해결

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

곱셈 처리 중, 백터*백터와 백터*숫자를 어떻게 하나의 def에 담을 수 있을까 생각하다가 아래와 같이 처리하니 되네요. 이렇게 처리하는게 일반적인지 궁금하여 문의 드립니다. def __mul__(self, other): print(type(other)) if (type(other)) == Vector: return Vector(self._x * other._x , self._y * other._y) else: return Vector(self._x other, self._y other) print(v1*v2) #백터 * 백터 print(v1*2) # 백타 * 숫자

  • python
  • django
정다빈 댓글 1 좋아요 0 조회수 165

브루토 포스 백준 1342 질문

해결됨

세계 대회 진출자가 알려주는 코딩테스트 A to Z (with Python)

s = list(input()) n = len(s) choose = [] check = [False] * len(s) ans = [] def check_ad(s): for i in range(len(s)-1): if s[i] == s[i+1]: return False return True def make(level): if level == n and check_ad(choose): result = ''.join(choose) if result not in ans: ans.append(result) for i in range(n): if check[i]: continue choose.append(s[i]) check[i] = True make(level + 1) choose.pop() check[i] = False make(0) print(len(ans)) 안녕하세요 강사님! 위 코드는 시간 초과가 나는데 순열 강의 알고리즘을 그대로 사용한 것입니다! 강사님의 순열 코드는 시간 초과가 안나는데 왜 이거는 시간초과가 날까요? 내장된 permutation이 효율적으로 구현된 것일까요?

  • python
  • 코딩-테스트
  • 알고리즘
TAESUN 댓글 2 좋아요 0 조회수 203

relativedelta 실행 결과 문의

미해결

Airflow 마스터 클래스

now = datetime(year=2023, month=3, day=30) print('현재시간:' + str(now)) print('-----------------월 연산 --------------------') print(now + relativedelta.relativedelta(months=1)) print(now.replace(month=1)) 위의 코드 실행 결과가 다르게 나오는 것 같은데요..1개월 후면 4월30일이 맞는 것 아닌가요? 현재시간:2023-03-30 00:00:00 -----------------월 연산 -------------------- 2023-04-30 00:00:00 2023-01-30 00:00:00 감사합니다.

  • python
  • 데이터-엔지니어링
  • airflow
Byung-ryul Kim 댓글 2 좋아요 0 조회수 165

can't open/read file: check file path/integrity 오류 발생 시 해결 방법

미해결

남박사의 파이썬으로 봇 만들기 with ChatGPT

cv2.imread() 함수를 통해 이미지를 읽어 들일 때, 한글을 읽어오지 못해 오류가 발생하는 경우가 있습니다. 아래의 코드로 해결하시면 됩니다. 참고로, 아래 코드 사용 시 cvtColor() 함수를 사용해서 색상을 변경하지 않아도 됩니다. import numpy as np img_path = "이미지 파일 경로" img_file= np.fromfile(img_path, np.uint8) cv_decode = cv2.imdecode(img_file, cv2.IMREAD_COLOR) qr_reader = pyzbar.decode(cv_decode) print(qr_reader)

  • python
  • 웹-크롤링
  • 챗봇
  • 객체지향
  • openai-api
naroSEC 댓글 1 좋아요 1 조회수 738

1-9. 퍼널 SQL 쿼리 작성하기

해결됨

BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)

강의 보면서 '퍼널별 유저 수 집계' 쿼리 작성했는데 결과값이 올바르게 나오지 않아요... 어디서 잘못 되었을까요? WITH base AS( SELECT event_date, event_name, DATETIME(TIMESTAMP_MICROS(event_timestamp),'Asia/Seoul') as event_timestamp, event_param, user_id, user_pseudo_id, platform, -- event_parma.key PIVOT MAX(IF(event_param.key='firebase_screen',event_param.value.string_value,null)) AS firebase_screen, -- MAX(IF(event_param.key='food_id',event_param.value.int_value,null)) AS food_id, MAX(IF(event_param.key='session_id',event_param.value.string_value,null)) AS session_id FROM advanced.app_logs CROSS JOIN UNNEST(event_params) as event_param GROUP BY ALL) -- event_name + screen (필요한 이벤트만 where 조건에 걸어서 사용) ,filter_event as( SELECT * except(event_name,firebase_screen), concat(event_name,'-',firebase_screen) AS event_name_with_screen FROM base WHERE event_name in ('screen_view','click_payment')) SELECT event_name_with_screen, -- step_number case when event_name_with_screen='screen_view-welcome' then 1 when event_name_with_screen='screen_view-home' then 2 when event_name_with_screen='screen_view-food_category' then 3 when event_name_with_screen='screen_view-restaurant' then 4 when event_name_with_screen='screen_view-cart' then 5 when event_name_with_screen='click_pavement-cart' then 6 else null end AS Step_number, count(DISTINCT user_pseudo_id) as cnt FROM filter_event GROUP BY ALL HAVING step_number IS NOT NULL

  • sql
  • Google-Analytics
  • firebase
  • google-sheets
  • bigquery
jenna 댓글 1 좋아요 0 조회수 298

섹션8에서 게시글 정보 가져오기에서 timeStamp에러 입니다.

미해결

Flutter로 SNS 앱 만들기

섹션8에서 게시글 정보 가져오기에서16:00 WidgetsBinding.instance.addPostFrameCallback(callback) 나봅니다. 강의처럼 timeStamp가 나오지 않고, 그래서 그냥 진행했습니다. WidgetsBinding.instance.addPostFrameCallback((_) async { 그런데 다음과 같이 에러가 뜨네요. 이런 메세지가 뜨는 이유가 뭔가요

  • flutter
  • android
  • firebase
  • dart
댓글 1 좋아요 0 조회수 211

강사님 안녕하세요! daily return 연 평균과 관련하여 질문 드립니다!

미해결

실전 금융 머신러닝: 파이썬으로 구축하는 중급 투자 전략

강의에서 보면 예를 들어 goog의 연평균 주식 구하실때, pct_change() 구한값에 mean()을 취하셔서 working day 252를 곱하셨는데, 복리 개념을 생각해보면 (df_daily['goog'].pct_change() + 1).prod() ** (252/len(df_daily)) - 1 이렇게 되야 하는게 아닌가 궁금하여 문의드립니다! 값이 거의 비슷하다고 가정하시고 그냥 복리 개념은 생략하신건지요! 감사합니다

  • python
  • 머신러닝
Hoon 댓글 2 좋아요 0 조회수 211

구조체 기본 형태

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

안녕하세요! 2분 쯤에 구조체 선언하는 2가지 형태에 대해서 비교해 주실때 오른쪽에서 구조체 선언할때 (왼쪽과는 달리)그냥 struct 라고만 되어있는데 struct Person {//내용}person1 ; 이렇게 Person(구조체명)이 들어가야 하는데 실수로 빠진 건지 아니면 이 경우에는 구조체명을 쓰지 않아도 되는 건지 궁금합니다! 그리고 왼쪽 케이스 아랫부분 사용시 용례에 struct 구조체명 타입명; 이라고 되어있는데 여기서 타입명을 변수명이라고 이해해도 될까요? 뒷 강의에서 typedef를 다루면서 타입명이 나오기는 하는데 여기서도 typedef 키워드가 있을때를 의미하는 건지 헷갈려서요ㅜㅜ

  • python
  • java
  • c
  • 정보처리기사
Jii 댓글 2 좋아요 0 조회수 217

[과제] 퍼널 쿼리(피벗테이블 적용) 작성

해결됨

BigQuery(SQL) 활용편(퍼널 분석, 리텐션 분석)

# base 쿼리 작성 전 생각 흐름 ---------------------------------------------------- ## 1. 테이블 내 데이터 구조 파악 -- select -- * -- from advanced.app_logs -- where -- event_date = '2022-08-01' -- 목적에 맞는 쿼리를 기존 데이터로 구현할 수 있는지 여부 확인 -- 연습문제 결과물 컬럼인 'event_name_with_screen', 'step_number', 'cnt'는 기존 컬럼에 없음. -- 기존 컬럼에 없기 때문에 해당 컬럼을 어떻게 구현해내야 할 지 생각해보기 ## 2. event_name_with_screen 컬럼 구현 순서 및 방법 -- event_name_with_screen는 다음과 같은 value를 가짐 -- 1. screen_view-welcome -- 2. screen_view-home -- 3. screen_view-food_vategory -- 4. screen_view-restaurant -- 5. screen_view-cart -- 6. click_payment-cart -- 위 6가지 value가 기존 컬럼에 있는지 확인해보기 -- 있는 경우 -- 기존 컬럼 활용 -- 없는 경우 -- concat 등으로 새롭게 구현 -- 연습문제에서는 event_name과 event_params.key에 있는 value를 concat 했음. -- event_params.key는 데이터타입이 struct이기 때문에 unnest 필요. -- select -- event_name, -- unnest_event_params -- from advanced.app_logs -- cross join unnest(event_params) as unnest_event_params -- where -- event_date = '2022-08-01' -- unnest 결과물에 피봇테이블 적용하기 -- 피봇테이블로 만들면 직관적으로 event_name과 concat 하기가 용이해서. -- select -- event_name, -- event_date, -- event_timestamp, -- user_pseudo_id, -- max(if(unnest_event_params.key = 'firebase_screen', unnest_event_params.value.string_value, null)) as firebase_screen, -- max(if(unnest_event_params.key = 'food_id', unnest_event_params.value.int_value, null)) as food_id, -- max(if(unnest_event_params.key = 'session_id', unnest_event_params.value.string_value, null)) as session_id -- from advanced.app_logs -- cross join unnest(event_params) as unnest_event_params -- where event_date between '2022-08-01' and '2022-08-18' -- group by 1, 2, 3, 4 ---------------------------------------------------- with base as ( select event_name, event_date, event_timestamp, user_pseudo_id, max(if(unnest_event_params.key = 'firebase_screen', unnest_event_params.value.string_value, null)) as firebase_screen, max(if(unnest_event_params.key = 'food_id', unnest_event_params.value.int_value, null)) as food_id, max(if(unnest_event_params.key = 'session_id', unnest_event_params.value.string_value, null)) as session_id from advanced.app_logs cross join unnest(event_params) as unnest_event_params where event_date between '2022-08-01' and '2022-08-18' group by 1, 2, 3, 4 ), base2 as ( select *, concat(event_name, '-', firebase_screen) as event_name_with_screen from base ) ## 일자별 퍼널 쿼리 , base3 as (select event_date, event_name_with_screen, # 2개 이상 조건을 한 개 컬럼에 적용해야 하기 때문에 case when 사용 case when event_name_with_screen = 'screen_view-welcome' then 1 when event_name_with_screen = 'screen_view-home' then 2 when event_name_with_screen = 'screen_view-food_category' then 3 when event_name_with_screen = 'screen_view-restaurant' then 4 when event_name_with_screen = 'screen_view-cart' then 5 when event_name_with_screen = 'click_payment-cart' then 6 else null end as step_number, # 중복되지 않은 사용자수(비로그인 이용자까지)를 파악하기 위해서 count(distinct 컬럼명) 사용 count(distinct user_pseudo_id) as cnt from base2 group by all # null 값 제외하기 위해서 그룹에 필터링 거는 having 사용 having step_number is not null # 1일부터 보고 싶기 때문에 오름차순(asc) 적용 order by 1 asc) ## 일자별 쿼리 (피벗테이블 적용) select event_date, max(if(event_name_with_screen = 'screen_view-welcome', cnt, 0)) as screen_view_welcome, max(if(event_name_with_screen = 'screen_view-home', cnt, 0)) as screen_view_home, max(if(event_name_with_screen = 'screen_view-food_category', cnt, 0)) as screen_view_food_category, max(if(event_name_with_screen = 'screen_view-restaurant', cnt, 0)) as screen_view_restaurant, from base3 group by all order by 1 asc

  • sql
  • Google-Analytics
  • firebase
  • google-sheets
  • bigquery
레스 댓글 1 좋아요 0 조회수 263

한글문서에서 스타일 초기화

해결됨

직장인에게 꼭 필요한 파이썬-아래아한글 자동화 레시피

아래 질문남긴 사람입니다. ^^ 혹시 바쁘시면 이부분만 하는 방법이 없을까요? 한글문서에서 폰트 전부 유지하고 스타일 전부 지우기 서현욱 올림.

  • python
  • 한컴오피스
Hyunuk Seo 댓글 3 좋아요 1 조회수 2971

인기 태그

인프런 TOP Writers

주간 인기글