전체 글(18)
-
Data Lake, Data Warehouse, Data Mart 의 구분
데이터 저장소를 일컫는 다양한 용어들이 존재하는데, 이번 글에서는 Data Lake, Data Warehouse, Data Mart 에 대한 개념을 정리해보고자 한다. 1. Data Lake (데이터 레이크) 1.1. 개념 조직 내에서 생성 및 수집되는 모든 데이터를 원본 형태 그대로 저장하는 곳 구조화된 정형 데이터 뿐만 아니라 로그, 이메일, 이미지, 음성, 영상 등과 같은 비정형 데이터를 포함 1.2. 등장 배경 데이터의 활용 계획이 정해지지 않았지만 향후 활용 가능성을 위해 데이터를 보관하려는 목적으로 활용됨 비슷한 맥락에서 데이터 과학자들은 정제되지 않은 원본 데이터 자체를 이해하고, 분석 목적에 맞게 가공하고 싶은 니즈가 있음 (데이터의 정제 과정에서 정보의 손실이 발생함) 2. Data Wa..
2022.06.22 -
[AWS] SageMaker에서 boto3를 이용해 S3 csv 파일 읽기/쓰기
boto3는 python용 AWS SDK(Software Development Kit)로 python에서 Amazon S3, EC2와 같은 서비스를 활용할 수 있도록 지원하는 패키지이다. 여기서는 AWS SageMaker 환경에서 python 코드를 작성하는 경우 boto3를 활용해 S3로부터 데이터를 업로드/다운로드 없이 바로 읽고 쓰는 방법에 대해 소개하고자 한다. 1. AWS credential 설정 먼저 S3에 접근하기 위해 AWS Access Key 정보가 필요하다. (access key, secret key) 해당 정보는 직접 입력하거나 설정 파일에서 ConfigParser를 이용해 읽어 올 수 있다. (1) config.ini 파일 생성 [aws_credentials] access_key =..
2022.06.16 -
[python] ConfigParser 이용한 외부인자 관리
분석환경(DB, Cloud server 등)에 접속하기 위해 코드 상에서 접속정보를 직접 입력하는 경우가 있다. 반복해서 사용되는 접속정보는 파일(.ini, .conf, .cfg 등)로 따로 저장하여 관리하는 것이 편리하다. 또한, github 연동을 통해 코드를 관리 하는 경우 해당 파일의 확장자를 .gitignore 파일에 추가하여 제외시키는 것이 보안상 안전하다. 저장된 파일의 접속정보를 가지고 올때, 파이썬의 configparser가 필요하다! 1. 설치 !pip install configparser 2. Config 파일 생성 원하는 경로에 config.ini (예시 파일)을 생성해보자. 생성 방법은 직접 작성하는 것과 코드를 이용한 작성 방법이 있다. # config.ini [db_config..
2022.06.07 -
[Python] strftime & strptime 비교 정리
날짜 및 시간은 표현 방법이 매우 다양하고, 입력 형식에 따라 string, numeric, datetime 과 같은 타입을 가질 수 있다. 이와 같은 날짜형 데이터를 원하는 형태로 변경하기 위해서 꼭 알아야할 메서드로 strftime 과 strptime 이 있다. 두 메서드의 차이를 이해하기 위해 이름의 의미와 역할에 대해 정리해보았다. 1. 요약 이름 (f/p) 역할 strftime f (format) datetime → string strptime p (parse) string → datetime 2. strftime strftime 은 날짜형 객체를 주어진 포맷의 문자열로 변환한다. (예시) from datetime import datetime dt = datetime(2022,5,1,12,30,..
2022.05.25 -
[Python] Powerful library for EDA - Pandas Profiling
데이터를 처음 접하게 되면 변수의 구성과 분포, 결측치, 상관관계 등 기본적으로 파악해야할 요소들이 많다. 이것은 EDA(Exploratory Data Analysis)의 첫 단계로 이 과정을 빠르게 도와주는 파이썬 라이브러리가 몇 가지 있다. Pandas Profiling Sweetviz DataPrep 여기서는 Pandas Profiling에 대해 정리해보려고 한다. 1. 설치 !pip install pandas-profiling 2. 활용 2.1. 데이터 불러오기 예제 데이터로 kaggle의 호주 강수 예측 데이터([1])를 사용하였다. import pandas as pd df = pd.read_csv('weatherAUS.csv') 2.2. 분석 보고서 생성하기 profile = df.profil..
2022.05.16 -
[Python] pandas.melt()
pd.melt() 함수는 여러 개의 열은 행으로 쌓아 하나의 열로 만들고 싶을 때 사용하면 좋은 함수이다. 알아두면 데이터 전처리에 유용하게 쓸 수 있다. 1. pandas.melt() Unpivot a DataFrame from wide to long format, optinally leaving identifiers set pandas.melt( frame, id_vars=None, value_vars=None, var_name=None, value_name='value', col_level=None, ignore_index=True) id_vars : 인덱스 변수로 사용할 칼럼 value_vars : 하나의 열로 나열하고자 하는("unpivot") 칼럼 리스트/튜플/배열, 미지정시 id_vals를 ..
2022.05.10