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

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

분류 전체보기 161

MYSQL 설치 에러 - This application requires latest Visual Studio 2019 x64 Redistributable 해결

이 오류 메시지는“This application requires latest Visual Studio 2019 x64 Redistributable”즉, MySQL Server 9.5 설치에 필요한 Visual C++ 런타임이 설치되지 않았거나 버전이 낮다는 의미입니다.MySQL 자체는 “SQL 서버 프로그램”이지만, 그 안의 실행 파일(mysqld.exe, mysql.exe 등)은 C++로 개발되어 있습니다.이 C++ 프로그램이 실행되려면 Windows 시스템에 필요한 런타임 라이브러리가 있어야 해요.그게 바로 “Visual Studio Redistributable”입니다.✅ 해결 방법① Visual Studio 2019 x64 Redistributable 설치아래 공식 마이크로소프트 페이지로 이동합니다..

SQL 2025.10.23

Pygwalker - Jupyter Notebook 환경에서 반응형 시각화하기

1. Pygwalker란 무엇인가?Pygwalker는 데이터프레임을 시각적으로 탐색할 수 있는 인터랙티브 시각화 툴입니다.“Python” + “Graphic Walker”의 합성어로, Pandas DataFrame을 마치 Tableau나 Power BI처럼 드래그 앤 드롭 방식으로 시각화할 수 있게 해줍니다.데이터 과학자와 분석가가 Notebook 환경에서 빠르게 데이터를 이해하고, EDA(Exploratory Data Analysis)를 직관적으로 수행할 수 있도록 도와줍니다.2. 주요 기능드래그 앤 드롭 인터페이스차원(범주형 데이터)과 측정값(수치형 데이터)을 끌어다 놓으면 즉시 차트를 생성할 수 있습니다.자동 차트 추천선택한 변수에 따라 막대, 선, 산점도 등 적절한 차트를 제안합니다.Tableau..

Python 2025.08.28

재귀함수 정복하기

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