Python 3

[Python] chatGPT 활용기(데이터프레임 replace)

데이터를 다루다 보면 칼럼 내 문자열 처리를 해야 하는 경우가 있습니다. 예를 들어 데이터베이스에 숫자 데이터를 insert할때 콤마(,)때문에 데이터가 문자열로 인식되어 오류를 뱉는 상황 등입니다. 이 경우 콤마를 빈값으로 수정해 주어야 숫자로 옳게 인식합니다. str과 replace 함수를 통해 아래와 같이 컬럼 하나씩 바꿀 수 있는데요, 여러 칼럼일 경우 칼럼마다 코드를 작성해야 한다는 번거로움이 있었습니다. df['frst_acqs_amount'] = df['frst_acqs_amount'].str.replace(',','') 그래서 7열부터 나머지열의 모든 컬럼을 한 번에 싶어 아래와 같이 코드를 작성했는데요, 데이터프레임에서는 작동되는 replace함수는 제가 의도한 replace와 달랐습니다..

[Python] OpenAPI로 주식 영업일, 휴장일 구하기

이번 포스팅은 주식장의 영업일과 비영업일을 구분하는 방법에 대한 것입니다. 트레이딩캘린더를 데이터베이스로 만들어 놓으면 주식이나 etf의 과거 기간성과를 쉽게 뽑아낼 수 있다는 장점이 있습니다. 휴일정보는 공공데이터포털(https://www.data.go.kr/data/15012690/openapi.do)에서 openapi를 이용하여 뽑아낼 거구요 나머지 일자는 pandas와 datetime을 통해 생성해보겠습니다. 개발에 앞서 미리 위 사이트에서 apikey를 신청해놓으시기 바랍니다. 휴일정보를 데이터프레임으로 반환하기 import requests import datetime as dt from bs4 import BeautifulSoup import pandas as pd from datetime i..

[Python] 데이터프레임 차집합 구하기

데이터프레임을 다루다보면 두 데이터프레임간의 차집합을 구해야 할 때가 있습니다. 예를 들어 데이터베이스 테이블에 존재하는 데이터와 웹에서 크롤링한 데이터간의 차집합을 구해서 비어있는 값을 insert하는 경우가 있겠습니다. 중복키 에러를 피하기 위해서 입니다. 리스트에서는 set이라는 함수가 있어서 차집합을 쉽게 구할 수 있는데, 데이터프레임에서 구현하기엔 쉽지 않더라구요. 데이터프레임의 merge기능을 이용하여 두 데이터 프레임 간 key값을 조인한 뒤, 한쪽에 있는 데이터만 가져와 주면 쉽게 차집합을 구할 수 있습니다. 예제와 함께 진행해보겠습니다. import numpy as np import pandas as pd import matplotlib.pyplot as plt columns =['dat..