학습포스팅

해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Introduction to Bash Scripting의 chapter 1에 대한 내용입니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. Bash script 작성법 streams & arguments 1. Introduction and refresher Bash가 무엇이며, 왜 중요할까요? Bash는 오래전에 개발되었지만 현재에도 매우 인기있는 쉘입니다. Bash는 명령을 하나씩 복사하여 붙여넣는 것 대신 단일 명령으로 프로그램을 저장하고 실행할 수 있습니다. Bash를 공부하기 위해서는 grep, cat, sed과 같은 기본 명령어를 알고 있는 것이 좋습니다. grep은 정규표현식 패턴 일치 여부를 확인하여..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Data Processing in Shell의 chapter 4에 대한 내용입니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. command-line에서 파이썬 실행하기 pip로 패키지 설치하기 job scheduler: cron 1. Python on the command line 데이터 처리는 command-line에서 하는 것이 생산적이지만 예측 모델링과 같은 복잡한 작업은 Python에서 진행하는것이 더 쉽습니다. 이번 강의에서는 command-line에서 Python을 실행하여 두 개의 장점을 모두 활용할 수 있는 방법을 소개합니다. Python은 MacOS나 Linux에는 이미 설치가 되어 제공되지만..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Data Processing in Shell의 chapter 3에 대한 내용입니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. sql2csv csvsql 데이터베이스에서 가져오기 csvsql 데이터베이스로 보내기 1. Pulling data from databases csvkit 라이브러리에서는 SQL과 유사한 기능인 sql2csv를 제공하고 있습니다. sql2csv는 Microsoft SQL, MySQL, Oracle, PostgreSQL, Sqlite를 포함하여 다양한 SQL 데이터베이스에 접근할 수 있습니다. sql2csv는 PgAdmin과 TablePlus와 같은 데이터베이스 클라이언트를 거치지 않고도 ..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Data Processing in Shell의 chapter 2에 대한 내용입니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. csvkit(in2csv, csvlook, csvstat, csvcut, csvgrep, csvstack) 1. Getting started with csvkit csvkit은 command-line에서 데이터 처리를 위한 툴입니다. Wireservice가 Python을 사용해서 개발한 csvkit은 다양한 기능(데이터 변환, 처리 및 정리 기능)을 제공합니다. csvkit은 python 패키지이기 때문에 pip를 통해 설치할 수 있습니다. 이미 설치된 경우 최신 버전으로 업그레이드를 ..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Data Processing in Shell의 chapter 1에 대한 내용입니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. 웹사이트에서 데이터 받아오는 방법 curl wget 1. Downloading data using curl curl(client for URLs)은 서버와 데이터를 주고 받는 유닉스 명령 툴입니다. 주로 HTTP 사이트, FTP 서버에서 데이터를 다운로드할 때 주로 활용됩니다. curl이 설치되어 있었다면, man curl을 쳤을 때, curl의 manual을 확인할 수 있습니다. curl은 아래와 같이 사용할 수 있습니다. curl [option flags] [URL] curl은 HT..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. 해당 강의는 실습 위주로 구성되어 챕터를 나누지 않고 한 파일에 작성했습니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. shell을 다룰 때 활용하는 기본적인 내용 1. Manipulating files and directories Shell과 파일탐색기는 모두 명령을 위한 인터페이스입니다. Shell은 command-line을 통해 원하는 명령을 입력하고, 파일탐색기는 UI를 활용해서 명령을 입력합니다. 이번 강의에서는 기본적으로 command-line을 다루는 명령어에 대해서 배웁니다. 명령어 설명 활용방법 pwd 현재 위치한 폴더를 확인 pwd ls 현재 위치한 폴더의 파일 확인 ls ls 특정 경로 특..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Writing Functions in Python의 chapter 4에 대한 내용입니다. 기본적인 내용보다는 강의를 들으면서 처음 알게 된 내용을 위주로 작성했습니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. 시간 측정하는 time 데코레이터 만들기 decorator 설정된 function 정보 확인하기 decorator에 인수 추가하기 Timeout 데코레이터 만들기 1. Real-world examples 이번 강의에서는 time 라이브러리를 활용해서 런타임을 측정하는 데코레이터를 만듭니다. 보통 데코레이터는 이전 강의에서도 언급했듯이 다양한 함수에 동일한 함수를 적용해야 할 경우에 만듭니다. import..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Writing Functions in Python의 chapter 3에 대한 내용입니다. 기본적인 내용보다는 강의를 들으면서 처음 알게 된 내용을 위주로 작성했습니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. function 변수로 할당하기 global, nonlocal, local 차이 closure decorator 1. Functions are objects 파이썬에서는 함수를 변수로 선언이 가능합니다. 예를 들어, my_function이라는 함수가 있다고 가정해봅시다. 해당 함수를 사용할 때에는 my_function() 형태로 활용할 수 있지만, x = my_function으로 정의하면, x()로 해도..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Writing Functions in Python의 chapter 2에 대한 내용입니다. 기본적인 내용보다는 강의를 들으면서 처음 알게 된 내용을 위주로 작성했습니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. context manager 사용과 만들기 Nested context manager 에러 핸들링 1. Using context managers context manager는 context를 불러오고 원하는 코드를 실행한 뒤 해당 context를 제거하는 역할을 수행합니다. 보통 흔히 많이 사용하고 있는 context manager는 with문과 함께 사용됩니다. with open('my_file.txt'..
해당 내용은 Datacamp의 Data engineering track을 정리했습니다. Writing Functions in Python의 chapter 1에 대한 내용입니다. 기본적인 내용보다는 강의를 들으면서 처음 알게 된 내용을 위주로 작성했습니다. 해당 포스팅에는 아래의 내용을 포함하고 있습니다. Docstring 함수의 활용 Immutable, mutable 1. Docstrings Docstring은 함수나 클래스에 다른 사람이 이해하기 쉽도록 작성하는 내용을 말합니다. 보통 docstring에는 해당 함수가 어떤 역할을 하고, 어떤 인수들이 들어가야 하는지, return은 어떤 형태로 나오는지 등을 포함합니다. def split_and_stack(df, new_names): """Split ..