• pandas, numpy, matplotlib.pyplot 의 각 역할

    → 분석, 계산, 시각화

  • 아나콘다는 여러 도구를 한번에 설치해주기도 하지만 가상환경을 제공

  • 설치했는데 No Module Not Found 오류가 발생할 때

    • 보통 여러 버전의 파이썬 혹은 아나콘다 등이 설치되어 있는데 현재 사용하고 있는 위치가 아닌 다른 위치에 설치되어었을 때, 이런 오류가 발생함
    • 보통 오류 메시지에 보면 어느 경로에 없다는 메시지가 나오게되어 해당 경로에 가서 보면 여러 라이브러리가 설치되어있는 폴더를 볼 수 있는데, 해당 위치에 사용하고자 하는 라이브러리를 다운로드 받아 옮겨주면 import 됨
    • (base) ← 아나콘다의 기본 가상환경, 해당 가상환경에 설치해 주면 보통 문제가 적게 발생
  • 도움말 보기

    • jupyter : shift + tab / ? / ??
    • 메서드 체이닝을 하게되면 도움말이 잘 동작하지 않는다. 그럴땐?
      • help() 로 본다
      • 떼어서 보는 방법을 추천
  • plt.axvline(5, c="g", ls=":") : x축 기준 선 생성

  • pd.crosstab : 두 개의 변수에 대한 빈도수를 구할 수 있다.

    • index와 column 값을 지정해줄 수 있다.
    • 빈도 비율 : normalize = True 를 해주면 비유를 알 수 있다.
  • 히트맵 생성 style.background_gradient(cmap = cm)

    • style을 지정해주고 싶다면 스타일 변수를 지정해주어서 seaborn라이브러리를 이용해서 지정해준다. light_palette
  • loc / iloc 비교

    • .iloc[:5, -5:] : 인덱스로 슬라이딩
    • .loc[['강남구', '서초구'],['2020-03','2021-03']] : 컬럼명과 인덱스명으로 슬라이딩
  • Boolean Indexing

    • 여러조건 가져오기
      • & 나 | 연산자로 여러 조건 가져올 수 있음
    • str.contains 찾으려는 문자열을 포함만 해도 반환 가능 ← 문자열 accessor 이라 시리즈에서만 사용가능함
      • 여러 개를 포함시키고 싶다면 str.contains('강남구|서초구|송파구') ← | 을 이용해서 or 연산 함
    • isin 찾으려는 문자열과 정확히 일치해야 반환 가능, 리스트로 여러 값을 찾아오기
  • plot.bar vs plot.barh

    • bar는 x축에서 위로
    • barh 는 y축에서 옆으로
  • crosstab vs pivot_table

    • pd.crosstab()의 소스코드를 보게되면 pd.pivot_table()로 되어있다.
    • pd.crosstab() 은 pd.pivot_table()을 이용하기 쉽게 한번 감싸(wrapping) 놓은 기능
    • pd.crosstab() 에 비해 pivot_table() 을 사용하면 좀 더 많은 기능을 사용할 수 있습니다.
  • pivot vs pivot_table

    • 공통점 : index, columns, values를 공통적으로 사용할 수 있다.
    • 차이점
      • pivot_table 연산 제공 pivot 연산 제공 x 테이블 재배치
      • pivot은 형태변환만 제공하고
      • pivot_table은 연산을 함께 제공한다.
        • aggfunc 등의 기능 제공
        • 내부가 groupby()로 되어있다.
        • groupby()를 사용하기 쉽게 엑셀에서 사용하는 용어로 만들어놓은 것이 pivot_table()이다.
        • groupby()를 제대로 익히면 다 사용할 수 있음
  • 꼭 판다스 공식 docs를 통해 읽어보는 것을 연습해보기

  • groupby()

    • 피봇이랑 비슷하지만 좀 더 기능적으로 많은 것을 할 수 있고 내용이 조금 어려움
    • by에 지정한 값이 멀티 인덱스 값으로 나옴
    • groupby후 연산자 뒤에 붙여주기 ex)count()
    • unstack()
  • merge 키값을 기준으로 합침

    • df1과 df2를 merge해보자
      • df1.merge(df2)
      • 기준값을 가질 df1 컬럼과 df2 컬럼이 같다면 on 속성으로 지정
      • 컬럼이름이 다르다면 df1 ← left_on, df2 ← right_on 으로 설정
  • OHLCVC : Open(시작가),High(최고가),Low(최저가),Close( 종가), Volume, Change