首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python 常用相关库介绍

# math库做一些基本的运算工作

import math # 导入math库

s1=math.sin(1) # sin(x)

s2=math.exp(2) # exp(x)

s3=math.pi # 内置圆周率

import math as m # 对库取别名

m.cos(2) # cos(x)

from math import exp as ep # 从math中 只 导入 函数exp,取别名e

s4=ep(1)

# 获取所有已经安装的模块名

# help('modules')

# Python 数据分析模块 数据分析工具

#-------------------------------

# 常用的数据库

# 1. Numpy : 提供数组支持,以及相应的高效的处理函数

# 2. Scipy : 提供矩阵支持,以及矩阵相关的数值计算模块

# 3. Matplotlib : 强大的数据库实话工具,作图库

# 4. Pandas : 强大,灵活的数据分析和探索工具

# 5. StatsModel : 统计建模和计量经济学分析,包括描述性统计,统计模型和推断

# 6. Scikit-Learn : 支持回归,分类,聚类等机器学习库

# 7. Keras : 深度学习库,用于建立神经网络和深度学习模型

# 8. Gensim : 用来做文本主题模型的库

# 9. Opencv : 设计视频处理的库

# 10.GMPY2 : 设计高精度运算

# 11.Pillow : 图片处理库

#--------------------------------------------------------

## 库Numpy 介绍及基本操作 : 数组的操作更加精细 速度相比 列表更快,更高效

import numpy as np

a=np.array([2,0,1,5]) # 创建数组

print(a)

print(a[:3]) # 引用数组前3个元素

print(a.min()) # 计算a的最小值

print(a.sort()) # 将 a 进行排序操作 从小到大 直接修改数组a

b=np.array([[1,2,3],[4,5,6]]) # 二维数组

print(b)

print(b*b*b) #

# numpy学习网站 http://www.numpy.org/ http://reverland.org/python/2012/08/22/numpy/

#-----------------------------------------------------

## Scipy 提供了真正的矩阵计算,以及大量基于矩阵运算的对象和函数

# (最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变换、信号处理 和 图像处理 常微分方程 其他工程计算 )

# 求解非线性方程组: 2x1-x2^2=1,x1^2-x2=2

from scipy.optimize import fsolve # 导入求解方程组的函数

def f(x):

x1=x[0]

x2=x[1]

return [2*x1-x2**2-1,x1**2-x2-2]

result=fsolve(f,[1,1]) # 输入初始值 [1,1]

print(result)

# 数值积分

from scipy import integrate # 导入积分函数

def g(x):

return (1-x**2)**0.5

pi_2,err=integrate.quad(g,-1,-1) # 积分结果 及 误差

print(pi_2*2) # 由微积分只是知道积分结果和圆周率pi的一半

# scipy 学习网站 http://www.scipy.org/ http://reverland.org/python/2012/08/24/scipy/

#------------------------------------------------------------------------------

## Matplotlib 提供数值可视化函数: 主要是二维图像 , 还有简单 三维图

import numpy as np

import matplotlib.pyplot as plt # 导入 Matplotlib

x=np.linspace(0,10,1000)

y=np.sin(x)+1

z=np.cos(x**2)+1

plt.figure(figsize=(8,4)) # 设置图形大小

plt.plot(x,y,label='$\sin x +1$',color='red',linewidth=2) # 作图,设置标签,线条颜色,线条大小

plt.plot(x,z,'b--',label='$\cos x^2 +1$',linewidth=2) # 作图,设置标签,线条颜色,线条大小

plt.xlabel('Time(s)') # x轴名称

plt.ylabel('Volt') # y轴名称

plt.title('A simple plot example') # 标题

plt.ylim(0,2.2) # 显示Y轴值得范围

plt.legend() # 显示图例

plt.show() # 显示作图结果

# plt.rcParams['font.sans-serif']=['SimHei'] # 解决中文标签显示不正常问题

# plt.rcParams['axes.unicode_minus']=False # 解决保存图像是符号“-”显示为方块问题

# matplotlib库 图像库 : http://matplotlib.org/gallery.html

# 学习网 : http://matplotlib.org/

# 案例 : http://reverland.org/python/2012/09/07/matplotlib-tutorial

#------------------------------------------------------------------------------pandas - 导致类似 matlab方式

# **** pandas **** 基本的数据结构: Series 序列 + DataFrame 二维数组

# 配合 xlrd 的 excel 读取功能 + xlwd 的 excel 写入功能

#-------------

# DataFrame 二维表 可以用 index 访问,并且下表不限于数字

# 简单例子

import pandas as pd

s=pd.Series([1,2,3],index=['a','b','c']) # 创建序列

d=pd.DataFrame([[1,2,3],[4,5,6]],columns=['a','b','c']) # 创建一个表

d2=pd.DataFrame(s) # 用已有的序列来创建表格

d.head

d.describe() # 基本统计结果

# 读取excel文件

df=pd.read_excel('/Users/fengye/Desktop/python基础知识学习/example.xlsx') # 创建 DataFrame

# 获取数据

print(df['date'][3]) # 读取方式 df[列名][行数] 获取对应的元素

# df=pd.read_csv('') # 读取csv文件

# 学习网: http://pandas.pydata.org/pandas-docs/stable/

# 案例网: http://jingyan.baidu.com/season/43456

#------------------------------------------------------------------------------StatsModels支持与pandas数据交互,类似 R 的操作

# StatModels 依赖于 Pandas

import numpy as np

# 学习网: http://statsmodels.sourceforge.net/stable/index.html

# 案例网: http://jingyan.baidu.com/season/43456 ??

#------------------------------------------------------------------------------Scikit-Learn 机器学习库

#--提供了完善的机器学习工具( 依赖库 NumPy Scipy Matplotlib )

#--知识内容

from sklearn.linear_model import LinearRegression # 导入线性回归模型

model = LinearRegression() # 建立线性回归模型

print(model) # 显示函数 参数情况

# 模型函数

# 1. 所有模型都有的接口: model.fit() --训练函数, 对有监督模型为:fit(X,y) vs 非监督模型 fit(X)

# 2. 监督模型提供的接口: model.fit(x_new) --预测新样本

# model.predict_proba(x_new) --预测概率,仅对某些模型有用(比如 LR)

# model.score() 得分越高越好

# 3. 非监督学习模型: model.transform() 从数据中学到新的“基空间”

# model.fit_transform()从数据中学到新的基,并将这个数据按照这组基进行转换

#

# 实例 鸢尾花数据案例

from sklearn import datasets # 导入数据集

iris=datasets.load_iris() # 加载数据

from sklearn import svm # 导入SVM模型

clf=svm.LinearSVC() # 建立线性SVM分类器

clf.fit(iris.data,iris.target) # 用数据进行训练模型

clf.predict([[5.0,3.6,1.3,0.25]])# 利用训练的模型参数来对新数据预测

clf.coef_ # 查看训练好模型的参数

#--学习网站 http://scikit-learn.org/

#---------------------------------------------------------------深度学习库 Keras

# 人工神经网络: 语言处理,图像处理等领域

# 网站1: http://deeplearning.net/software/theano/install.html#install

# 网站2: https://github.com/fchollet/keras

# 网站3: http://radimrehurek.com/gensim/

#--------------------------------------------------------------- Gensim 文本处理,文本挖掘

# topic modelling for humans !

# 学习网站1 : http://radimrehurek.com/gensim/

# 学习网站2 : http://52nlp.cn

#---------------------------------------------------------------

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180110G037L300?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券