-
파이썬 데이터사이언스 핸드북 2장 - Numpy 소개데이터 분석/NumPy 2020. 5. 12. 11:43
3장과 함께 이번 장에서는 파이썬에서 인메모리 데이터를 효과적으로 적재하고 저장하고 가공하는 기법을 설명하겠다. 이 주제는 매우 광범위하다. 데이터세트는 광범위한 원천으로부터 문서나 이미지, 사운드 클립, 수치 측정값 등 거의 모든 것을 아우르는 매우 다양한 형식으로 들어올 수 있다. 이렇게 명백한 다양성에더 볼구하고 모든 데이터를 근본적으로 숫자 배열로 간주하는 것이 도움이 될 것이다. 숫자 배열을 효과적으로 저장하고 가공하는 것은 데이터 과학을 수행하는 절차에서 가장 근본적인 작업이다. 이제 파이썬이 이러한 숫자 배열을 다루기 위해 제공하는 전문 도구인 NumPy 패키지(2장)와 Pandas 패키지(3장) 을 살펴보겠다. NumPy 란? NumPy(보통 "넘파이"라고 발음한다)는 2005년에 Trav..
-
파이썬 데이터사이언스 핸드북 1장 - 코드 프로파일링 및 시간 측정데이터 분석/NumPy 2020. 5. 9. 13:33
특정 명령어나 일련의 명령어의 실행 시간을 확인하는 것이 유용하고, 때로는 멀티라인 프로세스를 면밀하게 분석하고 복잡한 일련의 작업에서 병목이 되는 지점을 찾는 것이 유용하다. IPython 은 이런 방식으로 코드의 실행 시간을 측정하고 프로파일링하는 다양한 기능을 제공한다. - %time : 단일 문장의 실행 시간 - %timeit : 단일 문장을 반복 실행해 더 정확하게 실행 시간을 측정 일반적으로 %time 으로 측정한 시간이 %timeit 으로 측정한 시간보다 길다. %timeit 이 물밑에서 시스템 호출이 시간 측정을 방해하지 못하도록 몇몇 영리한 작업을 수행하기 때문이다. 예를 들면, 이 명령어는 시간 측정에 영향을 줄 수도 있는 미사용 파이썬 객체를 정리하는 가비지 컬렉션 작업을 못 하게 막..
-
파이썬 데이터사이언스 핸드북 1장 - IPython 의 에러와 디버깅데이터 분석/NumPy 2020. 5. 5. 16:33
코드 개발과 데이터 분석은 항상 어느정도 시행착오가 필요하며, IPython 은 이 절차를 능률화하는 도구를 제공한다. 이번 포스트에서는 파이썬의 예외 보고를 제어하는 몇 가지 옵션을 간단히 다루고 코드의 에러를 디버깅하는 도구를 살펴본다. %xmode Plain, Context Verbose 인터프리터가 예외를 발견하면 에러 발생 원인에 대한 정보를 파이썬에서 접근할 수 있는 traceback 에서 확인할 수 있다. %xmode {Plain|Context|Verbose} %debug 역추적 내용을 확인하는 것으로 충분하지 않을 경우 디버깅 IPython 에서 디버깅에 가장 편리한 인터페이스 예외를 만난 뒤 이 명령어를 호출하면, 예외 발생 지점에 대화형 디버깅 프롬프트를 자동으로 연다. ipdb 프롬프..
-
파이썬 데이터사이언스 핸드북 1장 - IPython 의 꿀팁 명령어데이터 분석/NumPy 2020. 5. 5. 16:31
? 와 ?? 도움말 및 소스코드 확인 이 함수를 어떻게 호출할 수 있지? 이 함수는 어떤 인수와 옵션을 가지고 있을까? L.insert? Signature: L.insert(index, object, /) Docstring: Insert object before index. Type: builtin_function_or_method 이 파이썬 객체의 소스코드는 어떻게 생겼을까? def?? Signature: square(a) Source: def square(a): """a의 제곱을 반환""" return a**2 File: ~/Project/DS/ Type: function tab 탐색 및 자동완성 임포트한 이 패키지에는 무엇이 들어있을까? 이 객체는 어떤 속성이나 메서드를 가지고 있을까? %, %% ..
-
파이썬 데이터사이언스 핸드북 1장 - Jupyter notebook 실행데이터 분석/NumPy 2020. 5. 5. 14:55
파이썬 데이터사이언스 핸드북 1장. Iptyhon: 파이썬에 날개를 달자 IPython (Interactive Python) 은 훌륭한 파이썬 대화형 인터페이스일 뿐만 아니라 추가로 다수의 유용한 구문을 제공한다. 게다가 IPython은 개발, 협업, 공유는 물론이고, 데이터 과학 결과를 게시하는 데 유용한 브라우저 기반의 노트북을 제공하는 Jupyter 프로젝트와 밀접하게 연결돼 있다. 이번 장에서는 데이터 과학 실무에 유용한 IPython 기능을 배우고, 그 중 특히 파이썬의 표준 기능 이상을 제공하는 구문에 초점을 맞춰 살펴볼 것이다. 다음으로 데이터 과학용 코드를 생성하고 사용하는 일반적인 작업 속도를 높이는 몇 가지 유용한 매직 명령어에 대해 더 깊이 있게 알아볼 것이다. 마지막으로 데이터를 이..
-
[SQL] data.world tutorial SQL Pivot 문 예제 풀이데이터 분석/DB & SQL 2020. 5. 4. 00:41
PIVOT enables you to see rows as columns in a query result. 피벗테이블은 row 여러 개를 column 으로 옮겨서 요약 정리한다. PIVOT (집계값 FOR 대상컬럼 IN ("컬럼1", "컬럼2", ... "컬럼N")) https://docs.data.world/documentation/sql/concepts/advanced/PIVOT.html PIVOT Learn about PIVOT in this SQL tutorial. Visit for a full course on learning the basics of SQL. docs.data.world 엑셀에서 원하는 결과값을 값에 넣고, 요약기준을 row 와 column 에 추가하는 것과 같다. (이 때 c..
-
[SQL] data.world tutorial SQL Inline VALUE 문 예제 풀이데이터 분석/DB & SQL 2020. 5. 3. 23:03
Value Block VLOOKUP 처럼 활용할 때 사용한다. 매칭해야 하는 값이 몇개 없을 때에는 테이블로 따로 빼지 않고 이렇게 쿼리 안에 정의해서 활용할 수도 있다. A value block is a table created and defined within a query that exists only in the scope of that query. It acts like any other table and can be used to extend the data in an existing table by means of a small look up. value 블럭은 쿼리 내부에 생성 및 정의되는 테이블이며, 그 쿼리가 실행될 때에만 존재한다. 다른 테이블처럼 동작하고, 기존 테이블에 있는 데이터..
-
[SQL] data.world tutorial SQL Inline Subquery 문 예제 풀이데이터 분석/DB & SQL 2020. 5. 3. 22:06
Subquery 의 다른 방법 Inline Subquery Subquery / nested query / Inner query 내부쿼리 main query / containing query / / outer query 외부쿼리 In a previous section we built subqueries using the keyword WITH. Another kind of subquery is an inline subquery. 이전 포스트에서는 WITH 문을 통해 subquery 를 작성하는 법을 알아보았다. Subquery 의 다른 방법으로 Inline Subquery 가 있다. In a standard inline subquery, the subquery is a component of a FROM ..