-
Jupyter Notebook 에서 Pip 를 통해 패키지 설치하는 방법개발입문/개발환경 세팅 2020. 8. 19. 07:25
Pip, Conda 를 통해 Jupyter Notebook 에서 패키지 설치하는 법 import sys !{sys.executable} -m pip install numexpr # Install a conda package in the current Jupyter kernel import sys !conda install --yes --prefix {sys.prefix} numpy That bit of extra boiler-plate makes certain that you are running the pip version associated with the current Python kernel, so that the installed packages can be used in the current ..
-
데이터 인덱싱과 선택 - Series데이터 분석/Pandas 2020. 6. 13. 11:07
NumPy 인덱싱 복습 NumPy 배열의 값에 접근하고 그 값을 설정하고 수정하는 메서드와 도구들 인덱싱 arr[2,1] 인덱스 단일 스칼라 슬라이싱 arr [:, 1:5] 인덱스 범위 마스킹 arr[arr>0] 인덱스 조건을 전달 팬시 인덱싱 arr[0, [1,5]] 인덱스 배열을 전달 Series 1. Series 의 데이터 선택 1차원 NumPy 배열과 표준 파이썬 딕셔너리*처럼 동작한다. 더보기 딕셔너리 설명 사람은 누구든지 "이름" = "홍길동", "생일" = "몇 월 몇 일" 등으로 구별할 수 있다. 파이썬은 영리하게도 이러한 대응 관계를 나타낼 수 있는 자료형을 가지고 있다. 요즘 사용하는 대부분의 언어도 이러한 대응 관계를 나타내는 자료형을 갖고 있는데, 이를 연관 배열(Associativ..
-
Pandas 객체 소개 - Index데이터 분석/Pandas 2020. 6. 7. 14:25
Pandas Index 객체 Index 객체는 그 자체로 흥미로운 구조체이며 불변의 배열이나 정렬된 집합 (중복 허용) 으로 볼 수 있다. Index: 불변의 배열 Index 객체는 여러 면에서 배열처럼 동작한다. Index 객체는 NumPy배열에서 익숙한 속성이 많이 있다. 단, Index 객체는 일반적인 방법으로는 변경될 수 없는 불변의 값이다! Immutable 이 불변성 덕분에 예기치 않은 인덱스 변경으로 인한 부작용 없이 여러 DataFrame 과 배열 사이에서 인덱스를 더 안전하게 공유할 수 있다. Index: 정렬된 집합 Pandas 객체는 집합 연산의 여러 측면에 의존하는 데이터 세트 간의 조인과 같은 연산을 할 수 있게 하려고 고안되었다. 그래서 합집합, 교집합, 차집합을 비롯해 그 밖의..
-
Pandas 객체 소개 - DataFrame데이터 분석/Pandas 2020. 6. 7. 14:16
Series: 유연한 인덱스를 가지는 1차원 배열 DataFrame: 유연한 행 인덱스와 유연한 열 이름 (인덱스)을 가진 2차원 배열 Pandas DataFrame 객체 DataFrame 은 정렬된 Series 객체의 연속으로 볼 수 있다. 즉, 같은 인덱스를 공유하는 Series 객체의 조합이다. - 행 인덱스: 도시이름 공유 - 열 인덱스: (도시 단위) 인구수, (도시 단위) 면적 실제로 행과 열 모두 인덱스 객체이다. DataFrame: 특수한 딕셔너리 이렇게 행이름을 기준으로 Series 를 반환한다. DataFrame 객체 구성하기 단일 Series 객체에서 구성하기 DataFrame 은 Series 객체의 집합체로서 열 하나짜리 DataFrame 은 단일 Series 로부터 구성할 수 있다..
-
Pandas 객체 소개 - Series데이터 분석/Pandas 2020. 6. 7. 13:36
Pandas 튜토리얼 및 다큐멘테이션을 펴놓고 시작! http://pandas.pydata.org/ pandas - Python Data Analysis Library pandas pandas is a fast, powerful, flexible and easy to use open source data analysis and manipulation tool, built on top of the Python programming language. Install pandas now! pandas.pydata.org Pandas 의 세 가지 기본 자료구조인 Series, DataFrame, Index 에 대해 알아보자. Pandas Series 객체 Pandas Series 는 인덱싱된 데이터의 1차원 배열..
-
파이썬 데이터사이언스 핸드북 2 장 - 구조화된 데이터데이터 분석/NumPy 2020. 5. 31. 14:35
NumPy 에서 복합적인 이종 데이터를 효율적으로 저장하기 위한 구조화된 배열과 레코드 배열에 관해 설명하겠다. 이후 Pandas DataFrame 을 사용할 때에도 도움이 된다. NumPy 배열은 데이터 타입이 1개이다. 하지만 이렇게 하면 이 세 배열이 서로 연관돼 있음을 알 수 없다. 이 데이터를 모두 단일 구조에 저장할 수 있다면 더 자연스러울 것이다. NumPy 는 복합 데이터 타입을 가지는 배열인 구조화된 배열을 통해 이런 경우를 처리할 수 있다. 구조화된 데이터, 구조화된 배열 복합 데이터 타입을 가지는 빈 컨테이너 배열을 만들었다. key-value 쌍으로 이루어진 딕셔너리 방식으로 지정했다. 'U10' 은 최대 길이 10을 갖는 유니코드 문자열이고, 'i4' 는 4바이트 (즉, 32비트)..
-
파이썬 데이터사이언스 핸드북 2 장 - 정렬과 파티셔닝데이터 분석/NumPy 2020. 5. 31. 14:35
NumPy 배열의 값을 정렬하는 알고리즘: 삽입 정렬 (insertion sorts), 선택 정렬 (selection sorts), 병합 정렬 (merge sorts), 퀵 정렬 (quick sorts), 버블 정렬 (bubble sorts) 등이 있지만... 실제로 응용기술만 알면 되는 우리는 이 원리를 다 알 피요는 없다. Numpy 의 정렬 메서드가 효율적인 배열을 알아서 수행해주기 때문이다 +___+b 파이썬 배열 알고리즘 맛보기 - Selection Sort 간단한 선택 정렬은 리스트의 최솟값을 반복적으로 찾아서 리스트가 정렬될 때까지 값을 교환한다. 즉 왼쪽부터 원소를 한 개 씩 검사한다. N 개의 값을 가진 리스트의 경우 N 번 반복해야 한다. Big-O 표기법 기준 O(N)* 아직 익숙하지..
-
파이썬 데이터사이언스 핸드북 2 장 - 팬시 인덱싱데이터 분석/NumPy 2020. 5. 31. 14:34
배열의 일부에 접근하고 수정하는 법 중 팬시 인덱싱에 대해 포스팅한다. - 간단 인덱스 arr[0] - 슬라이싱 arr[:5] - 부울 마스크 arr[arr>0] - 팬시 인덱싱 arr[[3,7,2]] 팬시 인덱싱 팬시 인덱싱은 단순 인덱싱과 비슷하지만, 단일 스칼라 대신 인덱스 배열을 전달한다. 이로써 복잡한 배열 값의 하위 집합에 매우 빠르게 접근해 그것을 수정할 수 있다. 한 번에 여러 배열 요소에 접근하기 위해 인덱스의 배열을 전달한다. (...) 팬시 인덱싱을 이용하면 결과의 형상이 인덱싱 대상 배열의 형상이 아니라, 인덱스 배열의 형상을 반영한다. 표준 인덱싱을 사용할 때와 마찬가지로 첫 번째 인덱스는 행을 말하며, 두 번째 인덱스는 열을 말한다. 팬시 인덱싱에서 인덱스 쌍을 만드는 것도 브로..