본문 바로가기

Python48

[Pandas] sort_index() / sort_values() 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of Contentssort_index() → 인덱스를 기준으로 정렬 sort_values() → 특정 열(column)의 값을 기준으로 정렬 1. sort_index()(1) SyntaxDataFrame.sort_index(axis=0, level=None, ascending=True, inplace=False, kind='quicksort', na_position='last', sort_remaining=True, key=None) (2) 입력인자axis=0 (Default) 0: 행 인덱스 기준 (기본값) / 1: 열 인덱스 기준level=None (Default) 멀티인덱스(MultiIndex)에.. 2025. 2. 23.
[Pandas] nlargest/nsmallest 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of ContentsSyntax는 아래와 같습니다. DataFrame.nlargest(n, columns, keep='first')DataFrame.nsmallest(n, columns, keep='first') keep 옵션은 'first', 'last', 'all' 중 하나로 줄 수 있으며 n번째 데이터가 중복일 때 어떤 것을 리턴할 지 입력받는 argument입니다. df2 = pd.DataFrame({'A': [10, 20, 20, 30, 30, 30], 'B': ['a', 'b', 'c', 'd', 'e', 'f']})# 기본적으로 첫 번째 3개만 반환print(df2.nlargest(3, 'A'))# .. 2025. 2. 22.
[Python 기초] Broadcasting 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of ContentsBoradcasting 에 대해서는 다들 많이 아실텐데 좀 정확하게 정리를 한 번 해보겠습니다. Rule1. 총 차원의 개수가 맞지 않는 경우 차원을 확장시켜줍니다. 이 때, 앞에 있는 차원을 열어주고 그 차원의 크기는 1로 만들어줍니다. Rule2. 총 차원의 개수는 동일하지만 개별 차원의 크기가 동일하지 않을 때 차원의 크기를 늘려줄 수 있습니다. 단, 연산에 참여하는 배열의 차원의 크기가 1이어야 합니다.  말로는 쉽게 요약해보려고 해도 어렵네요.. 예시를 보면서 이해해봅시다. 예시 1: (3, 1) + (3,) → (3, 3)import numpy as np# (3, 1) 형태의 배열 생.. 2025. 2. 22.
[Pandas] idxmax(), idxmin() 2025.02.24 - [프로그래밍/Python 관련 정보] - [Pandas] Table of Contents명령어 자체는 직관적인 명령어 입니다. 특정한 칼럼 기준으로 최대, 최소값을 갖도록하는 index를 찾은 후 그 index에 대응되는 다른 칼럼의 값을 찾을 때 사용할 수 있습니다. SQL에서 Keep을 이용한 용법과 유사한 측면이 있다고 볼 수 있겠네요. import pandas as pd# Series 예시s = pd.Series([3, 7, 2, 9, 1])print(s.idxmax()) # 결과: 3 (인덱스 3에서 최대값 9)# DataFrame 예시df = pd.DataFrame({ 'A': [1, 5, 3], 'B': [4, 2, 6], 'C': [7, 8, 5]}.. 2025. 2. 20.
[Algorithm] Dynamic Programming vs. Greedy Algorithm 동적계획법(Dynamic Programming)은 지난 포스팅에서 살펴봤습니다.2025.02.19 - [프로그래밍/Python 관련 정보] - [Algorithm] Dynamic Programming vs. Recursion [Algorithm] Dynamic Programming vs. Recursion동적계획법(Dynamic programming)은 재귀구조(Recursion)와 비교해서 살펴봐야하는 방법론인데요, 사실 두 용어가 무 자르듯 딱 상호베타적으로 구분되는 것은 아닌데 좁은 의미로 사용될 때 두 가지가trillionver2.tistory.com이번에는 동적계획법과 탐욕(Greedy) 알고리즘을 비교해보겠습니다.  탐욕(Greedy) Algorithm : 순간순간 마다의 최선의 결정하는 방식.. 2025. 2. 20.
[Algorithm] Dynamic Programming vs. Recursion 동적계획법(Dynamic programming)은 재귀구조(Recursion)와 비교해서 살펴봐야하는 방법론인데요, 사실 두 용어가 무 자르듯 딱 상호베타적으로 구분되는 것은 아닌데 좁은 의미로 사용될 때 두 가지가 어떤 차이가 있는지 살펴보겠습니다. 두 방법론 모두 부분문제의 해결책을 전체 문제의 해결책으로 활용한다는 점에서는 공통점이 있습니다. 하지만 재귀구조는 주로 Top-Down 방식으로 (특히 함수를 재귀적으로 호출하는 방식으로) 적용하는 반면 동적계획법은 Bottom-up 방식을 사용하거나 Top-Down + Memoization 결합방식을 차용합니다. 재귀구조는 같은 작업을 여러번 반복하게 될 가능성이 있어서 깊은 재귀구조에서는 stack-overflow에러가 발생할 위험이 있습니다.  피보.. 2025. 2. 19.