index 속성은 시리즈의 인덱스(라벨)를 조회한다.
Series.index
예시:
import pandas as pd
# 시리즈 생성
data = [10, 20, 30, 40, 50]
index = ['a', 'b', 'c', 'd', 'e']
series = pd.Series(data, index=index)
# 인덱스 출력
print(series.index)
# 결과값:
# Index(['a', 'b', 'c', 'd', 'e'], dtype='object')
values 속성은 시리즈의 값들을 numpy 배열로 반환한다.
property Series.values
예시 1:
>>> pd.Series([1, 2, 3]).values
# 결과값:
array([1, 2, 3])
예시 2:
import pandas as pd
# 시리즈 생성
data = [10, 20, 30, 40, 50]
series = pd.Series(data)
# 값들을 Numpy 배열로 출력
print(series.values)
# 결과값:
# [10 20 30 40 50]
dtype 속성은 시리즈에 저장된 값들의 데이터 타입을 반환한다.
Series.dtype
예시 1:
>>> s = pd.Series([1, 2, 3])
>>> s.dtype
# 결과값:
# dtype('int64')
예시 2:
import pandas as pd
# 시리즈 생성
data = [10, 20, 30, 40, 50]
series = pd.Series(data)
# 데이터 타입 출력
print(series.dtype)
# 결과값:
# int64
shape 속성은 시리즈의 형태를 튜플로 반환한다.
shape 튜플 형태: (행의 수, 열의 수)
시리즈는 1차원 배열이므로 행의 수만을 나타내는 형태로 반환된다. 모든 시리즈는 (행의 수,) 형태를 가지게 된다.
Sereis.shape
예시:
>>> s = pd.Series([1, 2, 3])
>>> s.shape
# 결과값:
(3,)
size 속성은 시리즈에 포함된 항목의 개수를 숫자로 반환한다.
Series.size
예시:
import pandas as pd
# 시리즈 생성
data = [10, 20, 30, 40, 50]
series = pd.Series(data)
# 시리즈의 크기 출력
print(series.size)
# 출력 결과:
# 5
hasnans 속성은 시리즈에 결측치 (NaN 또는 None)의 존재하는지 여부를 불리언 값으로 반환한다.
Series.hasnans
예시:
import pandas as pd
# 시리즈 생성 (결측치 포함)
data_with_nan = [10, None, 30, pd.NA, 50]
series_with_nan = pd.Series(data_with_nan)
# hasnans 속성을 사용하여 결측치의 존재 여부 확인
print(series_with_nan.hasnans)
# 출력 결과:
# True
주의점:
시리즈에 하나라도 결측치가 존재하면 결과값은 True 값을 반환한다.
참고:
1) NaN (Not a Number):
- '숫자가 아님'을 나타냄
- Numpy와 Pandas에서 누락된 데이터나 연산 중 오류로 인해 숫자 값을 얻을 수 없는 경우에 사용
2) None:
is_unique 속성은 시리즈 내에 중복되는 값이 없는지 여부를 불리언 값으로 반환한다.
Series.is_unique
예시:
import pandas as pd
# 중복되지 않는 값들로 이루어진 시리즈 생성
s1 = pd.Series([1, 2, 3, 4, 5])
# 중복된 값들로 이루어진 시리즈 생성
s2 = pd.Series([1, 2, 3, 3, 4])
print(s1.is_unique) # 결과: True
print(s2.is_unique) # 결과: False
만약 시리즈 내 모든 값이 unique면 True 값을 반환하고, 중복되는 값이 하나라도 있다면 False 값을 반환한다.
name 속성은 시리즈에 이름을 확인하거나 지정할 때 사용한다.
Series.name
예시 1:
>>> s = pd.Series([1, 2, 3], dtype=np.int64, name='Number')
>>> s
# 결과값:
# 0 1
# 1 2
# 2 3
# Name: Number, dtype: int64
예시 2:
>>> s.name = 'Integers'
>>> s
# 결과값:
# 0 1
# 1 2
# 2 3
# Name: Integers, dtype: int64
head(n) & tail(n)는 시리즈의 처음(head) 또는 끝(tail)에서부터 n개의 항목을 반환한다.
Series.head(n=5) Series.tail(n=5)
1) 매개변수(Parameters):
2) 반환값(Returns): 호출자와 동일한 유형의 데이터(same type as caller)
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
# 처음 3개의 항목 반환
print(s.head(3))
# 결과값:
# 0 1
# 1 2
# 2 3
# dtype: int64
# 마지막 4개의 항목 반환
print(s.tail(4))
# 결과값:
# 6 7
# 7 8
# 8 9
# 9 10
# dtype: int64
unique() 메서드는 시리즈에서 중복되지 않는 고유한 값을 배열 형태로 반환한다.
Series.unique()
반환값(Returns): ndarray 또는 ExtensionArray
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([1, 2, 3, 4, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10])
# 고유한 값 반환
unique_values = s.unique()
print(unique_values)
# 결과값:
# [1 2 3 4 5 6 7 8 9 10]
duplicated() 메서드는 시리즈 내의 각 원소가 중복되었는지를 불리언(boolean) 형태로 나타내는 시리즈를 반환한다.
Series.duplicated(keep='first')
매개변수(Parameters):
반환값(Returns): Series[bool]
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([1, 2, 3, 4, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10])
# 중복 여부 확인
duplicated_values = s.duplicated(keep='first')
print(duplicated_values)
# 결과값:
# 0 False
# 1 False
# 2 False
# 3 False
# 4 True
# 5 True
# 6 True
# 7 False
# 8 False
# 9 False
# 10 False
# 11 True
# 12 False
# 13 False
# dtype: bool
value_counts() 메서드는 시리즈 내의 고유한 값들의 개수를 시리즈로 반환하여 각 값이 몇 번씩 나타나는지를 알려준다.
Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)
매개변수(Parameters):
반환값(Returns): Series
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([1, 2, 3, 4, 2, 3, 4, 5, 6, 7, 8, 8, 9, 10])
# 각 값의 빈도수 계산
value_counts = s.value_counts()
print(value_counts)
# 결과값:
# 8 2
# 4 2
# 3 2
# 10 1
# 9 1
# 7 1
# 6 1
# 5 1
# 2 1
# 1 1
# dtype: int64
sort_values() 메서드는 시리즈의 값을 기준으로 정렬한다.
기본적으로 오름차순으로 정렬되지만, ascending 매개변수를 사용하여 내림차순으로 정렬할 수도 있다.
Series.sort_values(*, axis=0, ascending=True, inplace=False, kind='quicksort', na_position='last', ignore_index=False, key=None)
매개변수(Parameters):
반환값(Returns): 정렬된 시리즈 (또는 None, inplace=True인 경우)
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([3, 1, 2, 5, 4])
# 값을 기준으로 오름차순 정렬
sorted_s = s.sort_values()
print(sorted_s)
# 값을 기준으로 내림차순 정렬
sorted_s_desc = s.sort_values(ascending=False)
print(sorted_s_desc)
# 결과값:
# 1 1
# 2 2
# 0 3
# 4 4
# 3 5
# dtype: int64
# 3 5
# 4 4
# 0 3
# 2 2
# 1 1
# dtype: int64
describe() 메서드는 주어진 시리즈의 기초 통계 정보를 요약하여 시리즈나 데이터프레임으로 반환한다. 이 메서드는 평균, 표준 편차, 최솟값, 최댓값, 중앙값 등을 포함한다.
Series.describe(percentiles=None, include=None, exclue=None)
Parameters:
매개변수(Parameters):
반환값(Returns): 시리즈 또는 데이터프레임 형태의 기초 통계 정보
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([1, 2, 3, 4, 5])
# 기초 통계 정보 요약
description = s.describe()
print(description)
# 결과값:
# count 5.0
# mean 3.0
# std 1.581139
# min 1.0
# 25% 2.0
# 50% 3.0
# 75% 4.0
# max 5.0
# dtype: float64
max() 메서드는 시리즈의 최대값을 반환하고, min() 메서드는 시리즈의 최소값을 반환한다.
Series.max() Series.min()
반환값(Returns): 최대값 또는 최소값
예시:
import pandas as pd
# 시리즈 생성
s = pd.Series([1, 2, 3, 4, 5])
# 최대값과 최소값 찾기
max_value = s.max()
min_value = s.min()
print("최대값:", max_value)
print("최소값:", min_value)
# 결과값:
# 최대값: 5
# 최소값: 1