본문 바로가기

Language44

itertools.combinations itertools.combinations itertools.combinations은 itertools 모듈에서 제공되는 함수 중 하나로, 주어진 iterable(반복 가능한 객체)에서 가능한 모든 조합을 생성합니다. 여기에는 iterable에서 원소를 선택하여 지정된 길이의 조합을 만드는 작업이 포함됩니다. from itertools import combinations my_list = [1, 2, 3, 4] # 길이가 2인 조합 생성 combs = combinations(my_list, 2) # 생성된 조합 출력 for comb in combs: print(comb) # 결과 (1, 2) (1, 3) (1, 4) (2, 3) (2, 4) (3, 4) 본 게시글은 ChatGPT의 도움을 받아 작성하였습니다. 2024. 2. 5.
LEAD 함수, LAG 함수 LEAD 함수, LAG 함수 1. LEAD() LEAD(): 현재 행을 기준으로 다음 행의 값 반환 LEAD(expression, offset, default) OVER (partition_clause ORDER BY order_clause) expression: 가져올 값의 열이나 식 offset(선택적): 가져올 행의 상대적인 위치, 기본값=1로 다음 행을 의미 (2인 경우 2번째 다음 행을 의미) default(선택적): LEAD 함수가 더 이상 행이 없는 경우 반환할 기본값 (미지정 시 NULL 반환) partition_clause(선택적): 데이터를 파티션으로 나누는 데 사용 ('PARTITION BY'를 추가하여 category별 계산) order_clause: 데이터 정렬 지정에 사용 # [.. 2024. 2. 4.
EXISTS 연산자 EXISTS 연산자 EXISTS 연산자는 서브쿼리의 결과가 비어 있지 않은 경우에만 true를 반환하고, 그렇지 않으면 false를 반환하는 논리 연산자입니다. 이 연산자는 외부 쿼리의 각 행에 대해 서브쿼리를 실행하고, 서브쿼리의 결과가 적어도 하나 이상의 행을 반환하는지 여부를 확인합니다. 이러한 특징으로 인해 EXISTS 연산자는 조건이 충족되는지 여부에 따라 결과를 제어할 수 있습니다. EXISTS 연산자는 일반적으로 SELECT 문이나 WHERE 절에서 사용됩니다. 외부 쿼리의 각 행에 대해 서브쿼리가 실행되며, 서브쿼리의 결과가 비어 있지 않으면 외부 쿼리에 해당 행이 포함됩니다. 서브쿼리의 결과가 비어 있으면 외부 쿼리에 해당 행은 포함되지 않습니다. 'Nike' 브랜드 유무 확인 SELEC.. 2024. 2. 2.
이동 평균, 누적 합계 이동 평균, 누적 합계 MySQL에서 이동 평균과 누적 합계를 구하는 쿼리를 알아보자 1. 이동 평균 각 행의 값과 이전 n개, 이후 n개의 행 값을 포함하여 (2*n + 1)일 이동 평균을 계산 ROWS BETWEEN n PRECEDING AND n FOLLOWING # 테이블(my_table) +-------------+--------------+ | date_column | value_column | +-------------+--------------+ | 2024-01-01 | 10 | | 2024-01-02 | 15 | | 2024-01-03 | 20 | | 2024-01-04 | 25 | | 2024-01-05 | 30 | +-------------+--------------+ # [3일 이.. 2024. 1. 31.
NumPy 함수와 메서드 NumPy(Numerical Python) 넘파이(Numpy)는 파이썬에서 선형대수 기반의 프로그램을 쉽게 만들 수 있도록 지원하는 패키지로, 수치 연산을 수행하는 데 사용되는 핵심 라이브러리 중 하나입니다. (데이터 타입: ndarray) 여기에는 배열(array)을 다루는 다양한 기능과 함수가 있습니다. 1. np.array() 주어진 리스트 → 넘파이 배열로 변환 (tolist 반대 개념) import numpy as np # [1차원 배열 생성] np.array([1, 2, 3, 4, 5]) # 결과 array([1, 2, 3, 4, 5]) # [2차원 배열 생성] np.array([[1, 2, 3], [4, 5, 6]]) # 결과 array([[1, 2, 3], [4, 5, 6]]) 2. tol.. 2024. 1. 30.
문자열의 정렬 및 패딩 매서드 문자열의 정렬 및 패딩 매서드 파이썬에서 문자열을 원하는 길이로 정렬하거나 채우는 데 사용되는 메서드들은 다음과 같습니다. 1. ljust(width, fillchar) / rjust(width, fillchar) ljust(): 문자열을 주어진 width만큼 왼쪽으로 정렬 rjust() 문자열을 주어진 width만큼 오른쪽으로 정렬 부족한 길이는 fillchar 매개변수로 지정된 문자로 채워집니다. (fillchar 기본값=공백) # [ljust] word = "Hello" word.ljust(10, '*') # 결과: "Hello*****" # [rjust] word = "Hello" word.rjust(10, '*') # 결과: "*****Hello" 2. center(width, fillchar).. 2024. 1. 29.
SQL 순위 함수 SQL 순위 함수 1. ROW_NUMBER() 각 행에 대해 고유한 번호를 할당, 항상 1씩 증가하는 순위를 할당 SELECT value, ROW_NUMBER() OVER (ORDER BY value DESC) AS row_number FROM example_data; # 결과 +-------+------------+ | value | row_number | +-------+------------+ | 40 | 1 | | 30 | 2 | | 20 | 3 | | 20 | 4 | | 10 | 5 | +-------+------------+ 2. RANK() 각 행에 대해 순위를 할당, 동일한 값에 동일 순위를 부여하고, 그 다음 순위는 해당 값의 개수만큼 건너뛰게 됩니다. SELECT value, RANK(.. 2024. 1. 28.
예외 처리 구문 예외 처리 구문 파이썬에서 예외 처리는 프로그램 실행 중에 발생할 수 있는 오류나 예외 상황에 대한 처리를 제공합니다. 예외 처리를 통해 프로그램이 비정상적으로 종료되는 것을 방지하고, 예외 상황에 대한 적절한 대응이 가능합니다. 예외 처리는 try, except, else, finally 등의 키워드를 사용하여 구현됩니다. 1. try 블록 예외가 발생할 수 있는 코드를 포함하는 부분 프로그램이 이 블록 내의 코드를 실행하면서 예외가 발생하면, 예외 처리 과정으로 진입 2. except 블록 예외가 발생했을 때 실행되는 블록으로, 특정 예외 타입에 대한 처리를 정의 except 블록은 여러 개 사용될 수 있으며, 각각 다른 예외 타입에 대한 처리가 가능 except Exception as e: 모든 예.. 2024. 1. 27.
SQL 집계 함수 SQL 집계 함수 1. SUM() department별 총합을 반환 SELECT department, SUM(salary) AS total_salary FROM employees GROUP BY department; # 결과 +------------+--------------+ | department | total_salary | +------------+--------------+ | HR | 150000 | | IT | 200000 | | Sales | 250000 | +------------+--------------+ 2. AVG() department별 평균을 반환 SELECT department, AVG(salary) AS avg_salary FROM employees GROUP BY depa.. 2024. 1. 26.