pandas: series

本文介绍Pandas库中Series对象的基本用法及如何处理时间序列数据,包括创建Series、通过字典构建Series、获取Series索引、选取特定元素及截取时间序列数据等关键操作。

Series是一种类似于一维数组的对象,它由一组数据(各种Numpy数据类型)以及一组与之相关的数据标签(即索引)组成。仅由一组数据即可产生简单的Series。

In [2]:
s = Series(np.random.randn(5),index =['a','b','c','d','e'])
s 
Out[2]:
a   -2.895114
b   -1.231825
c    0.471328
d   -1.287756
e    1.475353
dtype: float64
In [3]:
'b' in s
Out[3]:
True
In [4]:
s['b']
Out[4]:
-1.2318253286905612
In [5]:
s.index
Out[5]:
Index(['a', 'b', 'c', 'd', 'e'], dtype='object')

to_dict查看词典

In [6]:
mapping = s.to_dict()
mapping 
Out[6]:
{'a': -2.8951137320706906,
 'b': -1.2318253286905612,
 'c': 0.47132812495267679,
 'd': -1.2877558861047,
 'e': 1.4753528130026292}

通过词典的方式也可以构建Series

In [7]:
Series(mapping)
Out[7]:
a   -2.895114
b   -1.231825
c    0.471328
d   -1.287756
e    1.475353
dtype: float64

默认取数据的长度是一年

In [8]:
ts = get_price('600208.XSHG')['ClosingPx'][-10:]
ts
Out[8]:
2013-12-20    3.0528
2013-12-23    3.0624
2013-12-24    3.0528
2013-12-25    3.0431
2013-12-26    2.9950
2013-12-27    3.0431
2013-12-30    3.0528
2013-12-31    3.0816
2014-01-02    3.0720
2014-01-03    3.0142
Name: ClosingPx, dtype: float64

声明了strat_date & end_date 以后才可以进行更个性化的定制,默认是A股,美股别忘记加上国家'us'

In [11]:
tsspecial = get_price('000001.XSHE', start_date='2008-04-01', end_date='2015-04-12')['ClosingPx'][-90:]
tsspecial
Out[11]:
2014-11-26     7.6032
2014-11-27     7.6711
2014-11-28     8.4375
2014-12-01     8.2679
2014-12-02     8.8987
2014-12-03     8.8851
2014-12-04     9.4684
2014-12-05     9.8550
2014-12-08    10.3298
2014-12-09     9.2989
2014-12-10     9.6244
2014-12-11     9.4413
2014-12-12     9.4549
2014-12-15     9.2107
2014-12-16     9.7601
               ...   
2015-03-20    10.3909
2015-03-23    10.4655
2015-03-24    10.4112
2015-03-25    10.1128
2015-03-26    10.2484
2015-03-27    10.2281
2015-03-30    10.6215
2015-03-31    10.6825
2015-04-01    10.8249
2015-04-02    10.7164
2015-04-03    10.7503
2015-04-07    11.4015
2015-04-08    12.1543
2015-04-09    12.2086
2015-04-10    13.4294
Name: ClosingPx, dtype: float64

从头去前五项

In [12]:
ts[:5]
Out[12]:
2013-12-20    3.0528
2013-12-23    3.0624
2013-12-24    3.0528
2013-12-25    3.0431
2013-12-26    2.9950
Name: ClosingPx, dtype: float64
In [13]:
ts.index
Out[13]:
DatetimeIndex(['2013-12-20', '2013-12-23', '2013-12-24', '2013-12-25',
               '2013-12-26', '2013-12-27', '2013-12-30', '2013-12-31',
               '2014-01-02', '2014-01-03'],
              dtype='datetime64[ns]', freq=None)
In [14]:
date = ts.index[6]
date
Out[14]:
Timestamp('2013-12-30 00:00:00')
In [15]:
ts[date]
Out[15]:
3.0528
In [16]:
ts[6]
Out[16]:
3.0528

米筐技能:同时读取多只股票,更多米筐技请参考basic_demo.

In [18]:
dfcn = get_price(['000024.XSHE', '000001.XSHE', '000002.XSHE'], start_date='2005-04-01', end_date='2015-04-12')['ClosingPx'][-10:]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值