***< Series 기술통계량 >**************************************
◆ Pandas의 Series 객체에서 다양한 기술통계량(descriptive statistics)을 쉽게 구할 수 있다.
◆ Pandas는 데이터를 요약하고 분석하는 데 유용한 여러 가지 통계 함수들을 제공한다.
◆ 함수들을 통해 평균, 표준편차, 최대값, 최소값 등을 구할 수 있다.
< 주요 기술통계량 함수들 >
min(): 최소값을 반환한다.
max(): 최대값을 반환한다.
mean(): 평균값을 계산한다.
std(): 표준편차를 계산한다.
var(): 분산을 계산한다.
median(): 중간값을 반환한다.
describe(): 여러 통계량을 한꺼번에 요약하여 보여준다.
count(): 데이터의 개수를 반환한다.
_______________예제 Series_________________
import pandas as pd
# 예시 Series 생성
s = pd.Series([10, 20, 30, 40, 50])
--------------------------------------------
( 1 ) min(): 최소값
__________________________________
print(s.min())
----------------------------------
결과:
10
( 2 ) max(): 최대값
__________________________________
print(s.max())
----------------------------------
결과:
50
( 3 ) mean(): 평균값
__________________________________
print(s.mean())
----------------------------------
결과:
30.0
( 4 ) std(): 표준편차
__________________________________
print(s.std())
----------------------------------
결과:
15.811388300841896
( 5 ) var(): 분산
__________________________________
print(s.var())
----------------------------------
결과:
250.0
( 6 ) median(): 중간값
__________________________________
print(s.median())
----------------------------------
결과:
30.0
( 7 ) describe(): 요약 통계량
describe()는 Series의 기본적인 통계 정보를 요약하여 한 번에 보여준다.
- 반환되는 값은 데이터 개수, 평균, 표준편차, 최소값, 사분위수, 최대값 등을 포함한다.
__________________________________
print(s.describe())
----------------------------------
결과:
count 5.000000
mean 30.000000
std 15.811388
min 10.000000
25% 20.000000
50% 30.000000
75% 40.000000
max 50.000000
dtype: float64
( 8 ) count(): 데이터 개수
__________________________________
print(s.count())
----------------------------------
결과:
5
***< Series와 Dictionary 비교 >*******************************************
Series와 Dictionary는 Python과 pandas에서 자주 비교되는 개념이다.
▶ Dictionary는 “데이터 저장용”
▶ Series는 “데이터 분석용”
---> 기본 개념 비교 <---
구분 Python Dictionary (dict) pandas Series (pd.Series)
----------------------------------------------------------------------------------------------------------------------------------------------------
정의 Key-Value 쌍으로 구성된 일반 파이썬 자료형 인덱스(Index)와 값(Value)으로 구성된 1차원 배열형 데이터 구조
라이브러리 기본 내장형 (import 불필요) pandas에서 제공 (import pandas as pd)
구조 {key: value} 형태 pd.Series(data, index=...) 형태
인덱스 key index
값 접근 d[key] s[index] 또는 s.loc[index]
자료형 제약 key는 해시 가능해야 함 (immutable) index는 다양한 타입 가능 (숫자, 문자열 등)
연산 기능 직접 지원하지 않음 벡터화 연산 가능 (자동 정렬, 브로드캐스팅)
결측치 처리 없음 (KeyError 발생) NaN으로 결측치 자동 처리
출력 형태 {}로 표시 표 형태로 표시 (index와 value 두 열로 구성)
------------------------------------------------------------------------------------------------------------------------------------------------------
---< 예 시 >----------------------------------------------
import pandas as pd
# Dictionary
d = {'a': 10, 'b': 20, 'c': 30}
# Series
s = pd.Series(d)
print(d)
# {'a': 10, 'b': 20, 'c': 30}
print(s)
# a 10
# b 20
# c 30
# dtype: int64
-----------------------------------------------------------------
■ 주요 차이점 요약 >>
( 1 ) Series는 수치 연산이 가능
_____________________________________
s * 2
# a 20
# b 40
# c 60
--------------------------------------
→ dict는 이런 연산 불가능.
( 2 ) 인덱스 정렬 및 정렬 병합 기능 Series는 인덱스를 기준으로 자동 정렬/병합이 가능 함.
___________________________________________________
s1 = pd.Series({'a': 10, 'b': 20})
s2 = pd.Series({'b': 5, 'c': 15})
s1 + s2
# a NaN
# b 25.0
# c NaN
# dtype: float64
----------------------------------------------------
( 3 ) 통계/데이터 분석 기능 내장 s.mean(), s.std(), s.describe() 등 다양한 통계 메서드를 바로 사용 가능.