[DataFrame]
: 2차원 배열 형식의 table형 자료구조.
- 여러 개의 컬럼을 가지며, 컬럼의 데이터 타입은 서로 다를 수 있음.
[DataFrame 생성]
1) 리스트의 값을 딕셔너리로 사용
2) Numpy배열을 이용
3) read_csv(),read_excel()
- 라이브러리 import
import numpy as np
import pandas as pd
from pandas import DataFrame, Series
1) 딕셔너리를 이용해서 DataFrame 만들기
list_dic={'state':['ohio','ohio','ohio','Nevada','Nevada','Nevada'],
'year':[2000,2001,2002,2001,2002,2003],
'pop':[1.5,1.7,3.6,2.4,2.9,3.2]
}
list_df=DataFrame(list_dic)
print(list_df)
# 결과
'''
state year pop
0 ohio 2000 1.5
1 ohio 2001 1.7
2 ohio 2002 3.6
3 Nevada 2001 2.4
4 Nevada 2002 2.9
5 Nevada 2003 3.2
'''
- 주(state) 컬럼만 추출
print(list_df.state)
# 결과
'''
0 ohio
1 ohio
2 ohio
3 Nevada
4 Nevada
5 Nevada
Name: state, dtype: object
'''
# 주(state) 컬럼 type
print(type(list_df.state))
# 결과
'''
<class 'pandas.core.series.Series'>
'''
2) 난수로 DataFrame 생성
# Numpy 랜덤한 수로 dataframe만들기
np.random.seed(100)
data2={'name':["James","Beth","Camila","Elsa"],
'adderss':["NY1","NY1","NY2","NY1"],
'age':[12,45,23,16]
}
# np.random.randint으로 난수 생성, data2의 'name'컬럼을 인덱스로 사용
df2=DataFrame(np.random.randint(10,100,16).reshape(4,4),index=data2['name'],columns=list('abcd'))
print(df2)
# 결과
'''
a b c d
James 18 34 77 97
Beth 89 58 20 62
Camila 63 76 24 44
Elsa 34 25 70 68
'''
3) 파일 불러들여서 DataFrame 생성
# tips 데이터 이용.
# >> tips 데이터를 현재 사용 중인 .ipynb 파일과 같은 폴더에 저장
tips = pd.read_csv("tips.csv")
tips
'Data_Analysis > Numpy, Pandas' 카테고리의 다른 글
[Pandas] DataFrame 함수 - 데이터 조회 (0) | 2020.07.21 |
---|---|
[Pandas] DataFrame 구조 확인 (0) | 2020.07.21 |
[Pandas] Series (0) | 2020.07.13 |
[Numpy] 함수 (0) | 2020.07.13 |
[Numpy] 배열 인덱싱, 슬라이싱 (0) | 2020.07.12 |
댓글