1 算术运算
add(other) / sub(other)’ 比如进行数学运算加上或者减去具体的一个数字
data
['open'].add
(1)
2018-02-27 24.53
2018-02-26 23.80
2018-02-23 23.88
2018-02-22 23.25
2018-02-14 22.49
2 逻辑运算
2.1 逻辑运算符号
例如筛选data[“open”] > 22的日期数据
data[“open”] > 22返回逻辑结果
data
= data
.head(10)
data
["open"]> 22
结果:
2018-02-27 True
2018-02-26 True
2018-02-23 True
2018-02-22 True
2018-02-14 False
2018-02-13 False
2018-02-12 False
2018-02-09 False
2018-02-08 False
2018-02-07 True
Name
: open
, dtype
: bool
data
[data
["open"] > 23].head
()
完成多个逻辑判断
data
[(data
["open"] > 23) & (data
["open"] < 24)].head
()
2.2 逻辑运算函数
query(expr)
expr:查询字符串 通过query使得刚才的过程更加方便简单
data
.query
("open<24 & open>23").head
()
isin(values) 例如判断’open’是否为23.53和23.85
data
[data
["open"].isin
([23.53, 23.85])]
3 统计运算
3.1 统计函数
Numpy当中已经详细介绍,例如min(最小值), max(最大值), mean(平均值), median(中位数), var(方差), std(标准差),mode(众数)。
对于单个函数去进行统计的时候,坐标轴还是按照默认列“columns” (axis=0, default),如果要对行“index” 需要指定(axis=1)。
data
.max(0)
idxmax()、idxmin()
data
.idxmax
(axis
=0)
open 2015-06-15
high
2015-06-10
close
2015-06-12
low
2015-06-12
volume
2017-10-26
price_change
2015-06-09
p_change
2015-08-28
turnover
2017-10-26
my_price_change
2015-07-10
dtype
: object
3.2 累计统计函数
函数作用
cumsum计算前1/2/3/…/n个数的和cummax计算前1/2/3/…/n个数的最大值cummin计算前1/2/3/…/n个数的最小值cumprod计算前1/2/3/…/n个数的积
import matplotlib
.pyplot
as plt
import pandas
as pd
data
= data
.sort_index
()
stock_rise
= data
['p_change']
stock_rise
.cumsum
().plot
()
plt
.show
()
4 自定义运算
apply(func, axis=0)
func:自定义函数
axis=0:默认是列,axis=1为行进行运算 定义一个对列,最大值-最小值的函数
data
[['open', 'close']].apply(lambda x
: x
.max() - x
.min(), axis
=0)
open 22.74
close
22.85
dtype
: float64
5 Pandas画图
pandas.DataFrame.plot
DataFrame.plot(kind=‘line’)
kind : str,需要绘制图形的种类
‘line’ : line plot (default) 折线图‘bar’ : vertical bar plot 柱状图‘barh’ : horizontal bar plot 横向柱状图 关于“barh”的解释: http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.plot.barh.html‘hist’ : histogram 直方图‘pie’ : pie plot 饼图‘scatter’ : scatter plot 散点图
创作不易,白嫖不好,各位的支持和认可,就是我创作的最大动力,我们下篇文章见!
Dragon少年 | 文
如果本篇博客有任何错误,请批评指教,不胜感激 !