3주차 weekly mission 중 찾은 내용들
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.set_option('display.max_rows', 10)
- 10개만 출력
- 생략 없이 출력할려면 10 대신 None
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')]
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
# .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']
pd.period_range()
사용법 참고 : https://rfriend.tistory.com/503
# 기간동안 한 달씩의 간격
plt.xticks(pd.period_range('2016-06-01', '2017-06-30', freq= 1 *'1m'), rotation=45)