Loading

Pandas学习整理与实践

Part 1. Pandas初识

作为一款数据处理工具,Pandas本身集成了Numpy(数据计算处理)及matplotlib(绘图),其便捷的数据处理能力、方便的文件读写以及支持多维度的表示方式使其在数据分析方面被广泛使用。

Pandas在数据结构上,常用的形式有三种:DataFrame、Series以及Panel。关于这三种数据结构,简单层面上可以将其理解为:Series接近一维数组的表示方式;DataFrame则接近于二维拥有行列索引的数据表格;Panel则接近多维度的数据表示方法。

总结一句话:Panel是DataFrame的容器,DataFrame是Series的容器。

Part 2. Pandas学习

关于知识点的梳理,我认为有一个层面上的认识后整理做图表的方式更有利于后续检索与熟识,毕竟这些知识点用时想到,检索即可。以下用思维导图的方式进行盘点(最近开始发掘思维导图的用处极佳):(待继续补充丰富)

Part 3. 实践出真知

上周关于统计学数据已有了一定的编码,今天就股票数据做一次整体的应用,结合非常方便实用的pandas.DataFrame.details()方法,可以很方便的得到一般性指标。

import pandas_datareader.data as web
import matplotlib.pyplot as plt
import datetime

start = datetime.datetime(2018,3,28)                        #获取数据的时间段-起始时间
end = datetime.date.today()                                 #获取数据的时间段-结束时间
stock = web.DataReader("BILI", "yahoo", start, end)         #获取BILIBILI自2018年3月28日至今的股票数据
stock["Change"]=stock["Close"]-stock["Open"]                #统计一天的涨幅
stock_details = stock.describe()                            #显示一般的统计数据指标

up_days = stock[stock["Change"]>=0].shape[0]                #上涨天数
down_days = stock[stock["Change"]<0].shape[0]               #下跌天数


print('BILI股票具体数据表格',stock)
print('BILI股票相关统计数据',stock_details)
print('从2018/3/28至今,共上涨:%d 天' %up_days)
print('从2018/3/28至今,共下跌:%d 天' %down_days)

stock["Change"].cumsum().plot()                             #涨幅连续统计图表
plt.show()

describe()方法可以得到

经过接连的涨幅后得到股票整体简单的变化行情

posted @ 2019-07-28 20:44  诀别、泪  阅读(232)  评论(0编辑  收藏  举报