DataFrame 구조 다루기

pandas의 DataFrame 객체는 Series 객체를 2차원으로 확장한 것입니다. 각 row는 하나의 독립적으로 추가된 정보이며 이 정보가 column 의 갯수만큼의 속성이 존재합니다.

Data Frame 객체 생성

CSV 파일로 DataFrame만들기

AT&T의 주가정보가 저장된 csv파일을 읽어서 DataFrame을 만들 수 있습니다. 원하는 csv파일을 주피터 노트북의 upload 버튼을 눌러서 주피터 노트북 파일의 위치와 동일한 위치에 저장합니다.

image.png

pandas 라이브러리르 사용하기 위해 pandas 라이브러리를 import 합니다.

read_csv 함수를 이용하여 T.csv파일을 dataframe 으로 저장하고 인덱스로 사용할 칼럼을 csv 파일의 "Date" 칼럼으로 지정하였습니다. 그리고 head()함수를 이용하여 dataframe의 첫 5개의 로우를 확인하였습니다.

DataFrame의 칼럼 선택하기

[ ] 연산자 사용

DataFrame의 'high' 칼럼을 선택하기 위해서는 [] 연산자를 사용합니다.

속성 . 을 사용

속성을 사용하여 칼럼을 가져올 경우 'Adj Close' 같은 경우 공백이 있기 때문에 속성을 사용하여 선택할 수는 없습니다.

DataFrame의 로우 변경, 가져오기

.loc[ ] 을 이용하여 로우를 가져오기

여러 개의 로우를 선택하여 변경, 가져오기

리스트로 여러 개의 로우를 선택하여 가져온다.

여러 개의 로우의 값을 변경합니다.

저장한 원래 로우값으로 stock_t를 원복합니다.

ilock[ ]을 이용하여 로우 변경, 가져오기

index 정보를 이용하여 .iloc[ ] 은 이용하여 로우를 가져올 수 있습니다.
index는 맨 처음 로우가 0 으로 시작되는 값으로 설정됩니다.

0번째, 3번째 로우만 선택합니다.

맨 첫번째 로우부터 3번째 로우까지 선택해 보겠습니다.
[0, 3)까지의 숫자를 갖는 list를 생성하고 iloc에 사용합니다.

로우와 칼럼을 같이 지정하기

.at[ ] 을 사용하여 쓰기, 가져오기

2020년 1월 24일의 주가가 가장 높았을 때인 'High'정보를 확인할 때 at[ ]을 사용할 수 있습니다.

2020년 1월 24일 high값이 1로 변경되었습니다.

.iat[ ]을 사용하여 쓰기, 가져오기

.iat[ ]을 이용하면 index 정보를 이용하여 값을 얻을 수 있습니다.

2020년 1월 24일 high값이 38.7799로 변경되었습니다.
칼럼의 0번째 위치는 index가 Data로 설정되었기 때문에 Open이 0번째 입니다.