个人觉得Python当中有用的库太多了,因此在文章开头添加了目录,想到一个库就先在目录当中添加,后续完善。目前的思路是对每一个库进行简单的介绍,并且附上最基础的代码。当然,如果有其他更多的需求,大家可在评论区留言。 1、Matplotlib——应用于可视化绘图 Matplotlib 是一个Python的2D绘图库(当然也可以绘制3D,但需要额外安装支持工具包),它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。使用Matplotlib仅需要几行代码,便可以生成直方图,功率谱,条形图,错误图,散点图等。
import matplotlib.pyplot as plt
a=[1,2,8]
plt.plot(a)
plt.show()
以上几行代码便生成了一个折线图,Matplotlib是不是非常强大呢? 2、Bokeh——应用于Web交互式可视化绘图 Bokeh是一个专门针对Web浏览器的呈现功能的交互式可视化Python库,这也是Bokeh与其它可视化库最根本的区别。
from bokeh.sampledata.iris import flowers
from bokeh.plotting import figure
from bokeh.io import show, output_notebook
colormap={'setosa':'red','versicolor':'green','virginica':'blue'}
colors=[colormap[x] for x in flowers['species']]
p=figure(title='Tris Morphology')
p.circle(flowers['petal_length'],flowers['petal_width'],color=colors,fill_alpha=0.3,size=10)
output_notebook()
show(p)
以上代码为通过Bokeh库创建的多分类的散点图。 3、Urllib3——应用于HTTP客户端网络请求 Urllib3是一个功能强大,条理清晰,用于HTTP客户端的Python库。Urllib3的特性有:线程安全、连接池、客户端SSL/TLS验证、文件分部编码上传、协助处理重复请求和HTTP重定位、支持压缩编码、支持HTTP和SOCKS代理、100%测试覆盖率等。
import urllib3
http = urllib3.PoolManager()
r = http.request('GET', 'https://www.baidu.com')
print(r.data)
4、Numpy——应用于科学计算 Numpy支持大量的维度数组和矩阵运算,对数组运算提供了大量的数学函数库。Numpy其中一个优势是速度,比比Python列表的速度快几百倍;另外一个优势是具有可以表示向量和矩阵的多维数组数据结构,并且还具有大量优化的内置数学函数。
import Numpy as np
a = [1, 2, 3]
b = np.array(a)
c = np.array([[0, 1, 2, 10],
[12, 13, 100, 101],
[102, 110, 112, 113]], int)
print(c)
print(b)
5、Pandas——应用于金融数据分析 pandas是基于NumPy数组构建的,使数据预处理、清洗、分析工作变得更快更简单。pandas主要用来处理表格和混杂数据。pandas有两个主要数据结构:Series和DataFrame。
import pandas as pd
data = {'state': ['Ohio', 'Ohio', 'Ohio', 'Nevada', 'Nevada', 'Nevada'],
'year': [2000, 2001, 2002, 2001, 2002, 2003],
'pop': [1.5, 1.7, 3.6, 2.4, 2.9, 3.2]}
df= pd.DataFrame(data)
对于上述几个库,不知道大家是否熟悉呢?对于这些库的基本应用,大家是否了解呢?如果这些你都不清楚,那么相信你一定是Python初学者。对于初学者来说,目前更应该学习Python基本概念,打下坚实基础,对于这些库的用法相信看下文档就可以搞定!
6、Statsmodels——应用于统计模型和分析 Statsmodels库用于拟合多种统计模型,执行统计测试以及数据探索和可视化,包含假设检验、回归分析、时间序列分析等功能,能够很好的和Numpy和Pandas等库结合起来,提高工作效率。 7、TA-Lib——应用于金融技术指标计算 TaLib是一个Python金融指数处理库。包含了很多技术分析里的常用参数指标,例如MA、SMA、WMA、MACD、ATR等。
import TA-Lib
import numpy as np
closeArray = np.linspace(0,11.0,11)
meanArray = talib.SMA(closearray,3)
print("closeArray: %s" %closearray)
print("meanArray: %s" %meanarray)
for i in range(3,len(closearray)):
print(closearray[i-3:i].mean())
8、Tushare——应用于财经数据的获取 TuShare是一个著名的免费、开源的python财经数据接口包。其官网主页为:TuShare -财经数据接口包。该接口包如今提供了大量的金融数据,涵盖了股票、基本面、宏观、新闻的等诸多类别数据(具体请自行查看官网),并还在不断更新中。
9、Django——应用于Web框架的搭建 Django框架主要分为三部分:Model(模型)、Template(模板)和View(视图),也就是MTV框架。 Model(模型):负责业务对象与数据库的对象(ORM)Template(模版):负责如何把页面展示给用户View(视图):负责业务逻辑,并在适当的时候调用Model和Template此外,Django还有一个urls分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template
10、scrapy——应用于爬虫框架的搭建 Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片。
$pip install scrapy
$cat > myspider.py <<EOF
import scrapy
class BlogSpider(scrapy.Spider):
name = 'blogspider'
start_urls = ['https://blog.scrapinghub.com']
def parse(self, response):
for title in response.css('h2.entry-title'):
yield {'title': title.css('a ::text').extract_first()}
next_page = response.css('div.prev-post > a ::attr(href)').extract_first()
if next_page:
yield scrapy.Request(response.urljoin(next_page), callback=self.parse)
EOF
$scrapy runspider myspider.py
如果对上边的所有库你都闻所未闻,那么你应该还是Python初学者。以上这些库功能都很强大,但Python第三方库何止万千,如何才能掌握这些库的使用方法呢?其实先要打好Python基础,深入了解和掌握Python的基本使用是灵活的使用这些库的基础。做到了这点,在使用Python第三方库的时候看看文档基本上就能入手。
11、TensorFlow——应用于各类机器学习 TensorFlow是一个基于数据流编程(dataflow programming)的符号数学系统,被广泛应用于各类机器学习(machine learning)算法的编程实现,其前身是谷歌的神经网络算法库DistBelief。 Tensorflow拥有多层级结构,可部署于各类服务器、PC终端和网页并支持GPU和TPU高性能数值计算,被广泛应用于谷歌内部的产品开发和各领域的科学研究。
import TensorFlow as tf
v1 = tf.Variable(a1**2,tf.float32,name=v1")
init = tf.global_variables_initializer()
with tf.Session() as session:
session.run(init)
print(session.run(loss))
如果对上边的所有库你都闻所未闻,那么你应该还是Python初学者。以上这些库功能都很强大,但Python第三方库何止万千,如何才能掌握这些库的使用方法呢?其实先要打好Python基础,深入了解和掌握Python的基本使用是灵活的使用这些库的基础。做到了这点,在使用Python第三方库的时候看看文档基本上就能入手。
|