일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- String Method
- 알고리즘
- javascript
- 선그래프
- pandas
- 알고리즘 스터디
- Join
- 프로그래머스
- 자료구조
- dataframe
- aws jupyter notebook
- NumPy
- type hint
- 코딩테스트
- queue
- openCV
- 가상환경
- 정보처리기사 c언어
- MySQL
- 알고리즘스터디
- python
- Matplotlib
- 데이터시각화
- programmers
- Stack
- 노마드코딩
- 파이썬
- 백준
- Selenium
- Algorithm
- Today
- Total
목록분류 전체보기 (206)
조금씩 꾸준히 완성을 향해
데이터 불러와서 처리하기 ▶ 필요한 라이브러리 가져오기 # import library import matplotlib.pyplot as plt import pandas as pd ▶ 엑셀파일 열어서 저장 df_move = pd.read_excel('/content/drive/MyDrive/ Encore Prac/시도별 전출입 인구수.xlsx') df_move ▶ 결측치 처리 df_move = df_move.fillna(method='ffill') #결측치(NaN)을 앞 데이터로 채움 df_move.head(4) #상위 4행만 확인 ▶ 데이터 추출해서 정리 (서울에서 다른 지역으로 이동한 인구 데이터만 추출) # 전출지는 서울이고, 전입지는 서울이 아닌 데이터 추출 df_seoul..
Index를 활용하는 다양한 함수들 (설정, 재설정, 초기화) ▶ set_index() : 특정 열을 행 인덱스로 설정 #데이터 확인 df # '이름' 열을 index로 지정 ndf = df.set_index('이름') ndf # '수학'과 '체육'열을 인덱스로 지정 ndf3 = df.set_index(['수학','체육']) ndf3 ▶ reindex() : 데이터 프레임의 행 인덱스를 새로운 배열로 재지정 (새로운 객체 반환) # 데이터 확인 dic # index 지정해서 데이터프레임 생성 df = pd.DataFrame(dic, index=['r0', 'r1', 'r2']) df # index를 새로운 배열로 변경 # 요소들이 존재하지 않을 경우 자동적으로 NaN으로 처리 ndf = df.reinde..
행/열 삭제 drop() 축 옵션으로 axis=0을 입력하면 행 삭제 (default 설정이라 생략가능) 축옵션 axis=1을 입력하면 열을 삭제 동시에 여러 개의 행 또는 열을 삭제하려면, 리스트 형태로 입력 원본을 변경하지 않고 새로운 객체를 반환하기 때문에 원본 객체를 변경하려면 inplace=True 옵션 사용 행 삭제 # 인덱스가 '우현'인 행 삭제 df2 = df.copy() # df2에 원본 데이터 복사 df2.drop('우현', inplace=True) # df2 직접변경 df2 # 인덱스가 '우현', '인아'인 행 삭제 df3 = df.drop(['우현', '인아'], axis = 0) #원본에서 수정된 데이터를 바로 df3으로 받기 df3 열 삭제 # '수학' 열 삭제 df4 = df...
python에서 typing 할 때 사용 가능한 여러가지 방법들을 소개한다. (타입 힌트의 개념이나 타입 체크에 관한 기본 내용은 이전 포스팅을 참고 바람) Callable Type 함수 자체를 인자로 넘겨줄 때 사용한다. from typing import Callable # 타이핑 모듈의 callable 객체 import def add_sub(a: int, b: int) -> list: return [a + b, a - b] # 함수를 인자로 넘겨줄 때 callable 사용 def add_sub_new(func: Callable[[int, int], list]) ->list: return func(2, 3) print(add_sub_new(add_sub)) # [5, -1] ▶ Callable[[a, ..
mypy 런타임에서 타입을 체크하는 도구이다. Type hint의 타입을 기반으로 해 오류를 잡아낸다. ▶ mypy 설치 $ pip install mypy ▶ mypy 실행 $ mypy filename.py ▶ mypy실행과 파일 출력 동시에 하기 $ mypy filename.py && python filename.py ▶ 결과 아래와 같은 함수를 예시로 들어 보자. type hint는 정수로 지정했는데 다른 타입을 넣어 함수를 호출하는 경우이다. def cal_add(x: int, y: int) -> int: return x + y print(cal_add(1, 3)) print(cal_add('hello', 'world')) print(cal_add([1,2,3], [4,5,6])) mypy 를 실행..
Type Hint Python은 동적 언어이기 때문에 변수들의 타입을 마음대로 변경가능하다. 이는 파이썬의 장점으로 꼽히기도 하지만, 프로그램의 규모가 커지고 코드가 많아지게 되면 이 유연함이 도리어 단점이 되기도 한다. 특히 여러 사람이 같은 코드를 가지고 작업하거나 수정할 때에는 더 큰 혼선이 야기된다. 이를 방지하기 위해서는 공유하는 데이터의 타입을 정확히 지정해 줄 필요가 있다. 이 때 사용하는 게 바로 type hint이다. ※ 주의! 타입 힌트는 말그대로 힌트를 붙여놓은 것일 뿐, 타입 에러를 체크해 주는 기능은 아니다! 타입 힌트는 기본적으로 아래와 같이 변수 옆에 콜론으로 표시한다. int_var: int = 88 #정수형 str_var: str = "hello world" #문자형 flo..
문제 알파벳 대소문자로 된 단어가 주어지면, 이 단어에서 가장 많이 사용된 알파벳이 무엇인지 알아내는 프로그램을 작성하시오. 단, 대문자와 소문자를 구분하지 않는다. 입력 첫째 줄에 알파벳 대소문자로 이루어진 단어가 주어진다. 주어지는 단어의 길이는 1,000,000을 넘지 않는다. 출력 첫째 줄에 이 단어에서 가장 많이 사용된 알파벳을 대문자로 출력한다. 단, 가장 많이 사용된 알파벳이 여러 개 존재하는 경우에는 ?를 출력한다. 예제 입력 1 Mississipi 예제 출력 1 ? 예제 입력 2 zZa 예제 출력 2 Z 내가 짠 코드 s = input().upper() #문자열 받기 new_s = set(s) #문자열에서 중복을 제거한 알파벳 모음 a = {} for x in new_s: #key는 알파..
문제 땅 위에 달팽이가 있다. 이 달팽이는 높이가 V미터인 나무 막대를 올라갈 것이다. 달팽이는 낮에 A미터 올라갈 수 있다. 하지만, 밤에 잠을 자는 동안 B미터 미끄러진다. 또, 정상에 올라간 후에는 미끄러지지 않는다. 달팽이가 나무 막대를 모두 올라가려면, 며칠이 걸리는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 세 정수 A, B, V가 공백으로 구분되어서 주어진다. (1 ≤ B < A ≤ V ≤ 1,000,000,000) 출력 첫째 줄에 달팽이가 나무 막대를 모두 올라가는데 며칠이 걸리는지 출력한다. 예제 입력 1 복사 2 1 5 예제 출력 1 복사 4 내가 짠 코드 import math a, b, v = map(int, input().split()) day = (v-a)/(a-b)+1 pr..
Time Complexity 수행시간이란 특정 입력에 대해 수행되는 알고리즘의 기본연산(primitive operation)의 횟수를 말한다. (가상컴퓨터에서 가상언어로 작성된 가상코드를 실행한다고 가정 알고리즘의 수행시간 = 최악의 경우의 입력(worst-case input)에 대한 기본연산의 수행 횟수 입력의 크기 n에 대한 함수 T(n)으로 표기 -> 어떠한 입력에 대해서도 T(n) 시간 이내에 종료됨을 보장 ▶ example #input : n개의 정수가 담긴 배열 A #output : A의 수 중에서 최대값 def func(A, n): max = 0 # 1번(할당) for i in A: if i > max: # n-1번(크기를 확인하는 최악의 경우) max = i # n-1번(할당을 하는 최악의..