본문 바로가기

분류 전체보기160

[Python] Pandas : Dataframe 함수 - melt() 데이터 분석이나 시각화 작업을 하다 보면 데이터를 변환해야 할 때가 많습니다. 그중 가장 많이 사용하는 변환 중 하나가 데이터를 넓은 형식(wide format)에서 긴 형식(long format)으로 바꾸는 작업입니다. Pandas의 melt() 함수는 바로 이러한 변환을 쉽게 해주는 도구입니다. 이번 포스트에서는 melt() 함수의 기본 사용법부터 다양한 옵션을 살펴보겠습니다. 1. melt() 함수란?melt() 함수는 넓은 형식의 데이터를 긴 형식으로 변환하는 함수입니다. 예를 들어, 여러 개의 열(column)로 구분된 데이터를 하나의 열로 병합하고, 병합된 값을 기준으로 데이터 프레임을 재구성할 수 있습니다. 이를 통해 시각화나 분석에 더 적합한 형태로 데이터를 변형할 수 있습니다. 넓은 형식.. 2024. 9. 29.
[Python] Pandas : Dataframe 함수 - pivot() vs pivot_table() Ppivot()과 pivot_table() 함수는 엑셀의 피벗테이블과 같은 기능을 제공하는 함수입니다. 두 함수는 매우 유사해 보이지만, 실제로는 용도와 기능에서 몇 가지 중요한 차이점이 있습니다. 이번 포스트에서는 이 두 함수의 사용법과 차이점을 살펴보겠습니다. 1. Pandas pivot() 함수pivot() 함수는 데이터를 재구성하여 열 값을 인덱스로, 열로, 값으로 변환합니다. 이는 고정된 값들에 대해 단순한 피벗을 만들 때 사용됩니다. pivot() 함수 문법DataFrame.pivot(index=None, columns=None, values=None) index: 새로 설정할 인덱스. 기존의 열 이름을 지정합니다.columns: 열로 사용할 데이터. 피벗 테이블의 새로운 컬럼으로 변환됩니다... 2024. 9. 29.
[Python] Pandas : Dataframe 함수 - concat() 이 블로그에서는 데이터를 병합할 때 사용하는 pandas의 concat() 함수를 다양한 상황에서 어떻게 활용할 수 있는지 살펴보겠습니다.   1. concat() 함수란?concat() 함수는 pandas 라이브러리에서 제공하는 함수로, 여러 데이터프레임이나 시리즈를 행(row) 또는 열(column) 기준으로 병합할 때 사용됩니다. 이 함수는 같은 구조를 가진 데이터를 연결하여 하나의 데이터프레임으로 만드는 데 자주 사용됩니다.함수 형태import pandas as pdpd.concat(objs, axis=0, join='outer', ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=False,.. 2024. 9. 29.
[해커랭크] SQL 심화 응용 팁들 1. SELECT 서비스쿼리에서 where 조건으로 필터링https://www.hackerrank.com/challenges/the-company/problem?isFullScreen=true select a.company_code, a.founder,(select count(distinct lead_manager_code) from lead_manager where company_code = a.company_code),(select count(distinct senior_manager_code) from senior_manager where company_code = a.company_code),(select count(distinct manager_code) from manager where com.. 2024. 9. 24.
Python 개발환경 설정 가상환경에서 파이썬 코드를 작성하고, 수정을 할 때마다 버전을 기록하면서 커밋할 수 있게 인터프리터 개발 환경을 세팅하는 방법을 알아보자. 1. 파이썬 설치https://www.python.org/downloads/버전 선택(Python 3.10.9 버전 권장)운영체제 맞는 파일 선택하여 설치Add python.exe to PATH 체크 후 환경변수 추가하여 Install Now 클릭Windows PowerShell에서 python --version 명령어 입력파이썬 버전 확인python 입력print("hello world") 입력 후, 출력되는지 확인 2. VSCode 설치https://code.visualstudio.com/download윈도우의 경우 system installer 선택관리자 권한으.. 2024. 9. 11.
[Python] Pandas : Dataframe 함수 - merge() 데이터 분석을 하다 보면, 여러 개의 데이터프레임을 결합해야 하는 경우가 자주 발생합니다. Pandas의 merge() 함수는 이런 작업을 수행할 때 매우 유용한 도구입니다. 이 글에서는 merge() 함수의 사용법과 다양한 옵션들을 예시와 함께 자세히 설명하겠습니다. 1. 기본 사용법, on 매개변수merge() 함수는 SQL의 JOIN 연산과 유사한 방식으로 두 개의 데이터프레임을 합칠 수 있습니다. 기본적인 사용법은 다음과 같습니다:import pandas as pd# 예제 데이터프레임 생성df1 = pd.DataFrame({ 'key': ['A', 'B', 'C', 'D'], 'value1': [1, 2, 3, 4]})df2 = pd.DataFrame({ 'key': ['B', '.. 2024. 8. 16.
Webview, 하이브리드 앱 GTM 이벤트 설치 및 수집 방법 이 글에서는 하이브리드 앱의 웹뷰(WebView) 내에서 발생하는 이벤트를 Firebase Analytics에 연동하여 GTM으로 이벤트 수집하는 방법을 단계별로 설명합니다.  하이브리드 앱 또는 네이이트 앱의 특정 영역에 웹뷰를 사용하는 경우, 사용자들의 행동은 웹뷰 내에 있는 웹사이트에서 일어나게 됩니다. 그런데, 파이어베이스 애널리틱스의 경우엔 네이티브 영역에 설치가 됩니다. 그래서 웹뷰 내에서 일어나는 행동들을 파이어베이스 애널리틱스가 이벤트로 바로 찍을 수가 없습니다.  그래서 웹뷰에서 발생하는 이벤트를 수집하려면, 웹사이트 내에서 사용자가 행동을 했을 때, 네이티브 영역으로 데이터를 전달해줘야합니다. 그리고 나서 데이터를 받은 네이티브 영역에서는 받은 데이터를 이용해서 앱 자체에서 파이베이스 .. 2024. 8. 13.
[Python] Pandas : DataFrame 함수 - loc, iloc 이 블로그 포스트에서는 pandas의 인덱싱 기능인 loc과 iloc에 대해 깊이 있게 다룹니다. loc과 iloc의 차이점, 사용 방법, 그리고 실제 데이터 분석 작업에서 어떻게 활용할 수 있는지에 대한 다양한 예시를 제공합니다. loc과 iloc 설명loc: "label-based location"의 약자입니다. 이 명칭에서 알 수 있듯이, loc은 데이터프레임에서 라벨(label), 즉 행과 열의 이름을 기반으로 데이터를 선택하는 방식입니다. loc은 DataFrame의 행과 열을 라벨을 통해 접근할 때 사용됩니다. 기본적인 문법은 다음과 같습니다.df.loc[row_label, column_label]iloc: "integer location"의 약자입니다. iloc은 정수 인덱스(integer .. 2024. 8. 11.
[Python] Pandas : Dataframe 함수 - groupby() 사용법 이 글에서는 python의 대표적인 데이터 관련 함수인 groupby의 원리, 사용법에 대해서 알아보겠습니다. 대표적으로 사용하는 인자와 집계 함수의 종류와 예시도 살펴보겠습니다.  groupby 함수는 데이터프레임을 그룹으로 분할하고 각 그룹에 대해 연산을 적용할 수 있습니다. SQL의 GROUP BY와 똑같은 기능을 합니다. 이 함수는 데이터를 그룹화하고 그룹화된 데이터를 다양한 방법으로 분석하고 처리하는 데 사용됩니다. groupby 함수의 작동 방식은 아래와 같이 분할 -> 적용 -> 결합 단계를 거치게 됩니다.분할(Splitting):groupby 함수는 데이터프레임을 기준 열(또는 열의 리스트)에 따라 그룹으로 분할합니다.이 기준 열의 값에 따라 데이터가 여러 그룹으로 나뉩니다.적용(Apply.. 2024. 7. 27.
리텐션을 늘리기 위한 Network effect 종류 네트워크 효과? 왜 중요할까?네트워크 효과란 ‘서비스를 사용하는 유저수의 증가가 서비스 가치의 증가를 불러 일으키는 경우’를 말한다. 카카오톡을 예로 들면, 카카오톡에 내 친구가 10명이 있을 때랑 100명이 있을 때의 카카오톡이 나한테 가지는 가치를 한 번 생각해보면 된다. 메세지나 사진을 보내는 등 본질적인 가치는 전혀 바뀐 것이 없는데, 나한테 가지는 의미는 10배가 되는 것이다.  네트워크 효과가 있는 서비스는 MAU가 증가할 수록, 서비스를 사용하지 않을 이유가 줄어들기 때문에 리텐션이 늘어난다. 리텐션이 늘어나면 다시 MAU가 늘어나기 때문에 사용자가 늘어날 수록 수학적으로는 Carrying Capacity가 무한 성장하게 된다. 네트워크 효과는 브랜드, 스케일(규모), 임베드와 같이 디지털 .. 2024. 7. 22.
[solvesql]쇼핑몰의 일일 매출액과 ARPPU solvesql 사이트의 쇼핑몰의 일일 매출액과 ARPPU 문제 정답과 풀이이다. 난이도는 3단계였고, 한번에 정답을 맞췄다. 풀이하면서 쿼리 수행시간을 최대한 낮추려고 신경쓰면서 풀었다. 난이도 : 3풀이시간 : 15분수행시간 : 0.998초https://solvesql.com/problems/daily-arppu/  정답 쿼리select date(order_purchase_timestamp) as dt, count(*) as pu, round(sum(revenue),2) as revenue_daily, round(sum(revenue)/count(*),2) as arppufrom olist_orders_dataset aleft join (select order_id, sum(.. 2024. 7. 11.
[solvesql] 할부는 몇개월로 해드릴까요 해설 solvesql 할부는 몇개월로해드릴까요 sql 문제 정답 및 해설입니다. 문제 : https://solvesql.com/problems/installment-month/ 정답select payment_installments, count(distinct order_id) as order_count, min(payment_value) as min_value, max(payment_value) as max_value, avg(payment_value) as avg_valuefrom olist_order_payments_datasetwhere payment_type = 'credit_card'group by payment_installments;  해설정답률이 매우 낮길래 어렵나 하고 문제를 풀.. 2024. 7. 7.