2020년 3월 18일 수요일

Day_00. Intro_03


Pandas 소개(Introduction)
 numpy에서 파생된 package
 data label 가능
 소실 data 핸들링
 Data grouping
 Data pivoting


설치방법
--pip install pandas
--conda install –c conda-forge pandas

데이터 관리 방법
--serise=1개의 column
--data frame= 여러 개의 column 관리

시계열 데이터 생성 예시
-import pandas.util.testing as tm
-df_mock =tm.makeTimeDataFrame()
-df_mock.head(5)


series –단일행 column data- 생성하기
import numpy as np
import pandas as pd

a = ['a','b','c']
x = [1,2,3]
ds=pd.Series(x,index=a)
ds

a 1
b 2
c 3
dtype: int64

--Serise 로 생성할 때 데이터로 지정할 행을 앞에, index로 사용할 행을 뒤에 index 키워드로 지정한다, 이때 복수의 column data 행으로 지정하면
TypeError: __init__() got multiple values for argument 'index'
가 발생한다

series –단일행 column data- 접근하기
ds['a'] #index 첫번째 항목 지정
ds['a':'c'] #index a항목부터 c항목까지
ds[0:2] #index 번호로 0번부터 지정

dataframe-복수행 column data- 생성
ps1=pd.Series(data=[11,22,33],index=['a','b','c'])
ps2=pd.Series(data=[55,66],index=['d','f'])


ps1a 11
b 22
c 33
dtype: int64



ps2d 55
f 66
dtype: int64

==ps1,2 로 이루어진 series data 2개 생성한다

agg=pd.DataFrame([ps1,ps2])
agg
==agg 로 생성한 dataframe 2개의 series를 묶어준다
 ---------------------------------------------------------------------------------------
Yahoo finance 의 정보를 가져와서 활용해보기
 Yahoo finance 정보를 가져오는 packages를 설치해야 할수있다

1.anaconda navigator open하고 두번째 environments tab에서 rootàopen terminal 을 클릭


2.pip install yfinance –upgrade –no-cache-dir 을 입력해서 설치한다


**cmd에서 pip 으로 설치하면 SSL 에러가 발생하는 경우가 많기 때문에 Anaconda navigator 로 설치하면 편함

import yfinance as yf #yahoo 정보를 가져 오기 위해 import 한다
data = yf.download("TSLA", start='2010-01-01') #Tesla data 2010-01-01부터 취득
data.head()


data.to_csv("TSLA_2010-01-01.csv") #데이터를 csv파일로 저장한다, jupyter notebook 시작 경로에 저장됨

data.index.weekday #weekday를 기준으로 index를 잡음,month 도 가능

Int64Index([1, 2, 3, 4, 1, 2, 3, 4, 0, 1,
2, 3, 4, 0, 1, 2, 3, 4, 0, 1],
dtype='int64', name='Date', length=2446)

DataFrame 생성
-Series 키워드 명시
--pd.DataFrame({'A':pd.Series([1,2,3]),'B':pd.Series([5,6,7])})

-Series 키워드 비명시
--pd.DataFrame({'A':[1,2,3],'B':[4,5,6]})
-기존 생성한 Series 를 이용한 DataFrame 생성
 --pd.DataFrame({'A':ps1,'B':ps2})
DataFrame Access
 --DataFrame 생성
 -df=pd.DataFrame({'A':[1,2,3],'B':[4,5,6]},index=[2017,2018,2019])
-df
--Series이름을 통한 Access
-df['A']
--DataFrame 을 통한 Access
-df[['A']] #[] 2개 사용하면 DataFrame 으로 판단된다
--Index 이름의 직접 명시
-df.loc[2017] #loc를 이용하면 해당 index이름을 직접 지정해서 접근이 가능함
--index의 번호를 지정해서 접근, -1은 맨뒤에 있는 항목
-df.iloc[:,0]
-df.iloc[:,-1]



DataFrame Renaming 방법 –column & index re-naming

-df.columns = ['z', 'k']
Df
Homework
--Financial data download and manipulations
---1.data download
---2.close and close-return plotting
---3.correlation among downloaded data


import yfinance as yf
demo=yf.download("AMZN",start='2010-01-01')
demo



댓글 없음:

댓글 쓰기