<* Series 만들기 *>
Pandas에서 Series는 1차원 데이터 구조로 배열과 비슷하지만 인덱스를 사용할 수 있다는 점에서 차이가 있다.
Series를 생성하는 방법은 여러 가지가 있다.
<<Pandas Series 생성 방법>>
○ 리스트(list)로 생성
○ 딕셔너리(dict)로 생성
○ Numpy 배열로 생성
[ 1 ] 리스트로 Series 만들기
________________________________________
import pandas as pd
# 리스트로 Series 생성
data = [10, 20, 30, 40]
s = pd.Series(data)
print(s)
----------------------------------------
<결과>
0 10
1 20
2 30
3 40
dtype: int64
▶ 0, 1, 2, 3은 인덱스이고, 각 인덱스에 해당하는 값은 10, 20, 30, 40 이다.
① 인덱스 지정
인덱스를 지정할 수 있으며, 데이터에 레이블을 붙일 수 있다.
_____________________________________________________________
# 인덱스를 지정한 Series 생성
series = pd.Series(data, index=['a', 'b', 'c', 'd'])
print(series)
------------------------------------------------------------
<출력>
a 10
b 20
c 30
d 40
dtype: int64
[ 2 ] 딕셔너리로 Series 만들기
딕셔너리의 키는 인덱스가 되고, 값은 Series의 값이 된다.
_____________________________________________________________
data = {'a': 10, 'b': 20, 'c': 30}
s = pd.Series(data)
print(s)
-------------------------------------------------------------
<결과>
a 10
b 20
c 30
dtype: int64
[ 3 ] Numpy 배열로 Series 만들기
Numpy 배열을 Series로 변환할 수도 있다.
_____________________________________________________________
import numpy as np
data = np.array([5, 10, 15, 20])
s = pd.Series(data)
print(s)
-------------------------------------------------------------
[ 4 ] 스칼라 값으로 Series 생성
하나의 값을 여러 인덱스에 할당할 수도 있다.
_____________________________________________________________
# 스칼라 값을 사용한 Series 생성
series = pd.Series(5, index=['a', 'b', 'c'])
print(series)
------------------------------------------------------------
<출력>
a 5
b 5
c 5
dtype: int64
<* Series 속성 *>
◆ Pandas의 Series에는 데이터를 다루기 쉽게 다양한 속성을 제공한다.
◆ 이 속성들은 Series 객체에 저장된 값, 인덱스, 데이터 유형 등을 확인할 수 있게 해준다
( 1 ) values
Series의 값(데이터)을 Numpy 배열 형태로 반환한다.
______________________________________________________
import pandas as pd
s = pd.Series([10, 20, 30, 40])
print(s.values)
-------------------------------------------------------
<결과>
[10 20 30 40]
( 2 ) index
Series의 인덱스를 반환하며, 기본적으로는 0부터 시작하는 정수형 인덱스가 생성되지만, 직접 지정할 수도 있다.
______________________________________________________
print(s.index)
-------------------------------------------------------
<결과>
RangeIndex(start=0, stop=4, step=1)
( 3 ) dtype
Series의 데이터 타입을 반환한다.
______________________________________________________
print(s.dtype)
-------------------------------------------------------
<결과>
int64
( 4 ) size
Series에 있는 데이터 값의 개수를 반환한다.
______________________________________________________
print(s.size)
-------------------------------------------------------
<결과>
i4
( 5 ) name
Series 객체에 이름을 붙일 수 있습니다. 기본적으로는 이름이 없지만, 필요에 따라 지정할 수 있다.
______________________________________________________
s.name = "My Series"
print(s.name)
-------------------------------------------------------
<결과>
My Series
( 6 ) is_unique
Series 내 값들이 고유한지(True) 중복이 있는지(False)를 반환한다.
______________________________________________________
print(s.is_unique)
-------------------------------------------------------
<결과>
True
( 7 ) ndim
Series의 차원 수를 반환합니다. Series는 1차원 배열이므로 항상 1을 반환한다.
______________________________________________________
print(s.ndim)
-------------------------------------------------------
<결과>
1
( 8 ) shape
Series의 모양을 (size,) 형태로 반환하며, Series의 행 개수를 확인할 때 유용하다.
______________________________________________________
print(s.shape)
-------------------------------------------------------
<결과>
(4,)
( 9 ) empty
Series가 비어있는지 여부를 반환하며, 데이터가 없으면 True, 데이터가 있으면 False 이다.
______________________________________________________
empty_series = pd.Series([])
print(empty_series.empty)
-------------------------------------------------------
<결과>
True