-
Pandas
提供高性能易用数据类型和分析工具,基于numpy实现,经常与numpy和matplotlib一起使用。
主要提供两个数据类型:Series(一维数据类型),Dataframe(二维乃至多维数据类型)
基础数据类型
NumPy | Pandas |
---|---|
关注数据的结构表达、维度关系 | 关注数据的应用表达 |
维度:数据间关系 | 数据与索引间关系 |
-
Serises数据类型
Series类型由一组数据及与之相关的数据索引组成。
其中数据索引可以自定义。
import pandas as pd
b = pd.Series([9,8,7,6],index=['a', 'b', 'c', 'd'])
-
Serises数据类型创建方式有:标量、字典、ndarray
标量
b = pd.Series(8,index=['a', 'b', 'c', 'd'])
Out:
a 8
b 8
c 8
d 8
dtype: int64
字典
b = pd.Series({'a':9, 'b':8, 'c':7, 'd':6})
Out:
a 9
b 8
c 7
d 6
dtype: int64
b = pd.Series({'a':9, 'b':8, 'c':7}, index=['c','b','a','d'])
Out:
c 7.0
b 8.0
a 9.0
d NaN
dtype: float64
# 顺序以index的为准,其中'd'未指定值 则为:NaN表示空
ndarray:
n = pd.Series(np.arange(5),index=np.arange(9,4,-1))
Out:
9 0
8 1
7 2
6 3
5 4
dtype: int32
-
Serises数据类型基本操作
类似ndarray、字典操作n [1]
:out:8
可切片
对齐操作:
Series+Series 取 并集中的和
Series类型在运算中会自动对齐不同索引的数据,
b = pd.Series({'a':9, 'b':8, 'c':7, 'd':6})
a = pd.Series({'b':9, 'd':8, 'c':7, 'f':6})
a+b
Out:
a NaN
b 17.0
c 14.0
d 14.0
f NaN
dtype: float64
Series对象和索引有一个name属性
b.name='Series对象'
b.index.name='索引列'
b
Out:
索引列
a 9
b 8
c 7
d 6
Name: Series对象, dtype: int64
修改:随时修改,即刻生效
b[3]=22
b.name = 'Series'
b
Out[25]:
索引列
a 9
b 8
c 7
d 22
Name: Series, dtype: int64