pandas 학습 (1): pandas 데이터 구조의 시리즈

9882 단어
1. Series
Series 는 클래스 배열 의 데이터 구조 로 태그 (lable) 나 색인 (index) 을 동시에 가지 고 있 습 니 다.
1.1 아래 에 가장 간단 한 Series 대상 을 생 성 합 니 다. Series 에 색인 을 지정 하지 않 았 기 때문에 기본 색인 (0 에서 N - 1) 을 사용 합 니 다.
#   Series DataFrame
In [16]: from pandas import Series,DataFrame In [17]: import pandas as pd In [18]: ser1 = Series([1,2,3,4]) In [19]: ser1 Out[19]: 0 1 1 2 2 3 3 4 dtype: int64

1.2 지정 한 색인 을 만 드 는 Series 를 만 들 려 면 다음 과 같이 할 수 있 습 니 다.
#  index    list
In [23]: ser2 = Series(range(4),index = ["a","b","c","d"]) In [24]: ser2 Out[24]: a 0 b 1 c 2 d 3 dtype: int64

1.3 또한 사전 을 통 해 Series 대상 을 만 들 수 있 습 니 다.
In [45]: sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}

In [46]: ser3 = Series(sdata)
#     ,      Series  index   
In [47]: ser3
Out[47]: 
Ohio      35000
Oregon    16000
Texas     71000
Utah       5000
dtype: int64

사전 으로 Series 를 생 성 할 때 도 색인 을 지정 할 수 있 습 니 다. 색인 에 해당 하 는 사전 의 값 이 존재 하지 않 을 때 이 색인 의 값 은 Missing, NA 로 표시 되 며 함수 (pandas. isnull, pandas. notnull) 를 통 해 어떤 색인 에 대응 하 는 값 이 없 는 지 확인 할 수 있 습 니 다.
In [48]: states = ['California', 'Ohio', 'Oregon', 'Texas']

In [49]: ser3 = Series(sdata,index = states)

In [50]: ser3
Out[50]: 
California        NaN
Ohio          35000.0
Oregon        16000.0
Texas         71000.0
dtype: float64
#
In [51]: pd.isnull(ser3)
Out[51]:
California     True
Ohio          False
Oregon        False
Texas         False
dtype: bool

In [52]: pd.notnull(ser3)
Out[52]:
California    False
Ohio           True
Oregon         True
Texas          True
dtype: bool


 
1.4 Series 의 요소 와 색인 에 접근:
#      "a"   
In [25]: ser2["a"] Out[25]: 0 # "a","c" In [26]: ser2[["a","c"]] Out[26]: a 0 c 2 dtype: int64 # In [27]: ser2.values Out[27]: array([0, 1, 2, 3]) # In [28]: ser2.index Out[28]: Index([u'a', u'b', u'c', u'd'], dtype='object')

1.5 단순 연산
pandas 의 Series 에 서 는 NumPy 의 배열 작업 (불 배열 로 데 이 터 를 걸 러 내 고 스칼라 곱셈, 수학 함수 사용) 을 유지 하 며 인용 을 유지 합 니 다.
In [34]: ser2[ser2 > 2]
Out[34]: 
a    64
d     3
dtype: int64

In [35]: ser2 * 2
Out[35]: 
a    128
b      2
c      4
d      6
dtype: int64

In [36]: np.exp(ser2)
Out[36]: 
a    6.235149e+27
b    2.718282e+00
c    7.389056e+00
d    2.008554e+01
dtype: float64

1.6 Series 자동 정렬
Series 의 중요 한 기능 중 하 나 는 바로 자동 으로 정렬 하 는 것 이다. 예 를 보면 알 수 있다.차이 가 많 지 않 은 것 은 서로 다른 Series 대상 이 연산 할 때 색인 에 따라 일치 하 는 계산 을 하 는 것 이다.
# ser3    
In [60]: ser3 Out[60]: Ohio 35000 Oregon 16000 Texas 71000 Utah 5000 dtype: int64 # ser4 In [61]: ser4 Out[61]: California NaN Ohio 35000.0 Oregon 16000.0 Texas 71000.0 dtype: float64 # In [62]: ser3 + ser4 Out[62]: California NaN Ohio 70000.0 Oregon 32000.0 Texas 142000.0 Utah NaN dtype: float64

1.7 명명
Series 대상 자체 및 색인 모두 name 속성 이 있 습 니 다.
In [64]: ser4.index.name = "state"

In [65]: ser4.name = "population"

In [66]: ser4
Out[66]: 
state
California        NaN
Ohio          35000.0
Oregon        16000.0
Texas         71000.0
Name: population, dtype: float64

좋은 웹페이지 즐겨찾기