Python

    [pandas]. 사용자의 합계를 구해서 칼럼 추가하기 (feat. groupBy)

    예시 데이터 import pandas as pd df = pd.DataFrame({"name" : ["Lucas " , "Declan ", "Declan " , "Lucas " , 'Elliot' , 'Owen','Oskar','Oskar'] , "exercise_hour" : [1,2,1,3,4,1,1,2]} ) 이름 별로 합산 운동시간을 옆에 표시하고자함. exercise_sum = df.groupby(['name']).sum().sort_values('exercise_hour',ascending=False).reset_index() GroupBy 를 통해서 같은 이름별 합산을 구함. *reset_index()는 groupby를 하면 인덱스가 묶여서 풀어주기 위함. 이름과 시간을 Key , Value..

    2. 연결 리스트 (Linked List)

    1. 노드 정의 class Node: def __init__(self, item): self.data = item self.next = None 노드는 자신이 가지고 있는 값을 나타내는 data 와 다음 노드를 가리키는 next 를 가지고 있다. 2. 연결 리스트 생성자 class LinkedList: def __init__(self): self.nodeCount = 0 self.head = None self.tail = None 3. 연결리스트 인덱스에 해당하는 노드를 가져오는 메서드 - getAt def getAt(self, pos): # 입력한 인덱스가 범위를 벗어나는 경우 if pos self.nodeCount: return IndexError i = 1 #처음부터 curr..

    1. 이진 탐색

    문제 설명 : 리스트 L 과, 그 안에서 찾으려 하는 원소 x 가 인자로 주어질 때, x 와 같은 값을 가지는 원소의 인덱스를 리턴하는 함수 solution() 을 완성하세요. 만약 리스트 L 안에 x 와 같은 값을 가지는 원소가 존재하지 않는 경우에는 -1 을 리턴합니다. 리스트 L 은 자연수 원소들로 이루어져 있으며, 크기 순으로 정렬되어 있다고 가정합니다. 또한, 동일한 원소는 두 번 이상 나타나지 않습니다. 예를 들어, L = [2, 3, 5, 6, 9, 11, 15] x = 6 의 인자들이 주어지면, L[3] == 6 이므로 3 을 리턴해야 합니다. 다른 예로, L = [2, 5, 7, 9, 11] x = 4 로 주어지면, 리스트 L 내에 4 의 원소가 존재하지 않으므로 -1 을 리턴해야 합니다..

    [Flask].이미지 데이터를 post 형식으로 flask 서버로 보내는 방법( 이상한 트릭)

    먼저 문제에 대해서 정의해보자. 문제는 새로고침을 하면서 발생한다. 이런 식으로 사용자가 촬영한 이미지와 저장되어있는 이미지를 받아서 처리해주는 서비스를 만드는 데업로드한 이미지는 base64 의 형태로 저장되고 이것을 post 방식으로 전달해서 python 으로 처리해줘야한다. 2020/11/25 - [Data Science/Computer Vision] - [이미지 전처리]. image to base64 , base64 to image 변환하는 방법[이미지 전처리]. image to base64 , base64 to image 변환하는 방법image to base64 , base64 to image 변환하는 방법 본래 html 에 있는 이미지들의 src를 보면 대부분 로컬주소가 들어있거나 url 주소..

    [Python] 정규 표현식 예제 실습 ( compile , search )

    1) .기호 .은 한 개의 임의의 문자를 나타냅니다. 예를 들어서 정규 표현식이 a.c라고 합시다. a와 c 사이에는 어떤 1개의 문자라도 올 수 있습니다. 즉, akc, azc, avc, a5c, a!c와 같은 형태는 모두 a.c의 정규 표현식과 매치됩니다. import re r=re.compile("a.c") r.search("kkk") # 아무런 결과도 출력되지 않는다. r.search("abc") (.)은 어떤 문자로도 인식될 수 있기 때문에 abc라는 문자열은 a.c라는 정규 표현식 패턴으로 매치되는 것을 볼 수 있습니다. 2) ?기호 ?는 ? 앞의 문자가 존재할 수도 있고, 존재하지 않을 수도 있는 경우를 나타냅니다. 예를 들어서 정규 표현식이 ab?c라고 합시다. 이 경우 이 정규 표현식에서..

    [Python] . 정규표현식 총정리!! ( re , Regular Expression )

    정규 표현식 모듈 파이썬에서는 정규 표현식 모듈 re를 지원하므로, 이를 이용하면 특정 규칙이 있는 텍스트 데이터를 빠르게 정제할 수 있다. import re 정규 표현식 문법 특수 문자 설명 . 한 개의 임의의 문자를 나타냅니다. (줄바꿈 문자인 \n는 제외) ? 앞의 문자가 존재할 수도 있고, 존재하지 않을 수도 있습니다. (문자가 0개 또는 1개) * 앞의 문자가 무한개로 존재할 수도 있고, 존재하지 않을 수도 있습니다. (문자가 0개 이상) + 앞의 문자가 최소 한 개 이상 존재합니다. (문자가 1개 이상) ^ 뒤의 문자로 문자열이 시작됩니다. $ 앞의 문자로 문자열이 끝납니다. {숫자} 숫자만큼 반복합니다. {숫자1, 숫자2} 숫자1 이상 숫자2 이하만큼 반복합니다. ?, *, +를 이것으로 대..

    [Pandas] . DataFrame 생성, 삭제 ,추출

    데이터 프레임은 각각의 컬럼별로 각각의 다른 타입을 가지게 된다. Series를 모아서 만든 Data Table ( 2차원 ) 가장 원초적으로 데이터프레임을 생성하는 방법 (거의 대부분은 csv파일을 불러와서 사용함) Dict 의 형태로 넣어주면 Key 값은 columns , value 값이 Df 의 value 가 된다. import pandas as pd import numpy as np raw_data = {'first_name':['jason','molly','tina','jake','amy'], 'last_name : ['Miller','jacabson','all','milner','cooze'], 'age' : [42,52,36,24,73], 'city':['San Francisco','Balt..

    [Python] List Comprehension 으로 matrix 다루기

    Python은 특유의 간결성이 최대의 장점 Vector와 같은 수학 연산을 복잡하게 표현한다면 사용이 어려움 최대한 파이썬만의 특징을 살려서 간단하게 연산을 표시 Comprehension 과 zip 같은 pythonic technique을 적극 활용 Vector의 계산 Sum 백터의 합 u = [ 2, 2] v = [ 2, 3] z = [ 3, 5] result = [ sum(t) for in zip(u,v,z)] print(result) - > [ 7 , 10 ] Scalar - vector product 스칼라와 백터의 계산 u = [1,2,3] v = [4,4,4] alpha = 2 result = [alpha*sum(t) for t in zip(u,v)] print(result) -> [ 10 ,..