전체 글
-
[Python] Pandas 선택하기Python/pandas 2022. 10. 13. 14:03
목차 선택 과 설정을 위한 표준 파이썬 / NumPy 식은 직관적이고 대화형 작업에 유용하지만, 프로덕션 코드의 경우 최적화된 Pandas 데이터 엑세스 방법인 DataFrame.at(), DataFrame.iat(), DataFrame.loc() 그리고 DataFrame.iloc()를 추천한다. Getting 열을 하나만 선택하면 df.A와 동일한 Series가 생성된다. df["A"] []를 통하면, 다음과 같이 분할한다. df[0:3] df["20221002" : "20221005"] Selection by label DataFrame.loc() 또는 DataFrame.at()을 사용한 레이블 별 선택을 참조 레이블을 사용하여 횡단면을 가져오는 경우 df.loc[dates[0]] 레이블별 다중 축 ..
-
[Python] Pandas 데이터보기Python/pandas 2022. 10. 11. 16:38
목차 head(), tail() DataFrame.head() 및 DataFrame.tail()을 사용하여 프레임의 위쪽 및 아래쪽 행을 각각 볼 수 있다. df.head() df.tail() index, columns DataFrame.index 또는 표시 DataFrame.columns df.index df.columns numpy DataFrame.to_numpy() 기본 데이터의 Numpy 표현을 제공한다. 데이터 유형이 다른 열이 있는 경우 이는 cost가 많이 드는 작업이 될 수 도 있다. DataFrame은 pandas와 NumPy 간의 근본적인 차이점으로 귀결 된다. NumPy 배열에는 전체 배열에 대해 하나의 dtype이 있는 반면, pandas DataFrames에는 열당 하나의 dty..
-
[Python] Pandas 객체 생성Python/pandas 2022. 10. 11. 16:16
Series pandas가 기본 정수 인덱스를 생성하도록 하여 값 목록을 전달하여 생성 import numpy as np import pandas as pd s = pd.Series([1, 3, 5, np.nan, 6, 8]) label이 지정된 열 DataFrame 을 사용하여 날짜/시간 인덱스가 있는 Numpy 배열을 전달하여 생성 date_range() dates = pd.date_range("20121001", periods=6) print(dates) df = pd.DataFrame(np.random.randn(6, 4), index=dates, columns=list("ABCD")) print(df) DataFrame 시리즈와 같은 구조로 변환할 수 있는 객체 사전을 전달하여 생성 df2 = ..
-
Python String strip(), rstrip(), lstrip()Python/etc 2022. 10. 11. 14:59
목차 Strip() 이 strip() 메소드는 문자열의 시작과 끝에서 공백을 제거합니다. txt = " orange " x = txt.strip() print("This", x, "is delicious") Result rstrip() 이 rstrip() 메소드는 문자열 끝에 있는 공백을 제거합니다. txt = " orange " x = txt.rstrip() print("This", x, "is delicious") Result lstrip() 이 lstrip() 메소드는 문자열 왼쪽에 있는 공백을 제거합니다. txt = " orange " x = txt.lstrip() print("This", x, "is delicious") Result
-
Python parquet 타입으로 읽기, 쓰기Python/etc 2022. 10. 6. 13:37
목차 csv 데이터는 읽는 것 보다 쓰는 데 더욱 많은 시간이 걸린다. arrow에서는 csv 포맷 쓰기를 지원하지는 않기 때문에 parquet 타입 파일을 활용해야 한다. csv를 parquet 타입으로 저장 import pyarrow.parquet as pq from pyarrow import csv pq.write_table(csv.read_csv('data.csv'), 'data.parquet') 데이터 프레임을 parquet 파일로 저장 데이터 프레임을 먼저 Table로 변환 후 parquet타입으로 저장한다. import pandas as pd df.to_parquet('data.parquet', engine = 'pyarrow', index = False) import pyarrow as p..
-
Python tqdm이란?Python/etc 2022. 10. 6. 11:00
목차 tqdm이란? tqdm아랍어(taqadum)의 "진행"을 의미하고 스페인어(te quiero demasiado)의 "I love you so much"의 약어이다. 루프에 스마트 진행률 측정기가 표시되도록 즉시 반복 가능 항목으로 래핑하면 tqdm(iterable)이 완료된다. from tqdm import tqdm for i in tqdm(range(10000)): ... 파이프가 있는 모듈로 실행할 수도 있다. 오버헤드는 낮으며, 반복당 약 60ns(의 경우 80ns tqdm_gui)이며 성능 회귀에 대해 단위 테스트를 거쳤습니다. 이에 비해 잘 정립된 ProgressBar는 800ns/iter 오버헤드를 가지고 있다. 낮은 오버헤드 외에도 tqdm 스마트 알고리즘을 사용하여 남은 시간을 예측하..
-
[Git Hub] 깃허브, DS_Store 개념 및 삭제 방법Git/Github 2022. 10. 6. 10:18
목차 DS_Store란? DS_Store 파일이란 Desktop Services Store의 약자, Apple사에서 정의한 파일 포맷이다. Apple사의 Mac OS X System이 Finder로 폴더에 접근할 때 자동으로 생기는 파일, 해당 폴더에 대한 메타데이터를 저장하는 파일이다.(Window의 Thumb.db 파일과 비슷) 분석해보면 해당 디렉토리 크기, 아이콘의 위치, 폴더의 배경에 대한 정보들을 얻을 수 있다. DS_Store 파일은 프로젝트와 관련없는 파일이며, git status를 사용했을 때 발견되는 파일이니, github로 넘기지말고 삭제해도 된다. Mac OS를 사용하다보면, .DS_Store가 자동으로 생성되어 계속 github repository에 업로드 되는데, 이것은 수시로 ..
-
파이썬 JSONPython/json 2022. 9. 13. 17:00
목차 파이썬의 JSON json python에는 Json 데이터 작업에 사용할 수 있는 내장 패키지가 있습니다. ex) json 모듈을 가져옵니다. import json JSON 구문 분석 - JSON에서 Python으로 변환 json.loads() JSON 문자열이 있는 경우 메서드를 사용하여 구문 분석할 수 있습니다. 결과는 python 사전이 됩니다. 파이썬에서 JSON으로 변환 json.dumps() Python 객체가 있는 겨웅 메서드를 사용하여 JSON 문자열로 변환할 수 있습니다. 다음 유형의 Python 객체를 JSON 문자열로 변환할 수 있습니다. dict list tuple string int float True False None Python에서 JSON으로 변환할 때 Python 객..