본문 바로가기

Python30

Pandas - Null Data 처리방법 ( ffill, bfill, mean, interpolate 차이 그래프 비교 ) 머신러닝, 빅데이터 사용에 있어 데이터 전처리 과정은 필수 과정이다. 누락된 데이터는 없는지 데이터는 어떤 형태로 존재하고 있는지 면밀히 확인해야 `처리` 과정에서 문제를 사전에 차단할 수 있다. Null 처리는 전처리 과정에서 무엇보다 중요하다. Pandas 에서 null 데이터를 어떻게 처리하는지 알아보도록 한다. Pandas에서 처리하는 Null 데이터 - numpy.NaN, numpy.NaT, None Pandas에서는 numpy.inf ( infinity ), '' (empty string)은 Null이 아닌것으로 취급한다. 개발 환경 - Python 3.9 - Pandas 1.2.0 테스트 DataFrame 준비 df = pd.DataFrame(dict(age=[np.NaN, np.NaN, 6.. 2021. 3. 5.
Pandas - 컬럼의 고유 값 및 고유값 count 찾기 - 이런저런 방법들! Pandas 내장 함수를 사용하여 컬럼의 고유 값을 찾고 해당 고유 값의 전체 수를 출력해 본다. 실행환경 - Python 3.9 - Pandas 1.2.0 데이터 준비 import pandas as pd data = pd.read_csv('https://bit.ly/fish_csv') 데이터는 7개의 물고기 종류에 대한 데이터를 갖고 있다. data # OUTPUT SpeciesWeightLengthDiagonalHeightWidth 0Bream242.025.430.011.52004.0200 1Bream290.026.331.212.48004.3056 2Bream340.026.531.112.37784.6961 3Bream363.029.033.512.73004.4555 4Bream430.029.034.01.. 2021. 3. 3.
1. Django with bootstrap, 웹페이지 기본 프레임 및 메뉴 구성( top, left, main ) Django에서 웹페이지의 기본 프레임 구조를 잡는 법을 살펴본다. Django template 기능 중 하나인 block 요소를 사용하여 프레임 구조를 잡고 마지막에 부트스트랩을 사용해서 메뉴바를 조금 더 세련되게 변경해보자. 다음 내용을 알아본다. - 장고 프로젝트 및 App 생성 - 장고 block을 사용한 메뉴 프레임 구성 - 부트스트랩을 사용하여 네비게이션 바 구성 - 부트스트랩을 사용하기 위한 장고 static 설정 개발환경 - Python 3.9 ( 3.6 이상 요구 됨 ) - Django 3.1.5 ( 3.1 이상 요구 됨 ) - Bootstrap 5.x 프로젝트 및 App 생성 C:\django_exam> django-admin startproject sitemenu C:\django_e.. 2021. 2. 26.
Python - 멀티스레드 사용, 웹 스크래핑 비동기 처리 ( pandas_reader 주식 데이터 스크랩 ) 들어가며.. 프로그래밍에서 병렬처리를 위해 멀티스레드를 다루는 일은 쉬운일은 아니다. 스레드의 동작 원리, 다중 스레드에서 공유되는 Shared value 처리, 그 과정에서 발생하는 Race condition, Dead Lock 문제 등을 고려하여 처리해야 하기 때문이다. Shared value 처리를 하지 않고 병렬처리가 요구 되는 비교적 단순한 프로세스라면 멀티스레딩으로 처리 하는 것이 더 효율적일 수 있다. 주식의 일 데이터 업데이트를 하기 위해 멀티스레딩 환경을 구축했다. Pandas_reader 라이브러리를 사용해서 국내 모든 상장기업을 스크래핑 한다. 동기적으로 처리하면 종목코드 수에 따라 선형적으로 비례하여 느려질 수 밖에 없다. 이를 멀티스레드 처리 하여 시간을 단축한다. 시작하기 전에 .. 2021. 2. 24.