DataFrame
- 행과 열을 가진 2차원 데이터를 저장할 수 있는 자료구조
- 데이터와 행/열에 대한 인덱스가 저장됨
- 각 컬럼은 서로 다른 데이터 타입으로 구성될 수 있음
- 1개의 컬럼은 Series 객체로 구성됨
pd.DataFrame(data, index, columns)
- 다양한 형태로 저장된 파이썬 객체를 전달하여 DataFrame 생성
- Series 객체, 중첩된 딕셔너리 객체, 딕셔너리의 리스트, 리스트, 튜플의 리스트, ndarray, ...
- data: DataFrame 에 저장할 데이터 객체
- index: DataFrame 의 행의 인덱스, 순서를 지정
- columns: DataFrame 의 열의 인덱스, 순서를 지정
DataFrame 의 주요 속성
- .index : DataFrame 객체의 행 인덱스
- .columns : DataFrame 객체의 열 인덱스
- .values : DataFrame 객체에 저장된 데이터에 접근
- .dtypes : DataFrame 객체에 저장된 각 컬럼별 데이터 타입 출력
- .shape : DataFrame 객체에 저장된 행과 열에 대한 크기 정보 반환
NaN
- Not a Number
- 객체 생성 시, 기존 데이터에 없는 새로운 행/열이 추가되면 NaN 값으로 저장됨
- NA, None, Null, 결측치, 누락값 등과 유사한 개념
- NaN의 처리는 데이터 분석의 중요한 전처리 프로세스에 해당됨
- NumPy의 np.nan으로 생성할 수 있음
import pandas as pd
# 파이썬 딕셔너리 객체 이용하여 DataFrame 생성하기
score = {'name': ['Jessi', 'Emma', 'Alex', 'Tom'],
'score': [100, 95, 80, 85],
'grade': ['A', 'A', 'B', 'B']}
df = pd.DataFrame(data=score)
print(type(df))
print(df)
# DataFrame 주요 속성 실습-1
print('-Index: ', df.index)
print('-Columns: ', df.columns)
print('-Values:\n', df.values)
# DataFrame 주요 속성 실습-2
print('-DTypes:\n', df.dtypes)
print('-Shape: ', df.shape)
print('\n')
# index, columns 지정하여 DataFrame 생성하기
score = {'name': ['Jessi', 'Emma', 'Alex', 'Tom'],
'score': [100, 95, 80, 85],
'grade': ['A', 'A', 'B', 'B']}
i = ['a', 'b', 'c', 'd']
c = ['score', 'grade', 'name', 'email']
df = pd.DataFrame(data=score, index=i, columns=c)
print(df)
<class 'pandas.core.frame.DataFrame'>
name score grade
0 Jessi 100 A
1 Emma 95 A
2 Alex 80 B
3 Tom 85 B
-Index: RangeIndex(start=0, stop=4, step=1)
-Columns: Index(['name', 'score', 'grade'], dtype='object')
-Values:
[['Jessi' 100 'A']
['Emma' 95 'A']
['Alex' 80 'B']
['Tom' 85 'B']]
-DTypes:
name object
score int64
grade object
dtype: object
-Shape: (4, 3)
score grade name email
a 100 A Jessi NaN
b 95 A Emma NaN
c 80 B Alex NaN
d 85 B Tom NaN
'프로젝트 > 코드프레소 체험단' 카테고리의 다른 글
파이썬으로 시작하는 업무 자동화 - 웹 크롤링2 (0) | 2022.04.04 |
---|---|
파이썬으로 시작하는 업무 자동화 - 웹 크롤링1 (0) | 2022.04.04 |
파이썬으로 배우는 데이터 분석: Pandas - Series (0) | 2022.04.02 |
파이썬으로 배우는 데이터 분석: Pandas - Pandas 라이브러리 소개 (0) | 2022.04.01 |
파이썬으로 배우는 데이터 분석: NumPy - 데이터 정렬 (0) | 2022.04.01 |