본문 바로가기

파이썬14

[파이썬/python] collections.Counter 사용하기 함께 풀어보아욥 공식문서 번역에 가까운 글이다. Counter란? A Counter is a dict subclass for counting hashable objects. It is a collection where elements are stored as dictionary keys and their counts are stored as dictionary values. > Counter는 해시 가능한 객체들 카운팅하는 딕셔너리의 하위클래스 입니다. 구조는 키값으로는 카운팅하고자 하는 값이, 밸류값에는 키값이 몇 개가 있는지 개수 값이 들어갑니다. 딕셔너리의 하위클래스에 해당하니, 딕셔너리의 구조를 가지고 있다. from collections import Counter c = Counter("사과",.. 2021. 9. 27.
[python/Memoization] 파이썬으로 여러 방법으로 피보나치 수열 풀어보기(Memoization in python) 코드워즈로 공부를 하고 있는데, 메모이제이션을 통해 피보나치 수열을 계산하는 함수의 효율을 개선하는 문제를 풀게되었다. 여러분도 풀어보세요! kata 분석하기 def fibonacci(n): if n in [0, 1]: return n return fibonacci(n - 1) + fibonacci(n - 2) 문제에서는 n이 0에 도달할 때까지 재귀함수 형태로 반복해서 fibonacci 함수를 호출하고 있다. 정상적으로 작동하는 함수이지만, 이 형태 그대로 함수를 돌리게 되면 fibonacci(0)과 fibonacci(1)이 엄청나게 많이 메모리에 쌓이게 된다. 같은 값임에도 불구하고 다르게 처리해야하는 비효율성이 생긴다. 때문에 메모리에 부담도 많이가고, 시간도 엄청 오래걸리게 된다. 그렇다면 이 문.. 2021. 9. 26.
s3 lambda object 코드 테스트 작업 및 공부 [진행중] S3 lambda object란? 아마존 aws 에서 제공하는 lambda 함수를 s3에 연결해서 사용하는 기능이다. 이를 이용하면 데이터를 get하거나 put할 때에, 고정된 형식으로 가공할 수 있다. s3 lambda object 생성시 필요한 것 데이터가 담겨 있는 버킷 람다 함수 생성하기 s3 버킷에 엑세스 포인트 만들고 연결하기 여기서 기본적으로 람다 함수가 생성되어 있는 것을 가정하고 작업해보자! s3 버킷에 엑세스 포인트 만들고 연결하기 s3에 접속하면 아래와 같은 메뉴 리스트가 있다. 여기서 "엑서스 지점"에서 엑세스 포인트를 먼저 생성해주어야 한다! 사용하고자 하는 버킷을 연결하고, 옵션을 나에게 맞게 설정한 뒤에 생성해준다! 이후 람다 함수를 만들면, 이번에는 객체 Lambda 액세스 .. 2021. 8. 21.
pandas 번역: Computational tools, pandas의 연산툴 (pandas User guide 번역/pandas 기초 입문/Pandas 간단 요약) 저는 금융데이터를 주로 다루는데요, 금융 데이터는 대부분이 정량데이터로 이루어져 있다보니 이런 계산 툴들이 잘 구현되어 있습니다. 복잡한 계산도 코드 한 두줄로 간단히! 중간에 잘 번역이 안되는건 그냥 번역기 돌리고 영어 원문도 같이 첨부했습니다. 다른 유저가이드 번역 보러가기 Statistical functions Percent change Series와 DataFrame는 기간동안의 변화%를 구하기 위해 pct_change()를 제공합니다.(계산전. nan 값을 채우기 위해fill_method 를 사용합니다. In [1]: ser = pd.Series(np.random.randn(8)) In [2]: ser.pct_change() Out[2]: 0 NaN 1 -1.602976 2 4.334938 3 .. 2021. 1. 6.