DevSSOM

파이썬 pandas - Series 데이터 본문

Python/기초

파이썬 pandas - Series 데이터

데브쏨 2021. 7. 26. 12:22
반응형

Pandas?

: 파이썬 라이브러리로, 구조화된 데이터를 효과적으로 처리하고 저장함. Array 계산에 특화된 Numpy를 기반으로 설계됨. 

 

 

Series 데이터

  • Numpy의 array가 보강된 형태. 데이터와 인덱스를 가지고 있음. 특수한 딕셔너리라고 생각하면 쉬움.
import pandas as pd

data = pd.Series([1, 2, 3, 4])

print(data)
# 0    1
# 1    2
# 2    3
# 3    4
# dtype: int64

print(type(data))
# <class 'pandas.core.series.Series'>

print(data.values)
# [1 2 3 4]

print(type(data.values))
# <class 'numpy.ndarray'>
  • 앞에 세로형으로는 인덱스가 있고 그 다음에 데이터가 있음. 데이터 1, 2, 3, 4 의 앞열에 인덱스 0, 1, 2, 3이 붙는 형태. 그리고 아래에는 데이터타입이 int64인걸 알 수 있음. 그래서 numpy의 array가 보강되었는데, 인덱스가 추가된 자료형태라고 생각하면 됨.
  • 데이터 자체는 Series 형태인데, 그 안에 들어가는 값들은 ndarray, 즉 배열 형태임. Series는 값(values)을 ndarray형태로 가지고 있음.
  • dtype 인자로 데이터 타입을 지정할 수 있음. 위에서는 데이터 타입이 int(정수형)이었는데, 아래처럼 dtype을 float(실수형)으로 지정해주게 되면, print(data.dtype)을 했을 때 float64(실수형)로 나타남.
data = pd.Series([1, 2, 3, 4], dtype = "float")
print(data.dtype)    # float64

 

  • Series는 인덱스를 지정할 수 있고, 인덱스로 접근 가능함.
data = pd.Series([1, 2, 3, 4]), index = ['a', 'b', 'c', 'd'])

print(data)
# a    1
# b    2
# c    3
# d    4
# dtype: int64

data['c'] = 5    # 인덱스로 접근해서 요소 변경 가능
print(data)
# a    1
# b    2
# c    5
# d    4
# dtype: int64

 

  • Series는 Dictionary와 비슷함. Dictionary를 활용해서 Series를 만들 수도 있음. 예를 들어, 나라별 인구 수 딕셔너리로 Series를 만들어보면, 나라 이름이 인덱스로 들어가게되고, 인구 수는 데이터로 들어가게 됨. 이때 기본적인 데이터 타입은 int64로 정수형 타입이 됨.
population_dict = {
    'china' : 141500,
    'japan' : 12718,
    'korea' : 5180,
    'usa' " 32676
}
population = pd.Series(population_dict)

print(population)
# china    141500
# japan     12718
# korea      5180
# usa       32676
# dtype: int64

 

 

728x90
반응형
댓글