본문 바로가기

Python48

[Pandas] Index를 이용한 DataFrame확장 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of Contents데이터프레임이 주어져있고 이 데이터프레임을 똑같은 양식으로 몇 행만 더 확장하고 싶을 경우가 있습니다. 저 같은 경우에는 실무를 하면서 LAG 변수를 종종 만드는데 원래 데이터 프레임에서 곧바로 shift를 이용한 LAG변수를 만들면 끝단에서 정보가 소실되어 버려서 LAG변수를 만들기 전에 DataFrame을 확장한 후에 변수를 만들곤 합니다. 이런 경우에 index를 이용해서 손쉽게 확장할 수 있습니다. (원래 낮은 버전의 pandas에서는 append를 동원하기도 했지만 최근에는 concat로 통합되었습니다) import pandas as pd# 예시 DataFrame 생성df = pd.Da.. 2025. 2. 18.
[Pandas] 날짜 형식 연산하기 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of Contents데이터프레임에서 날짜형식을 계산하다보면 어렵지는 않은데 생각보다 헷갈리는 경우가 많아서 한 번 정리해두고 업데이트 사항이 있을 때마다 덧붙이려고 합니다. 일단 우리가 다룰 수 있는 pandas 날짜형식은 크게 2가지 정도가 있겠습니다.  1. Datetime 기반 객체특정 날짜와 시간(연월일시분초) 정보를 포함하며, 초 단위까지 세밀한 연산이 가능합니다. 시계열 데이터 (DatetimeIndex) 처리 가능dt.year, dt.month, dt.day, dt.quarter 등을 활용해 특정 날짜 정보 추출Timedelta를 이용한 날짜 간 차이 계산 가능연, 월, 일뿐만 아니라 시간(hour),.. 2025. 2. 14.
[Pandas 기초] groupby 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of Contents1. Groupby의 작동방식Groupby는 기본적으로 DataFrame.groupby(그룹핑 기준)[원하는 컬럼].집계함수()DataFrame.groupby(그룹핑 기준).agg(함수 또는 함수들) 와 같은(혹은 DataFrame 대신 Series) 형식으로 사용합니다. 직관적인 이름처럼 Group 별 집계를 가능하게 하는 함수인데요. groupby를 쓰면 3단계로 동작합니다:분할 (Split): groupby() 메서드는 지정된 열(들)의 고유한 값을 기준으로 DataFrame(혹은 Series)을 여러 개의 작은 그룹으로 나눕니다. 각 그룹은 그 자체로 DataFrame(혹은 Series.. 2025. 2. 13.
[Python 기초] Argument Parser 가끔 Github에서 논문에 활용된 모델의 코드를 참고하는 경우가 있죠. 그런데 이 때 argument parser가 종종 등장하고는 합니다. 사실 대규모 데이터를 거대한 모델을 이용해서 돌릴 때는 PC와 같은 로컬환경에서 하기보다는 클라우드나 클러스터에 접속해서 실행하는 경우가 대다수일테고 이런 개발환경에서는 Linux 운영체제를 쓰는 것이 일반적이기에 이런식의 코딩을 쓸 것 같습니다. 오늘은 이 argument parser를 어떻게 사용하는지 간단히 정리해보겠습니다.  import argparseparser = argparse.ArgumentParser(description="이 프로그램은 argparse 예제입니다.")# default value 지정이 가능합니다.parser.add_argument.. 2025. 2. 13.
[Pandas] pandas.Series.dt (일자와 시간 처리) 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of Contentspandas.Series.dt는 datetime 속성을 가진 Series에 대해 시간과 날짜 데이터를 조작하고 추출할 수 있는 속성입니다. 보통 datetime 형식으로 저장된 데이터에 대해 연, 월, 일, 시간 등의 정보를 쉽게 다룰 수 있도록 도와줍니다. 간단하게는 기본적인 속성(예를들어 연,월, 일 등의 날짜에서 추출할 수 있는 정보)를 뽑아낼 수 있습니다. import pandas as pd# 예제 데이터data = {'date': ['2025-01-01 14:30:00', '2025-02-01 15:45:00']}df = pd.DataFrame(data)# datetime 형식으로 변환.. 2025. 2. 11.
[Algorithm] Depth/Breadth First Search 이번 포스팅에서는 깊이우선탐색(Depth First Search : DFS)과 너비우선탐색(Breadth First Search)에 대해서 알아보겠습니다. 두 알고리즘 모두 그래프에서 모든 노드를 방문하거나 특정 경로를 탐색하는 데 사용되며, 각각의 특성과 사용 방법에 차이가 있습니다. DFS (Depth First Search, 깊이 우선 탐색)DFS는 한 경로를 끝까지 탐색한 후에 다른 경로로 이동하는 방식입니다. 주로 재귀(Recursion)나 스택(Stack)을 사용해 구현합니다. 1. 알고리즘 요약1) 시작 node에서 출발합니다.2) 방문한 node를 기록하고, 해당 node의 인접 node 중 방문하지 않은 node로 이동합니다.3) 더 이상 이동할 node가 없으면 이전 단계로 백트래킹(B.. 2025. 2. 11.