[TIL] Day 14 - Visualization Graph

기역의궁전·2021년 5월 12일
0

dev2_TIL

목록 보기
15/18

3주차 weekly mission 중 찾은 내용들

Series 문자열 포함 확인

Series.str.contains(pat, case=True, flags=0, na=None, regex=True)

  • pat : 찾을 문자
  • case : 대소문자 구분 boolean
  • na : NaN값에 대해 return을 어떻게 줄지 boolean

최소/최대값의 인덱스

DataFrame(Series).idxmax(axis=0, skipna=True)

  • axis : 축 선택 / 0 -> columns방향으로 탐색, 1 -> row방향으로 탐색
  • skipna : NaN값 제외 (False일 경우 NaN이 존재하면 계산이 불가하므로 NaN값을 return

pd 설정바꾸기 : 생략없이 출력

pd.set_option('display.max_rows', 10)

  • 10개만 출력
  • 생략 없이 출력할려면 10 대신 None

object -> datetime 자료구조 변환

pd.to_datetime( df , format='%Y-%m-%d', errors='raise')

# 기간 내(2016.06 ~ 2017.06)에 open col 가져오기

# object -> datetime 자료형으로 변수변환
btc_df['Date'] = pd.to_datetime(btc_df['Date'], format='%Y-%m-%d', errors='raise')
# 2016.06~2017.06
btc_year_df = btc_df[(btc_df['Date'] >= "2016-06-01") & (btc_df['Date'] <= '2017-06-30')]

df값 기준으로 데이터 정렬

DataFrame.sort_values(by, axis=0, ascending=True)

  • by : 기준이 될 칼럼
  • axis : 축 선택 / 0 -> columns방향으로 탐색, 1 -> row방향으로 탐색
  • ascending : 내림차순으로 정렬하고 싶다면 옵션을 False
# Date col의 값을 기준으로 날짜순 정렬 -> .sort_values(by=,ascending=)
# 내림차순으로 정렬하고 싶다면 ascending 옵션을 False
btc_year_df = btc_year_df.sort_values(by='Date' ,ascending=True)
btc_year_df  # 기간 내(2016.06 ~ 2017.06)에 open col

5일 이동평균선

# .rolling(5).mean()

five_ma = btc_year_df.loc[:,['Date','Open']]  # 해당 기간 동안의 Date, Open 값만 가져옴 .loc[]
five_ma.Open = five_ma.Open.rolling(5).mean()  # 각 날짜의 5일간 평균값
five_ma = five_ma.iloc[4:]  # 평균이 없는 1~4일 까지 NaN값 제외
five_ma.columns = ['Date','5MA']

datetime값 구간 정하기

pd.period_range()

사용법 참고 : https://rfriend.tistory.com/503

 # 기간동안 한 달씩의 간격
plt.xticks(pd.period_range('2016-06-01', '2017-06-30', freq= 1 *'1m'), rotation=45)

0개의 댓글