Programming Language

Programming Language/Python

[Python] 반복문 속도 비교 (for vs numba)

코드 import time from numba import jit @jit(nopython=True) def function_numba(): numba_data_list = [] for i in range(0, 100000000): numba_data_list.append(i) for_data_list = [] for_time_list = [] numba_time_list = [] for i in range(10): start_time = time.time() for j in range(0, 100000000): for_data_list.append(j) end_time = time.time() for_time_list.append(round(end_time - start_time, 2)) start_t..

Programming Language/Python

[Python] for문과 while문의 속도 비교해보기

코드 작성 import time for_data_list = [] while_data_list = [] for_time_list = [] while_time_list = [] for i in range(10): start_time = time.time() for j in range(0, 100000000): for_data_list.append(j) end_time = time.time() for_time_list.append(round(end_time - start_time, 2)) k = 0 start_time = time.time() while k < 100000000: while_data_list.append(k) k += 1 end_time = time.time() while_time_list...

Programming Language/Python

[Python] 판다스 두 컬럼의 값을 비교하여 True/False 컬럼 만들기

다음과 같은 데이터프레임이 있다. import pandas as pd first_data = [i for i in range(10, 20)] second_data = 15 df = pd.DataFrame({'first': first_data, 'second': second_data}) print(df) first의 값이 second 보다 크면 True 를 출력하고 아니면 False 를 출력하는 result 행을 만들어보자 import pandas as pd first_data = [i for i in range(10, 20)] second_data = 15 df = pd.DataFrame({'first': first_data, 'second': second_data}) df['result'] = df['..

Programming Language/Python

[Python] 판다스 두 컬럼의 값 중 큰 값을 새로운 컬럼으로 만들기

다음과 같은 데이터프레임이 있다. import pandas as pd first_data = [i for i in range(10, 20)] second_data = 15 df = pd.DataFrame({'first': first_data, 'second': second_data}) print(df) 두 컬럼의 값 중 큰 값을 result 컬럼에 넣어보자 import pandas as pd first_data = [i for i in range(10, 20)] second_data = 15 df = pd.DataFrame({'first': first_data, 'second': second_data}) df['result'] = df.max(axis = 1) print(df) 이번에는 두 값 중 작은 ..

Programming Language/Python

[Python] 특정 기간의 날짜를 일별로 추출하는 방법

코드 from datetime import datetime, timedelta import pandas as pd date_list = [] start_date = datetime(2022, 1, 1) end_date = datetime(2022, 3, 15) while start_date < end_date: date_list.append(start_date) start_date += timedelta(days = 1) df = pd.DataFrame(date_list, columns = ['date']) print(df) 시간별로 추출해보자 from datetime import datetime, timedelta import pandas as pd date_list = [] start_date = d..

Programming Language/Python

[Python] 판다스 인덱스 재정렬하는 방법 reset_index

다음과 같은 데이터프레임이 있다. import pandas as pd df = pd.DataFrame([[2022, 'Park', '3'], [2023, 'Kim', '4'], [2024, 'Jeong', 'S']], columns = ['ID', 'name', 'class'], index = [4, '555', 'bbbb']) print(df) reset_index() 함수를 사용해보자 import pandas as pd df = pd.DataFrame([[2022, 'Park', '3'], [2023, 'Kim', '4'], [2024, 'Jeong', 'S']], columns = ['ID', 'name', 'class'], index = [4, '555', 'bbbb']) df = df.reset..

Programming Language/Python

[Python] 판다스 인덱스 정의하는 방법

기본 판다스 데이터 프레임 만들기 import pandas as pd df = pd.DataFrame([[2022, 'Park', '3'], [2023, 'Kim', '4'], [2024, 'Jeong', 'S']], columns = ['ID', 'name', 'class']) print(df) 인덱스 4, 5, 6 으로 정의하기 import pandas as pd df = pd.DataFrame([[2022, 'Park', '3'], [2023, 'Kim', '4'], [2024, 'Jeong', 'S']], columns = ['ID', 'name', 'class'], index = [4, 5, 6]) print(df) 인덱스를 숫자와 문자를 섞어도 가능한지 테스트해보기 import pandas a..

Programming Language/Python

[Python] 판다스 데이터 프레임을 만드는 두가지 방법

첫번째 방법 import pandas as pd df = pd.DataFrame({'ID': [2022, 2023, 2024], 'name': ['Park', 'Kim', 'Lee'], 'class': ['3', '4', '5']}) print(df) 두번째 방법 import pandas as pd df = pd.DataFrame([[2022, 'Park', '3'], [2023, 'Kim', '4'], [2024, 'Jeong', 'S']], columns = ['ID', 'name', 'class']) print(df)

Programming Language/Python

[Python] list, set, dict, tuple 의 시간복잡도

List (deque로 사용할 것) - 데이터 수정이 필요한 경우 사용 - 데이터 순서가 필요한 경우 사용 - 삽입, 제거, 탐색, 포함여부 확인 O(n) Tuple - 데이터 읽기만 필요한 경우 사용 Set - 중복된 값을 허용하지 않는 경우 사용 - 데이터 순서가 필요하지 않는 경우 사용 - 삽입, 제거, 탐색, 포함여부 확인 O(1) Dict - 삽입, 제거, 탐색, 포함여부 확인 O(1)

Programming Language/Python

[Python] tabulate 사용시 한글때문에 깨지는 현상 해결하는 방법

라이브러리 설치 pip install tabulate[widechars] 코드에 아래 코드 추가 tabulate.WIDE_CHARS_MODE = False 결과 너무 예쁘다. 전체 코드 import pandas as pd from tabulate import tabulate import os import warnings tabulate.WIDE_CHARS_MODE = False warnings.simplefilter("ignore") stock_file_list = os.listdir('./stock-data/2022-05') stock_file_list.sort() for stock_file in stock_file_list: df = pd.read_excel(f'./stock-data/2022-05/..

박경태
'Programming Language' 카테고리의 글 목록 (13 Page)