티스토리 뷰
Series
- 1차원 배열 구조(벡터)
- 단 하나의 데이터 타입 허용
- 데이터 프레임을 구성하는 하나의 특정 row나 column으로 설명 가능
- DataFrame의 기본 (Series가 모여 DataFrame이 만들어짐)
# Pandas 적용
import pandas as pd
from pandas import Series, DataFrame # 함수를 이름 그대로 사용
# 생성
s1 = Series([1,2,3,4])
s1
0 1 # 행 번호를 갖는 형태로 저장 (0부터 시작)
1 2
2 3
3 4
dtype: int64
# Index row(Key) 설정
1. Series 생성 시 row index 이름(Key) 선언
s1= Series([1,2,3,4], index = ['a','b','c','d'])
s1
a 1
b 2
c 3
d 4
dtype: int64
2. Series 생성 후 row index 이름(Key) 선언
s1 = Series([1,2,3,4])
s1.index = ['a','b','c','d']
s1
a 1
b 2
c 3
d 4
dtype: int64
# 이름 설정
s1= Series([1,2,3,4], index = ['a','b','c','d'])
s1.index.name = 'alpa' # index 이름 부여 (그래프 생성 시 x축 label로 자동 설정)
alpa
a 1
b 2
c 3
d 4
dtype: int64
s1= Series([1,2,3,4], index = ['a','b','c','d'])
s1.name = 'test' # Series 객체 이름 부여 (객체 설명)
a 1
b 2
c 3
d 4
Name: test, dtype: int64
# 구조 확인
s1= Series([1,2,3,4])
s1.values # value 확인
array([1, 2, 3, 4], dtype=int64)
s1.index # index 확인
RangeIndex(start=0, stop=4, step=1)
# 연산
s1 = Series([1,2,3,4])
s1 + 10
0 11 # 벡터연산 가능
1 12
2 13
3 14
dtype: int64
s1= Series([1,2,3,4], index = ['a','b','c','d'])
s2= Series([30,20,10,40], index = ['c','b','a','d'])
s1 + s2
a 11 # Key 끼리 매칭되어 연산
b 22
c 33
d 44
dtype: int64
# 색인
s1= Series([1,2,3,4], index = ['a','b','c','d'])
s1['a'] # 이름(key) 색인
s1.a # 속성 색인
s1[0] # 위치 색인
1
s1[s1>=3] # 조건 색인
c 3
d 4
# 재색인(reindex)
s1= Series([1,2,3,4], index = ['a','b','c','d'])
Series(s1, index = ['d','b','c','a'])
d 4 # 이미 생성된 Series의 index를 사용하여 원하는 순서에 맞게 출력
b 2 원본의 index의 순서를 바꾸는 용도 혹은 Key 부여가 아닌, index에 매칭되는 key를 출력
c 3
a 1
'Python > Process' 카테고리의 다른 글
[Python] Pandas - DataFrame (0) | 2019.02.08 |
---|---|
[Python] profile 만들기 (import를 한 번에) (0) | 2019.02.07 |
[Python] NA, NaN, Null (1) | 2019.02.07 |
[Python] Numpy 배열(수학, 통계 메서드) (2) | 2019.02.02 |
[Python] Numpy 배열(메서드, 함수) (0) | 2019.02.01 |