1、Numpy
安装:pip install numpy
[root@kvm work]# cat numpy_test.py #!/usr/bin/env python#coding:utf-8from __future__ import print_function# 导入模块并添加别名import numpy as np# 创建数组a = np.array([2,0,1,7])print(a)print(a[:3])print(a.min())a.sort()print(a)# 创建二维数据b = np.array([[1,2,3],[4,5,6]])print(b)print(b*b)[root@kvm work]# python numpy_test.py [2 0 1 7][2 0 1]0[0 1 2 7][[1 2 3] [4 5 6]][[ 1 4 9] [16 25 36]]
2、Scipy
安装:pip install Scipy
# coding : utf-8# 求解非线性方程组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]# 输入初值[1 ,1]并求解result = fsolve(f, [1, 1])print(result)# 数值积分#导入积分函数from scipy import integrate# 定义被积函数def g(x): return (1 - x**2)**0.5pi_2, err = integrate.quad(g, -1, 1) #积分结果和误差print(pi_2 * 2) #由微积分知识知道结果为圆周率pi的一半
3、Matplotlib
安装:pip install matplotlib
# coding: utf-8import numpy as npimport matplotlib.pyplot as pltx = np.linspace(0, 10 ,1000) #作图的变量自变量y = np.sin(x) + 1 #因变量yz = np.cos(x ** 2) + 1 #因变量z# 设置图像大小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$')plt.xlabel('Time(s)') #设置x轴名称plt.ylabel('Volt') #y轴名称plt.title('A Simple Example') #标题plt.ylim(0, 2.2) #显示的y轴范围plt.legend() #显示图例plt.show() #显示作图结果
作图结果:
4、Pandas
安装:pip install pandas
# coding: utf-8import pandas as pds = pd.Series([1, 2, 3], index=['a', 'b', 'c']) #创建一个序列sd = pd.DataFrame([[1,2,3],[4,5,6]], columns=['a', 'b', 'c']) #创建一个表d2 = pd.DataFrame(s) #也可以用已有的序列创建一个表d.head() #预览前5行数据d.describe() #数据基本统计量print(d)print(d2)# 读取文件,注意文件的存储路径不能带有中文,否则读取可能出错pd.read_excel('data.xlsx') # 读取Excel文件,创建DataFramepd.read_csv('company_name.csv', encoding='gbk') #读取文本格式的数据
5、StatsModels
安装:pip install statsmodels
# coding: utf-8# 导入ADF校验from statsmodels.tsa.stattools import adfuller as ADFimport numpy as np# 返回的结果有ADF值、p值等print(ADF(np.random.rand(100)))
5、Scikit-Learn
安装:pip install scikit-learn
# coding: utf-8# 导入线性回归模型from sklearn.linear_model import LinearRegression# 建立线性回归模型model = LinearRegression()print(model)# 导入数据集from sklearn import datasets# 加载数据集iris = datasets.load_iris()# 查看数据集大小print(iris.data.shape)# 导入SVM模型from sklearn import svm# 建立线性SVM分类器clf = svm.LinearSVC()# 用数据训练模型clf.fit(iris.data, iris.target)# 训练完成模型之后输入新的数据进行预测clf.predict([[ 5.0, 3.6, 1.3, 0.25 ]])#查看训练好模型的参数print(clf.coef_)