본문 바로가기

Programming

[Python][Library] 라이브러리 별 기능 요약

반응형

Numpy 1 - 배열과 벡터

  1.  Numpy ndarray : 다차원 배열 객체
    1. ndarray 사용
      1. [참고] 파이썬 리스트의 산술 연산
    2. ndarray 생성
      1. [참고] np.array 는 생성될 때 적절한 자료형을 선택 한다
      2. np.zeros(): 0으로 초기화된 배열 생성
      3. np.empty(): 초기화 되지 않은 배열 생성
      4. np.arange(): 파이썬 range() 함수의 배열 버전
    3. ndarray 의 자료형
      1. 타입변경 : astype() 메소드
      2. [참고] dtype 축약코드
    4. 배열과 스칼라 간의 연산
    5. 인덱싱 (색인) 과 슬라이싱
      1. 브로드캐스팅
      2. 배열 조각은 원본 배열의 view 를 리턴 (파이선 리스트의 슬라이싱은 복사본을 리턴)
      3. slicing : 사용 예
      4. 2차원, 3차원 배열 제어
      5. 슬라이스 색인
      6. add2d[:2, 1:]
    6. 불리언 색인
      1. !=, ~ 으로 부정
      2. 불리언 색인 시 항상 데이터 복사
    7. 팬시 색인
    8. 배열 전치와 축 바꾸기
  2. 유니버설 함수
    1. 단항 유니버설 함수
    2. 이항 유니버설 함수
  3. 배열을 사용한 데이터 처리
    1. 벡터화
    2. 배열 연산으로 조건절 표현하기
    3. 수학 메서드와 통계 메서드
      1. 연산을 진행할 축을 선택 (행방향 : axis = 0, 열방향 : axis = 1) - Default : axis = 0
      2. 누적 연산 - cumsum(), cumprod(): 중간 계산 값을 담고 있는 배열을 반환
      3. 기본 배열 통계 메서드
    4. 불리언 배열을 위한 메서드
      1. 배열의 값이 0 이면 False, 그 외 나머지는 모두 True 로 취급
    5. 정렬
      1. 다차운 배열의 정렬
    6. 집합 함수
      1. np.in1d()
      2. 배열 집합 연산
  4. 배열의 파일 입/출력 
    1. 배열을 바이너리 형식으로 디스크에 저장하기
    2. 텍스트 파일 불러오기와 저장하기
  5. 선형대수
  6. 난수 생성
    1. numpy. random 함수
  7. 예제 : 계단 오르내리기 

Numpy 2 - tutorial

  1. The basics
    1. An example
    2. Array creation
    3. Printing Arrays
    4. Basic Operations
    5. Universal Functions
    6. Indexing, Slicing, and Iterating
  2. Shape maniplation
    1. Changing the shape of an array
    2. Stacking together different arrays
    3. Splitting one array into several smaller ones
  3. Copies and Views
    1. No copy at all
    2. View or shallow copy
    3. Deep copy
  4. Fancy indexing and index tricks
    1. indexing with arrays of indices
    2. Indexing with boolean arrays
    3. The ix_() function
  5. Linear algebra
    1. Simple array operations
  6. Tricks and tips
    1. Automatic reshaping
    2. Vector stacking
    3. Histogram

 

Pandas 1 - 자료구조 : Series, DataFrame

  1. Pandas 자료 구조
    1. Series
      1. NaN
    2. DataFrame
      1. DataFrame 객체 생성
      2. 행 선택시 사용 메소드 : index 이름 - loc(), index 위치 - iloc()
      3. 중첩된 사전을 이용해서 데이터 생성
      4. index를 직접 지정한다면 지정된 색인으로 DataFrame 생성
      5. DataFrame 생성자에서 사용 가능한 입력 데이터
    3. 색인 객체
      1. Pandas의 주요 Index 객체
      2. 인덱스 메서드
  2. 핵심기능
    1. 재색인 - reindex()
      1. [참고] reset_index(), set_index()
      2. [참고] rename() : 컬럼 이름 변경
      3. 시계열 같은 순차적 데이터를 재색인할 때 값을 보간하거나 채워 넣어야 할 경우
      4. reindex 메서드 (보간) 옵션
      5. 재색인 함수 인자
    2. 행 또는 열 삭제
    3. 색인하기, 선택하기, 거르기
      1. Series
      2. 라벨 이름으로 슬라이싱 하면 시작점과 끝점을 포함 한다
      3. DataFrame
      4. 열을 기준으로 선택
      5. 슬라이싱 이나 불리언 배열을 사용하면 행을 기준으로 선택
      6. loc() : index이름 , iloc() : index 위치
    4. 산술연산과 데이터 정렬
      1. Series
      2. DataFrame
      3. 산술연산 메서드에 채워 넣을 값 지정하기
      4. 산술연산 메서드
      5. 브로드캐스팅
    5. 함수 적용과 매핑
      1. Series 의 apply(), map() 차이 비교
      2. [비교] 문자열 합치기
    6. 정렬과 순위 
    7. 중복 색인 
  3. 기술통계 계산과 요약
    1. 기술통계 계산과 요약
      1. 축소 메서드 옵션
      2. 기술통계와 요약통계
    2. 상관관계와 공분산
    3. 유일 값, 도수
      1. 유일 값, 도수
      2. DataFrame 의 여러 행에 대한 히스토그램
  4. 누락된 데이터 (결측치) 처리하기
    1. NA 처리 메서드
    2. 누락된 데이터 골라내기
    3. 누락된 값 채우기
    4. fillna 함수 인자
  5. 계층적 색인
    1. MultiIndex 는 따로 생성한 다음에 재사용
    2. 계층 순서 바꾸고 정렬하기
      1. Swallevel 은 넘겨받은 2개의 계층 번호나 이름이 뒤바뀐 새로운 객체를 반환 (하지만 데이터는 변경되지 않는다) 
    3. 단계별 요약 통계
    4. DataFrame 의 컬럼 사용하기

 

Pandas 2 - 파일입출력 : 데이터 로딩, 저장, 파일 형식

입출력방법

  1. 텍스트파일
    1. Pandas 파일 파싱 함수
    2. Pandas 파일 파싱 함수 옵션
    3. 텍스트 파일 읽기
      1. 계층적 색인을 지정
      2. 구분자로 정규표현식 사용 가능
      3. 결측치 문자열 정의
      4. read_csv / read_table 함수 인자
    4. 텍스트 파일 일부분만 읽기
      1. nrows : 처음 몇 줄만 읽기
      2. chunksize : 일정량의 데이터를 순회하면서 조회 가능
    5. 텍스트 파일에 쓰기
      1. na_rep : NaN(결측치) 을 원하는 값(문자열) 으로 출력
      2. index, header
      3. 컬럼 일부분만 출력, 컬럼 순서 지정
    6. 텍스트 파일 수동 처리 (읽기, 쓰기) 
      1. CSV 파일 읽기
      2. 사용자 정의 : 다양한 규칙을 클래스로 구현 (csv.Dialect 상속)
      3. CSV 파일 쓰기
    7. 엑셀 파일
    8. JSON 파일
      1. Library : Pandas
      2. url 사용
      3. file 사용
      4. buffer 사용
      5. Library: json
      6. json.load()
      7. json.dumps()
      8. JSON 객체 사용 예
  2. 바이너리 파일
    1. pickle
      1. 데이터를 효율적으로 저장하는 가장 손쉬운 방법
    2. HDF5 (Hierarchical Data Format)
  3. HTML, 웹 API 와 함께 사용하기
  4. 데이터베이스 (DBMS) 
    1. DB : Memory 사용
      1. Connect to DBMS
      2. Create Table
      3. Insert Data
      4. Select Data
      5. Select Data (Pandas 사용)
      6. Disconnect from DBMS
    2. DB : File 사용
      1. Connect to DBMS
      2. Create Table
      3. Insert Data
      4. Select Data
      5. Disconnect from DBMS

 

Pandas 3 - 데이터 처리

  1. 데이터 합치기 - merge, join, concat
    1. DBMS 스타일로 DataFrame 합치기
      1. merge() 함수
        1. inner join
        2. outer join
        3. [참고] 데카르트 곱 (Cartesian product) 
    2.  색인으로 머지하기
      1. 다중 색인
      2. join () 함수 : DataFrame 2개 이상 조인 가능
    3. 축 따라 이어붙이기
      1. concat()
      2. 인덱스, 컬럼 명 설정 (계층적 색인 생성)
      3. DataFrame
      4. 인덱스 삭제
    4. 겹치는 데이터 합치기
      1. combine_first()
  2. 재형성과 피벗
    1. 계층적 색인으로 재형성하기
      1. 누락된 데이터 처리
    2. 데이터 나열 형식 변경
      1. Pivoting "Long" to "Wide" Format
        1. pivot()
        2. [비교]
      2. Pivoting "Wide" to "Long" Format
        1. melt()
  3. 데이터 형성
    1. 중복 제거하기
    2. 함수나 매핑 이용해 데이터 변형하기
      1. map() , apply()
    3. 값 치환하기
      1. replace()
    4. 축 색인 이름 바꾸기
    5. 데이터 분류 (빈도수 세기)
      1. cut, qcut, value_counts
    6. 이상치 (Outliers) 제거 
    7. 치환과 임의 샘플링
    8. 더미 변수 (One-Hot-Encoding)
  4. 문자열 다루기
    1. 문자열 객체 메서드
    2. 정규표현식
    3. Pandas 의 벡터화된 문자열
      1. SEries 의 각 요소에 순차적으로 적용
      2. Pandas 문자열의 정규표현식

 

Pandas 4 - 그룹 연산

  1. GroupBy Mechanics
    1. GroupBy
      1. Series Groupby
      2. DataFrame Groupby
    2. 그룹간 순회
      1. 컬럼 쪽 축으로 GroupBy
    3. 컬럼의 일부 선택
      1. 컬럼선택
      2. 관용적 표현
    4. 사전과 Series 에서 묶기
    5. 함수로 묶기
    6. 여러가지 타입 혼합해서 묶기
    7. 색인 단계로 묶기
  2. 데이터 수집
    1. 집계함수 적용
      1. Groupby 매서드
      2. 사용자 정의 함수
    2. 컬럼에 여러 가지 함수 적용
    3. 인덱스 제거 : reset_index() 와 동일
  3. 그룹별 연산과 변형
    1. transform() 함수
    2. apply() 함수 : 분리 - 적용 - 병합
      1. 그룹 색인 생략
    3. 변위치 분석과 버킷 분석
    4. 예제 : 그룹별 결측치 처리
  4. 피벗 데이블, 교차 일람표 (Cross Table)
    1. 피벗 데이블
    2. 교차 일람표 (Cross Table) 

Pandas 5 - 시계열 분석

  1. 날짜와 시간
    1. Datetime 모듈 자료형
    2. 문자열과 datetime 간 변환
    3. parser 유틸리티 이용
    4. Pandas 이용 : 색인객체로 생성
  2. 시계열 기초
    1. 인덱싱
      1. DataFrame
    2. 중복된 색인 (시계열)
  3. 날짜 다루기
    1. 날짜 범위 생성
    2. 빈도와 날짜 오프셋
    3. 데이터 쉬프트
  4. 시간대 다루기
    1. 지역 시간대 변환
    2. 지역 시간대 (Timestamp 객체)
    3. 다른 시간대 연산
  5. 기간과 기간 연산
    1. Period 의 빈도 변환
    2. 분기 빈도
    3. 타임스탬프와 Period 간 변환
    4. 배열로 PeriodIndex 생성
  6. 리샘플링과 빈도 변환
    1. Downsampling
      1. Open-High-Low-Close (OHLC) resampling
    2. Upsampling
    3. 기간샘플링
  7. 참고
    1. Moving Window Functions
      1. Exponentially Weighted Functions
      2. Binary Moving Window Functions
      3. User-Defined Moving Window Functions 

 

Matplotlib

  1. Matplotlib API
    1. 환경설정 
      1. 한글 폰트 다운로드
      2. 시스템 폰트 찾기
      3. 한글 폰트 설정
      4. 한글 폰트 설정 확인
    2. Figure 와 subplot
      1. 여러개의 그림판 생성
      2. subplots() 옵션
      3. 여러개의 그림판 배열로 생성
    3. Line Chart
    4. Bar Chart
    5. Pie Chart
    6. Scatter Chart
    7. 색상, 마커, 선 스타일
      1. Matplotlib 스타일
      2. Color
      3. Line
      4. 조합
    8. 눈금, 라벨, 범례
      1. 제목 축 이름, 눈금 이름
      2. 범례 추가
    9. 주석, 그림 추가
      1. 주석
      2. 그림
    10. 파일로 저장
  2. Pandas 에서 그래프 그리기
    1. 선 그래프
    2. 막대 그래프
    3. [참고] seaborn
  3. 히스토그램, 밀도 그래프
  4. 산포도

 

Scipy

 

 

scikit-learn

 

 

 

 

반응형
LIST