호테의 노트에 오신 것을 환영합니다 🙌

Tableau와 Salesforce, Python과 SQL 등 데이터의 전반적인 것들을 다루는 기술 블로그입니다.

분류 전체보기 159

재귀함수 정복하기

1. 재귀함수란?재귀함수는 자기 자신을 다시 호출하는 함수를 말합니다.어느 한 컴퓨터공학과 학생이 유명한 교수님을 찾아가 물었다."재귀함수가 뭔가요?""잘 들어보게. 옛날에 산 꼭대기에 현자가 있었어. 질문엔 모두 지혜롭게 대답 해 주었지.그런데 어느날, 그 선인에게 한 선비가 찾아와서 물었어."재귀함수가 뭔가요?""잘 들어보게. 옛날에 산 꼭대기...2. 재귀함수의 구성요소Base Case (종료 조건): 더 이상 재귀 호출을 하지 않아야 할 조건Recursive Case (자기 자신을 호출하는 부분): 문제를 더 작게 쪼개서 자기 자신을 호출3-1. 예제 1: 팩토리얼 (n!)n! = n × (n-1)!조건: 1! = 1def factorial(n): if n == 1: # 종료 ..

TabPy 로컬 구성해서 Tableau Prep 연결하기

TabPy란?TabPy (Tableau Python Server)는 Tableau에서 Python 스크립트를 실행하고 그 결과를 Tableau 워크플로우에 직접 반영할 수 있도록 도와주는 분석 확장 서버입니다.Tableau Desktop뿐 아니라 Tableau Prep에서도 사용할 수 있으며, 이를 통해 데이터 전처리 과정에 Python 기반 로직을 유연하게 삽입할 수 있습니다. 1단계: TabPy 설치▶︎ Python 환경 확인먼저 Python이 설치되어 있어야 합니다. (Anaconda 환경에서도 OK)python --versionpip --version▶︎ TabPy 설치pip install tabpy 2단계: TabPy 서버 실행▶︎ 터미널에서 아래 명령어 입력tabpy정상적으로 실행되면 아래와 ..

SQL에서의 LATERAL JOIN

SQL을 사용하다 보면 하위 쿼리(Subquery) 나 인라인 뷰 안에서 메인 쿼리의 값을 활용하고 싶은 경우가 종종 있습니다. 이런 상황에서 강력한 기능을 제공하는 것이 바로 LATERAL JOIN입니다.이번 글에서는 LATERAL JOIN의 개념, 사용법, 실무 예시, 주의점까지 하나하나 정리해드릴게요.1. LATERAL JOIN이란?SQL에서 일반적으로 하위 쿼리(Subquery) 는 외부 쿼리의 컬럼을 참조할 수 없습니다. 그러나 LATERAL 키워드를 사용하면 하위 쿼리에서 외부 쿼리의 컬럼을 사용할 수 있게 됩니다.즉, LATERAL JOIN은 하위 쿼리를 외부 쿼리의 각 행마다 실행하며, 외부 쿼리의 값을 내부에서 참조할 수 있도록 해주는 기능입니다.💡 쉽게 말하면, LATERAL은 SQ..

SQL 2025.06.26

.sort() 와 sorted()의 차이

1 .sort() 와 sorted()의 차이항목.sort()sorted()종류리스트 전용 메서드내장 함수원본 변경✅ 원본 리스트를 직접 정렬 (in-place)❌ 원본은 그대로 두고 새 리스트 생성반환값None (아무것도 반환하지 않음)정렬된 새 리스트 반환적용 대상리스트(list)만 가능리스트, 문자열, 튜플, 딕셔너리 등 모든 반복 가능한 객체 가능가독성한 번만 정렬할 때 사용함수 체이닝 등 다양한 용도에 적합2. 예제 비교로 쉽게 이해하기2-1 .sort() 예제numbers = [3, 1, 4, 2]numbers.sort() # 원본이 정렬됨print(numbers) # ✅ 출력: [1, 2, 3, 4]result = numbers.sort()print(result) # ❌ 출력: Non..

OLAP과 OLTP란?

1. OLAP과 OLTP란?OLTP (Online Transaction Processing)OLTP는 온라인 거래 처리 시스템으로, 주로 실시간으로 데이터를 입력, 수정, 삭제하는 업무에 초점을 둡니다. 은행 이체, 온라인 쇼핑 결제, 항공권 예약 등이 이에 해당합니다. OLTP 시스템은 빠른 응답 시간과 높은 트랜잭션 처리량이 중요합니다.OLAP (Online Analytical Processing)OLAP는 온라인 분석 처리 시스템으로, 대규모 데이터를 바탕으로 분석, 요약, 의사결정 지원에 중점을 둡니다. OLAP 시스템은 사용자가 여러 관점에서 데이터를 조회하고 패턴이나 인사이트를 발견할 수 있도록 설계되어 있습니다. BI 도구(예: Tableau, Power BI)와 함께 사용되는 경우가 많습..

SQL 2025.06.23

Tableau Desktop - Amazon S3 버킷 연결

1. Tableau Desktop에서 Amazon S3 버킷 연결하기데이터 시각화 도구로 널리 사용되는 Tableau Desktop은 다양한 데이터 소스와의 연결을 지원합니다. 최근에는 Amazon S3 버킷에 저장된 데이터를 직접 Tableau에서 불러와 분석하려는 수요도 많아졌습니다. 이 글에서는 Tableau Desktop과 Amazon S3 버킷을 연결하는 방법을 단계별로 설명드립니다.2. 사전 준비 사항Tableau Desktop 최신 버전 설치Amazon S3 연결 기능은 2023.1 이상에서 지원됩니다.Amazon S3 버킷 권한 설정연결하려는 S3 버킷에 접근할 수 있는 IAM 사용자 자격 증명이 필요합니다.AmazonS3ReadOnlyAccess 이상의 권한을 갖고 있어야 합니다.AWS ..

Matplotlib 한글이 깨져서 나올 때

# +) 한글이 깨져서 나와요koreanize_matplotlib은 Colab이나 Jupyter 환경에서 한글 폰트를 간편하게 설정해주는 라이브러리입니다.matplotlib의 설정을 자동으로 바꿔주기 때문에 한글이 깨지지 않도록 도와줍니다.!pip install koreanize-matplotlib #한글폰트 라이브러리 설치!apt-get install -y fonts-nanum #나눔 고딕 폰트 설치import matplotlib.pyplot as pltimport koreanize_matplotlib # 한글 자동 설정됨plt.plot([1, 2, 3], [1, 4, 9])plt.rcParams['font.family'] = 'NanumGothic' #나눔 고딕 폰트 설정plt.title("한글 제..

Python 2025.06.17

Matplotlib을 활용한 다양한 차트 구성

1. 막대 차트- 각 값들의 비교를 할때 시각화- 시각화 영역에서 가장 많이 쓰는 차트# 데이터 준비categories = ['A', 'B', 'C', 'D']values = [10, 20, 15, 25]# 막대 그래프 그리기plt.bar(categories, values)# 그래프 보여주기plt.show()2.산점도 (스캐터 차트)- 두 변수 간의 관계를 시각적으로 표현하는 데 사용되는 그래프- 각 데이터 포인트는 두 변수의 값을 좌표로 하여 점으로 표현- 이를 통해 두 변수 간의 상관 관계, 패턴, 이상치 등을 파악할 수 있음#산점도 그리기np.random.seed(0)n = 50x = np.random.rand(n)y = np.random.rand(n)plt.scatter(x, y)plt.show(..

Python 2025.06.17

Matplotlib을 활용한 데이터 시각화

import numpy as npimport pandas as pd# Matplotlib import & 버전 확인import matplotlibimport matplotlib.pyplot as pltprint(matplotlib.__version__)1. Matplotlib 소개**matplotlib.pyplot** 모듈의 각각의 함수를 사용해서 간편하게 그래프를 만들고 변화를 줄 수 있습니다.예를 들어, 그래프 영역을 만들고, 몇 개의 선을 표현하고, 레이블로 꾸미는 등의 일을 할 수 있습니다.참고 문서 : https://wikidocs.net/book/5011**pyplot.plot()** 함수에 하나의 숫자 리스트를 입력함으로써 아래와 같은 그래프가 그려집니다.**plot()** 함수는 리스트의 ..

Python 2025.06.17

Tableau Next 소개

데이터 기반 의사결정 시대에서, 태블로(Tableau)는 또 한 번 혁신을 시도합니다. 새롭게 선보이는 Tableau Next는 기존 BI 플랫폼의 한계를 넘어서, AI 기반 분석 에이전트, 시맨틱 계층(Semantic Layer), 컴포저블 아키텍처, 그리고 Salesforce와의 완전한 통합으로 차세대 데이터 분석을 실현합니다.Tableau Next란?Tableau Next는 AI 분석 에이전트와 확장 가능한 아키텍처를 기반으로 하는 에이전틱 분석(Agentic Analytics) 플랫폼입니다.복잡한 데이터 분석 도구가 아닌, 자연어 기반의 직관적인 인터페이스로 누구나 쉽게 데이터에 접근하고, 이해하며, 행동으로 이어지게 합니다.주요 특징 요약1. AI 에이전트 통합Data Pro: 데이터 정제 및 ..